Форум » Обработка числовых последовательностей » Задача 27. » Ответить

Задача 27.

Wally: Здравствуйте. Техническое задание: на вход программы поступает последовательность из N целых положительных чисел. Нужно поменять местами наибольший и наименьший элементы последовательности. Если таких элементов несколько, действие нужно выполнить над первыми по порядку. Описание входных и выходных данных В первой строке входных данных задаётся количество чисел N (1 ≤ N ≤ 1000). В каждой из последующих N строк записано одно натуральное число, не превышающее 10000. Мой код: program ChangeMaxMin; uses crt; var N,max, min, i, x, posmax, posmin :integer; begin max:=0; min:=10001; clrscr(); readln(N); for i:=1 to N do begin readln(x); if max<x then begin max:=x; posmax:=i; end; if x<min then begin min:=x; posmin:=i; end end; gotoxy(1,posmax+1); write(min, ' '); gotoxy(30,30); gotoxy(1,posmin+1); write(max, ' '); gotoxy(50,30); end. Вопрос можно ли эффективно решить данную задачу без использования функции gotoxy()?

Ответов - 1

cabanov.alexey: Забавно работает: поменять местами строчки в консоли. Без записи чисел в массив поменять местами по другому будет нельзя, я думаю.



полная версия страницы