Вычислить выражение - PascalABC.NET (24936)
Формулировка задачи:
Для решения задачи задать случайным образом одномерный массив размерности N (вводится с клавиатуры) из целочисленных элементов, принадлежащих отрезку
[-20;20]. Вывести на экран промежуточные результаты, полученные при вычислении значения заданного выражения.
Составить программу для вычисления
T=(R/(Q+1))+S
R - наименьший элемент массива;
Q - произведение элементов массива с нечетными номерами;
S - количество элементов, лежащих в интервале (A,B) (ввести с клавиатуры).
Решение задачи: «Вычислить выражение»
textual
Листинг программы
const n_max = 100; var s, a, b, i, n, min: integer; mas: array[1..n_max] of integer; t, proizved: real; begin randomize; WRITE('Введите размерность одномерного массива '); READln(n); write('Введите интервал (A,B): '); READln(a, b); //S - количество элементов, лежащих в интервале (A,B) writeln('Одномерный массив:'); {Q - произведение элементов массива с нечетными номерами;} min := 1; s := 0; proizved := 1; for i := 1 to n do begin mas[i] := random(-20, 20); {задаем массив случайным образом} write(mas[i]:5); {выводим массив} if mas[i] < mas[min] then min := i; if odd(i) then proizved := proizved * mas[i]; if (mas[i] <= b) and (mas[i] >= a) then inc(s); end; writeln; writeln('R = ', mas[min]); writeln('Q = ', proizved:0:0); writeln('S = ', s); //T=(R/(Q+1))+S T := mas[min] / (proizved + 1) + s; writeln('T = ', T); end.
Объяснение кода листинга программы
- Объявлены константы и переменные:
- n_max = 100 - максимальная размерность массива
- s, a, b, i, n, min = целочисленные переменные для подсчета количества элементов в интервале, произведения элементов массива с нечетными номерами, хранения индекса минимального элемента и т.д.
- mas = массив для хранения случайных чисел
- t, proizved = переменные для хранения произведения элементов массива с нечетными номерами и временного хранения результата
- Выполняется инициализация генератора случайных чисел
- Пользователю предлагается ввести размерность массива и интервал для подсчета элементов
- Цикл for перебирает элементы массива от 1 до n
- Каждый элемент массива инициализируется случайным числом в диапазоне от -20 до 20
- Если текущий элемент меньше минимального, то обновляется значение переменной min
- Если текущий элемент имеет нечетный номер, то обновляется значение переменной proizved
- Если текущий элемент находится в заданном интервале (A,B), то увеличивается значение переменной s
- После завершения цикла выводятся значения переменных min, proizved и s
- Вычисляется значение переменной T по формуле T = (R/(Q+1))+S
- Выводится значение переменной T
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д