Определить местоположение минимального элемента, кратного 3 - Pascal ABC
Формулировка задачи:
Массив заполняется значениями от -10 до 10 ,кол-во элементов задаётся с клавиатуры. Определить местоположение минимального элемента,кратного 3 или вывести сообщение о отсутствии такого. Программа написана, но не всегда правильно работает,помогите исправить,пожалуйста.
Решение задачи: «Определить местоположение минимального элемента, кратного 3»
textual
Листинг программы
program abc; var a:array [1..1000] of integer; k,n,i,min:integer; begin write('введите количество элементов n='); readln(n); writeln('исходный:'); k:=0; for i:=1 to n do begin a[i]:=-10+random(21); write(a[i]:4); if a[i] mod 3=0 then begin if k=0 then begin min:=i; k:=1; end else if a[i]<a[min] then min:=i; end; end; writeln; if k=0 then writeln ('Числа, кратного 3 нет') else writeln('Номер наименьшего кратного 3=',min,' его значение=',a[min] ); end.
Объяснение кода листинга программы
В данном коде происходит следующее:
- Создается переменная
a
, которая представляет собой массив целых чисел размером от 1 до 1000. - Задается переменная
n
, которая представляет собой количество элементов в массивеa
. - Задаются переменные
k
,n
,i
иmin
, которые будут использоваться в цикле. - Выводится сообщение с просьбой ввести количество элементов
n
. - Выводится сообщение «исходный:», чтобы пользователь понимал, что будет происходить дальше.
- Запускается цикл
for
, который выполняется от 1 доn
. - Внутри цикла генерируется случайное число от -10 до 20 (включительно) и присваивается переменной
a[i]
. - Выводится значение
a[i]
с помощью функцииwrite
. - Проверяется, делится ли значение
a[i]
на 3 без остатка. Если да, то выполняются следующие действия:- Если
k
равно 0, то начинается новый блок кода. - Если
k
не равно 0, то проверяется, является ли значениеa[i]
меньше значенияa[min]
. Если да, тоmin
обновляется значениемi
.
- Если
- После завершения цикла выводится сообщение, которое зависит от значения
k
:- Если
k
равно 0, выводится сообщение «Числа, кратного 3 нет». - Если
k
не равно 0, выводится сообщение «Номер наименьшего кратного 3=», за которым следует значениеmin
иa[min]
.
- Если
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д