Помощь - Поиск - Пользователи - Календарь
Полная версия: Задача на цикл
Форум «Всё о Паскале» > 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.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.