Вам дана программа, решающая задачу K-ое по величине число. Требуется найти в ней ошибку, и объяснить (устно), почему так происходит и как Вы нашли эту ошибку.
Текст программы приведен ниже, его можно также скачать по этой сслыке или взять на диске J:\ (файл называется deb-2.pas)
const nmax=100; var a:array[1..nmax] of integer; n:integer; i,j,g:integer; k:integer; begin {Чтение входных данных} read(n); for i:=1 to n do read(a[i]); read(k); {Сортировка массива} for i:=1 to n do begin {Подбираем число на i-ое место} g:=i; {Считаем, что самое маленькое число, которое нам встретилось, стоит на месте i} for j:=i+1 to n do {Перебираем все числа с i+1 до конца массива} if a[j]<a[g] then g:=j; {Если нашли число, которое меньше, чем то, что уже найдено, запоминаем его} {Меняем местами числа, стоящие на i-ом и на g-ом местах } k:=a[i]; a[i]:=a[g]; a[g]:=k; end; {Выводим результат} writeln(a[k]); end.