ПОМОГИТЕ ПОЖАЛУЙСТА!!! var k, m, day: integer; Dat: array[1..10] of integer; begin...

0 голосов

ПОМОГИТЕ ПОЖАЛУЙСТА!!! var k, m, day: integer; Dat: array[1..10] of integer; begin Dat[1]:=7; Dat[2]:= 1; Dat[3]:= 3; Dat[4]:= 3; Dat[5]:= 2; Dat[6]:= 2; Dat[7]:= 5; Dat[8]:= 5; Dat[9]:= 7; Dat[10]:= 1; day:= 1; m:= Dat[1]; for k:= 2 to 10 do begin if Dat[k] < m then begin m:= Dat[k]; day:= k end end; write(day); end.


спросил от Начинающий (495 баллов) в категории Информатика
оставил комментарий от Начинающий (386 баллов)

А что делать то?

оставил комментарий от Начинающий (386 баллов)

Найти ошибку?

оставил комментарий от Начинающий (495 баллов)

определить, что будет напечатано в результате алгоритма

1 Ответ
0 голосов
ответил от Начинающий (386 баллов)

Будет выведенно 2. Это индекс минимального числа в массиве.

оставил комментарий от Начинающий (386 баллов)

Если не сложно, отметьте как лучшее.

оставил комментарий от Начинающий (495 баллов)

Отмечу. Только пожалуйста объясните как это решать

оставил комментарий от Начинающий (495 баллов)

с чего начинается алгоритм, что первое сравнивается. 1 и 7 или 1 и 1?

оставил комментарий от Начинающий (386 баллов)

Смотри.Начинается алгоритм с заполнения массива Dat. (Если без заполнений, то сравнивается m (Dat[1]) и Dat[2] ).Первым сравнивается m (Dat[1]) и Dat[2]. То есть минимальное значение и k-ый элемент.

оставил комментарий от Начинающий (386 баллов)

То есть, сперва k=2, а m(минимальное значение)=Dat[1].

оставил комментарий от Начинающий (495 баллов)

То есть сначала сравнивается 1 и 7, правильно?

оставил комментарий от Начинающий (386 баллов)

Да.

...