Помощь - Поиск - Пользователи - Календарь
Полная версия: Наибольшее из N чисел
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
barlog
Нужно написать прогу по нахождению максимального числа из введённых.
Вот одна из них. Но если числа вводятся рандомом? Нужен алгоритм, так как он может быть не один, то самый лучший из них.
Код

Program maximum;
Var    N, max, next, k: integer;
Begin
  Write('Введите количество чисел'); Readln(n);
  Write('Введите число'); Readln(max);
  k:=1;
  repeat
    Write('Введите число'); Readln(next);
    K:=k+1;
    If next>max then max:=next
  Until k=n;
  Writeln(max);
  Readln
End.

volvo
Цитата
Но если числа вводятся рандомом?
Так "если" или "вводятся"? Что за привычка давать расплывчатые задания???

Кстати, твое решение тоже не особо оптимальное: ни один преподаватель (тем более работодатель), находящийся в здравом уме, не пропустит такую программу. Хотя бы вот так:

Program maximum;
Var N, max, next, k: integer;
Begin
Write('Введите количество чисел'); Readln(n);
max := -maxInt;
for k := 1 to n do begin
Write('Введите число'); Readln(next);
If next>max then max:=next
end;
Writeln(max);
Readln
End.
мисс_граффити
а если они вдруг начнут вводиться рэндомом (всякое в жизни бывает), то достаточно в приведенном volvo коде изменить
Код
Write('Введите число'); Readln(next);

на
Код
next:=random(100)-50; {это для примера. чтобы были и положительные, и отрицательные}
writeln(next); {чтобы отслеживать, что у нас там навводилось}


а если вводим вручную... может, заранее не просить количество чисел? спрашивать "хотите ввести еще одно?".
barlog
Большое вам спасибо за ответы.
Тут нам сегодня дали около сотни задач на 5 тем. Если будут вопросы по некоторым, буду обращаться, надеюсь поможете. Спасибо ещё раз!
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.