В последовательности все неотрицательные члены, не принадлежащие отрезку [1, 2], заменить нулями - Turbo Pascal
Формулировка задачи:
даны натуральное число n, действительные числа a1, a2 ...an. в последовательности a1, a2 ...an все неотрицательные члены, не принадлежащие отрезку [1, 2] заменить нулями.
Задача построить блок-схему и записать на алгоритмическом языке.
Решение задачи: «В последовательности все неотрицательные члены, не принадлежащие отрезку [1, 2], заменить нулями»
textual
Листинг программы
var ar: Array[Byte] Of Real; n, i: Word; begin repeat Write('Input n='); ReadLn(n); until (n > 0); Randomize(); Write('Original array:'); for i := 0 to n - 1 do begin ar[i] := Random * 198 - 99; Write(ar[i]:7:2); if ((ar[i] >= 0) And ((ar[i] < 1) Or (ar[i] > 2))) then ar[i] := 0; end; WriteLn; Write('Modified array:'); for i := 0 to n - 1 do Write(ar[i]:7:2); end.
Объяснение кода листинга программы
В данном коде происходит следующее:
- Создается переменная
ar
, которая представляет собой массив из 20 элементов типаReal
. - Затем, с помощью цикла
repeat
, запрашивается числоn
от пользователя. Число должно быть больше 0. - После этого, с помощью функции
Randomize()
, генерируется случайное число в диапазоне от -99 до 99. - Выводится исходный массив
ar
. - Затем, с помощью цикла
for
, перебираются все элементы массиваar
. - Внутри цикла проверяется условие
(ar[i] >= 0) And ((ar[i] < 1) Or (ar[i] > 2))
. Если это условие выполняется, то есть если значение элементаar[i]
находится в диапазоне от -1 до 1, то значение элемента заменяется на 0. - После завершения внутреннего цикла, выводится измененный массив
ar
. - В конце программы выводится сообщение о том, что было введено число
n
и какие значения были заменены на 0.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д