Условие задачи : В заданном одномерном массиве, состоящем из n целых чисел, подсчитать количество нулей (Язык Pascal)
Сложность : легкая .
Решение задачи :
Для начала продумаем наше решение. Мы создадим массив и начнем с помощью цикла его заполнять случайным образом, и как-только мы введем число будем проверять равно ли оно 0, если да то увеличим кол-во нулей на 1.
Для того чтобы подсчитать количество нулей в одномерном массиве нам понадобиться следующие переменные :
- Переменная mass — для массива
- Переменная n — для количества элементов массива
- Переменная count — для количества нулевых элементов
- Переменная i — счетчик для цикла
- Переменная number — для числа массива
Начнем мы с каркаса нашей программы :
type massiv = array [1..100] of integer; var mass : massiv; count , number , i , n : integer; begin randomize; write('Введите кол-во элементов : '); readln(n); end.
Тут мы создали свой тип данных для массива, как и зачем читайте ( тут ) , дальше мы объявили все переменные которые у нас будут использоваться в программе и так как мы будем заполнять массив случайными числами, включили генератор случайных чисел, чтобы числа при каждом запуске программы были разные, ну и попросили пользователя ввести кол-во элементов массива.
Ну а дальше довольно простой цикл :
for i:=1 to n do begin number := random(6); write(number, ' | '); if ( number = 0 ) then count := count + 1; end;
Цикл у нас само собой от 1 до кол-ва введенных пользователем чисел, в цикле мы присваиваем number, случайное число от 0 до 5, потом его выводим и проверяем с помощью условия равняется ли оно нулю, если да то увеличиваем кол-во нулевых чисел на один.
Ну и останется только вывести результат.
Всё решение задачи Pascal :
uses crt; type massiv = array [1..100] of integer; // создаем свой тип данных var mass : massiv; // объявляем переменные count , number , i , n : integer; // объявляем переменные begin clrscr; // очищаем экран randomize; // включаем генератор случайных чисел write('Введите кол-во элементов : '); readln(n); // вводим кол-во чисел count := 0; // обнуляем кол-во нулей чтобы не было ошибок for i:=1 to n do // пускаем цикл begin number := random(6); // присваиваем случайное число write(number, ' | '); // выводим число if ( number = 0 ) then // если оно равно 0 count := count + 1; // увеличиваем кол-во нулей на 1 end; writeln('Кол-во нулевых элементов : ' , count); // выводим кол-во нулей readln; // чтобы программа не закрывалась. end.