• Составьте программу, которая заполняет массив a [1...10] случайными целыми числами в диапазоне от 1 до 20 и находит минимальный

Ответы 2

  • Для начала определим, какие нам потребуются переменные. Во-первых - переменная массива, во-вторых, поскольку работаем с массивом, нам потребуется переменная-счетчик, также нужны переменные для сохранения минимального значения и его индекса.

    Программа будет состоять из следующих блоков:

    • Объявление переменных;
    • Заполнение массива;
    • Поиск минимального значения и его индекса;
    • Вывод результата.
     Объявление переменных 

    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]<min then

    begin

    min:=a[i];

    minIndex=i;

    end;

    end;

    Каждая итерация этого цикла сравнивает значение a[i] с сохраненным минимальным значением min, и в случае, если a[i] меньше, запоминает новое значение в переменной min и его индекс в переменной minIndex.

    Для вывода на экран результата используем оператор write. Не забываем end. в конце программы.

    write(‘Минимальное значение = ’,min,’ его индекс - ’,minIndex);

    end.

  • Решение задачи:Код написан в программе PascalABC.NET.const n = 10;Var a: array [1..n] of integer;i, min, k: integer;beginrandomize; //Подключение генератора произвольных чисел.write(\'Массив: \');for i:=1 to n dobegina[i]:=random(1, 20); //Массив заполняется произвольными целыми числами в диапазоне от 1 до 20.write(a[i],\' \'); //Вывод через пробел чисел на экран в строчку.end;min:=a[1];k:=1;for i:=1 to n dobeginif a[i]
    • Автор:

      dingo
    • 4 года назад
    • 0
  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years