Разъяснения разместил в код программы в виде комментариев
//Объявление переменных //n - количество чисел //p - произведение найденных чисел //i - переменная для организации цикла var n, p, i: integer;
begin //Переменная p = 1, //так как в процессе работы программы в ней //накапливается произведение найденных чисел p := 1; write('Введите количество чисел '); //В n - количество вводимых чисел readln(n); // цикл со счетчиком в котором вводим n чисел, for i := 1 to n do // Проверяем очередное значение i на кратность 3 // и выясняем, заканчивается ли это число на 1. // Для этого используем целочисленное деление. // mod - остаток от деления // если i mod 3 = 0, значит i кратно 3 // если i mod 10 = 1, значит i оканчивается на 1
if (i mod 3 = 0) and (i mod 10 = 1) then p := p * i; //умножим p на найденное число //Вывод произведения найденных чисел writeln('Искомое произведение ', p); end.
Тестовое решение: Введите количество чисел 81 Искомое произведение 86751
Если на паскале сойдет, лови: И так, нам надо создать массив чисел и заполнять его числами вводимых с клавиатуры. Значит мы должны использовать цикл for для ввода чисел, и так же для увеличения каждого числа на 8. ... Вот код: const n = 3; //Сколько чисел вводить begin var numbers: array [1..n] of integer; //Объявляем массив чисел for var i := 1 to n do readln(numbers[i]); //Считываем числа n раз for var i := 1 to n do numbers[i] := numbers[i] + 8; //Увеличиваем каждое число на 8 writeln(numbers.JoinIntoString(', ')); //Выводим числа end. ... Примеры: Ввод: 1, 2, 3 Вывод: 9, 10, 11
Ввод: 0, 5, 7 Вывод: 8, 13, 15 ... Если не сложно нажми " " ;)
//Объявление переменных
//n - количество чисел
//p - произведение найденных чисел
//i - переменная для организации цикла
var
n, p, i: integer;
begin
//Переменная p = 1,
//так как в процессе работы программы в ней
//накапливается произведение найденных чисел
p := 1;
write('Введите количество чисел ');
//В n - количество вводимых чисел
readln(n);
// цикл со счетчиком в котором вводим n чисел,
for i := 1 to n do
// Проверяем очередное значение i на кратность 3
// и выясняем, заканчивается ли это число на 1.
// Для этого используем целочисленное деление.
// mod - остаток от деления
// если i mod 3 = 0, значит i кратно 3
// если i mod 10 = 1, значит i оканчивается на 1
if (i mod 3 = 0) and (i mod 10 = 1) then
p := p * i; //умножим p на найденное число
//Вывод произведения найденных чисел
writeln('Искомое произведение ', p);
end.
Тестовое решение:
Введите количество чисел 81
Искомое произведение 86751
И так, нам надо создать массив чисел и заполнять его числами вводимых с клавиатуры. Значит мы должны использовать цикл for для ввода чисел, и так же для увеличения каждого числа на 8.
...
Вот код:
const n = 3; //Сколько чисел вводить
begin
var numbers: array [1..n] of integer; //Объявляем массив чисел
for var i := 1 to n do readln(numbers[i]); //Считываем числа n раз
for var i := 1 to n do numbers[i] := numbers[i] + 8; //Увеличиваем каждое число на 8
writeln(numbers.JoinIntoString(', ')); //Выводим числа
end.
...
Примеры:
Ввод: 1, 2, 3
Вывод: 9, 10, 11
Ввод: 0, 5, 7
Вывод: 8, 13, 15
...
Если не сложно нажми " " ;)