В массиве все элементы, значения которых больше 5, заменить на 15 - Turbo Pascal
Формулировка задачи:
В произвольном одномерном массиве все элементы значения которых больше 5 заменить на 15. Вывести номера этих элементов и найти количество элементов которые не удовлетворяют данному условию
Решение задачи: «В массиве все элементы, значения которых больше 5, заменить на 15»
textual
Листинг программы
uses crt;
var a:array[1..20] of integer;
n,i,k,m:integer;
begin
clrscr;
randomize;
repeat
write('Введите размер массива от 2 до 20 n=');
readln(n);
until n in [2..20];
writeln('Массив');
for i:=1 to n do
begin
a[i]:=random(15);
write(a[i]:3);
end;
writeln;
k:=0;
m:=0;
writeln('Номера элементов больших 5');
for i:=1 to n do
begin
if a[i]>5 then
begin
a[i]:=15;
write(i:3);
k:=1;
end
else m:=m+1;
end;
writeln;
if k=0 then writeln('Нет элементов больше 5');
writeln('Количество элементов, не удовлетворяющих этому условию=',m);
if k=1 then
begin
writeln('Измененный массив');
for i:=1 to n do
write(a[i]:3);
end;
readln
end.
Объяснение кода листинга программы
- Создаётся переменная
aтипаarray[1..20] of integer. - Задаются три переменные
n,i,kтипаinteger. - Выполняется цикл
repeat, который продолжается до тех пор, покаnне будет введено в диапазоне от 2 до 20. - Внутри цикла запрашивается размер массива
n. - Выводится сообщение о массиве.
- Запускается цикл
for, который выполняетсяnраз. - Внутри цикла генерируется случайное число от 1 до 15 и присваивается переменной
a[i]. - Выводится значение
a[i]с точностью до трех знаков после запятой. - Выводится символ новой строки.
- Инициализируются переменные
kиmсо значениями 0. - Выводится сообщение о номерах элементов, значения которых больше 5.
- Запускается цикл
for, который выполняетсяnраз. - Внутри цикла проверяется условие
if a[i] > 5 then. - Если условие истинно, то присваивается переменной
a[i]значение 15, выводится номер элементаiи переменнаяkустанавливается равной 1. - Если условие ложно, то переменная
mувеличивается на единицу. - Выводится символ новой строки.
- Выводится сообщение о количестве элементов, не удовлетворяющих условию.
- Если переменная
kравна 0, то выводится сообщение о том, что нет элементов больше 5. - Если переменная
kравна 1, то выводится измененный массив. - Цикл
forзавершается. - Выводится символ новой строки.
- Программа завершается.