Составьте программку, которая заполняет массив a [1...10] случайными целыми числами в
Составьте программку, которая заполняет массив a [1...10] случайными целыми числами в диапазоне от 1 до 20 и находит малый элемент массива и его индекс
Задать свой вопросДля начала определим, какие нам потребуются переменные. Во-первых - переменная массива, во-вторых, так как работаем с массивом, нам будет нужно переменная-счетчик, также необходимы переменные для сохранения минимального значения и его индекса.
Программка будет состоять из последующих блоков:
- Объявление переменных;
- Наполнение массива;
- Поиск малого значения и его индекса;
- Вывод результата.
Объявление переменных
i: integer;
min: integer;
minIndex: integer;
a: array[1..10] of integer;
Так как работаем с целыми числами, используем тип integer для частей массива и переменной min. Переменные счетчика i и искомого индекса minIndex обязаны быть целочисленными для работы с массивом.
Начало программки
Перед внедрением функции Random, нужно включить генератор случайных чисел, используя процедуру randomize. Также в начале программы очищаем экран с помощью clrscr.
begin
clrscr;
randomize;
Наполнение массива
Заполним массив в цикле с фиксированным числом повторений (цикл for)
for i:=1 to 10 do
a[i]:=random(20);
Этот цикл производится 10 раз, в теле цикла содержится единственный оператор (оператор присваивания), потому не требуется использовать begin и end. Функция random отдаёт случайное целое число в диапазоне от 0 до 20 (т.е. числа, передаваемого функции в качестве параметра)
Поиск малого значения и его индекса
Для поиска минимального числа в массиве опять воспользуемся циклом for. Перед поиском малого значения нужно обязательно проинициализировать переменную min, чтобы корректно сравнивать эту переменную со значениями, хранящимися в массиве. Наиболее верный метод инициализации это присвоить ей значение первого элемента массива, а переменной minIndex его индекс, то есть 1.
min:=a[1];
minIndex=1;
Потом напишем конкретно цикл:
for i:=1 to 10 do
begin
if a[i]lt;min then
begin
min:=a[i];
minIndex=i;
end;
end;
Любая итерация этого цикла сравнивает значение a[i] с сохраненным наименьшим значением min, и в случае, если a[i] меньше, запоминает новое значение в переменной min и его индекс в переменной minIndex.
Для вывода на экран результата используем оператор write. Не забываем end. в конце программки.
write(Малое значение = ,min, его индекс - ,minIndex);
end.
-
Вопросы ответы
Статьи
Информатика
Статьи
Математика.
Разные вопросы.
Разные вопросы.
Математика.
Разные вопросы.
Математика.
Физика.
Геометрия.
Разные вопросы.
Обществознание.