Помощь - Поиск - Пользователи - Календарь
Полная версия: Задача на цикл
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Rudolf
"Дана последовательность различных натуральных чисел, за которой следует 0. Определить порядковый номер наименьшего из них". У меня программа работает правильно если элементы идут от меньшего к большему, но если от большего к меньшему, то К присваивается неправильное значение.
Код
Program Lab4;

Var x, i, min, k : Integer;        {x-элемент последовательности,
                                            i-номер элемента,
                                            min- элемент с минимальным значением,
                                            k-номер элемента с минимальным значением}      
Begin
   i:=1;
   Writeln ('Введите ',i,' элемент последовательности');
   Readln(x);
   k:=1;
   min:=x;
   While x<>0 Do

     Begin
        Inc(i);
        Writeln ('Введите ',i,' элемент последовательности');
        Readln(x);
                 If x<min Then
                             Begin
                                 min:=x;
                                 k:=i
                             End;
       
     End;
   Writeln('Номер минимального элемента - ', k);
   Readln
End.
volvo
Здесь лучше пользоваться циклом Repeat ... Until:
Program Lab4;

Var x, i, min, k : Integer;
Begin
  i := 1;
  min := 10000;

  repeat
    Write('Введите ', i, ' элемент последовательности '); readln(x);
    if x <> 0 then
      if x < min then begin
        min := X; k := i;
      end;
    inc(i);
  until X = 0;

  Writeln('Номер минимального элемента - ', k);
  Readln
End.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.