Условие задачи: Найти произведение элементов, кратных 3 в массиве, заданном датчиком случайных чисел на интервале [-28, 27]. Размер произвольный. (Язык Pascal)
Сложность: легкая.
Решение задачи
Для начала продумаем наше решение. Ну само собой сначала заполним массив случайными числами с помощью цикла и когда будем заполнять будем проверять является ли текущее число кратное трем и если кратно то сразу занесем его в произведение.
Для того чтобы решить задачу нам понадобятся следующие переменные:
Начнем мы с каркаса нашей программы
type
massiv = proiz, n, i : mass : massiv; randomize; write readln; |
Тут мы создали свой тип данных для массива, как и зачем читайте ( тут ) включили генератор случайных чисел , подробнее (тут), ну и попросили пользователя ввести кол-во элементов массива.
Теперь нам надо заполнить наш массив случайными, делается это как обычно в цикле, но также мы в цикле сразу проверим элемент которому только что присвоили значение на кратность, до начала цикла нам нужно задать начальное значение переменной в которое у нас будет храниться произведение (proiz), нужно ей присвоить единицу, если этого не сделать, то произведение у нас будет всегда равно одному:
proiz := 1 ; // начальное значение произведение ДОЛЖНО быть равно 1 for i:= 1 to n do // пускаем цикл, от 1 до длины массива begin mass[i] := random( if proiz := proiz * mass[i]; write end |
Т.е. довольно просто, при заполнение массива сразу же и проверяем числа на кратность.
Всё решение задачи Pascal
type
massiv = proiz, n, i : mass : massiv; randomize; write proiz := for begin mass[i] := random( if proiz := proiz * mass[i]; write end writeln writeln readln; |