Решение задачи 15.2.
Подготовка к ОГЭ по информатике
Типы задач
По оператору цикла:
- Количество чисел известно;
- Признак окончания цикла – 0.
По назначению:
- Вычисление суммы;
- Вычисление количества;
- Вычисление среднего арифметического;
- Нахождение минимального/максимального числа последовательности.
Вычисление суммы
С условием и без…
Количество чисел известно
Алгоритм действий
- Инициализация переменных;
- Ввод количества чисел в последовательности;
- Обнуление переменной суммы;
- Цикл от 1 до количества чисел в последовательности:
4.1. Ввод числа последовательности;
4.2. Если число меньше 50 и число больше 10, то добавить его в сумму.
Количество чисел известно
var n, i, a , sum : integer;
begin
readln (n); for i := 1 to n do
begin
readln (a); …………….
end; end.
Обязательный блок программы
n – количество чисел
а - число последовательности
Количество чисел известно
var n, i, a, sum : integer; // инициализация переменных
begin
readln(n); // ввод количества чисел в последовательности sum := 0; // обнуление переменной суммы for i := 1 to n do // цикл от 1 до количества чисел в последовательности
begin
readln(a); // ввод числа последовательности if (a 10) then sum := sum + a; // если число меньше 50 и число больше 10, то добавить его в сумму end; writeln (sum); // Вывести значение суммы end.
- Напишите программу, которая в последовательности натуральных чисел определяет количество чисел, кратных 4.
- Напишите программу, которая в последовательности натуральных чисел определяет количество чисел, кратных 4.
- if (g mod 4 = 0) then
- s:=s+1;
- Напишите программу, которая в последовательности натуральных чисел определяет минимальное число, кратное 3.
- Напишите программу, которая в последовательности натуральных чисел определяет минимальное число, кратное 3.
- Напишите программу, которая в последовательности натуральных чисел определяет сумму чисел, оканчивающихся на 4.
- Напишите программу, которая в последовательности натуральных чисел определяет сумму чисел, оканчивающихся на 4.
- Напишите программу, которая в последовательности натуральных чисел определяет сумму чисел, оканчивающихся на 3.
- Напишите программу, которая в последовательности натуральных чисел определяет сумму чисел, оканчивающихся на 3.
- if (g mod 10 = 3) then
- s:=s+g;
Признак окончания цикла - 0
Алгоритм действий
- Инициализация переменных;
- Обнуление переменной суммы;
- Ввод первого числа последовательности;
- Цикл До (Цикл Пока):
4.1. Если число кратно 3 и число оканчивается на 6, то добавить его в сумму;
4.2. Ввод числа последовательности.
Признак окончания цикла - 0
var n, i, a , sum : integer;
begin
readln (a);
sum:=0; repeat
…………… .
until a=0;
……………… .. end.
Обязательный блок программы
а - число последовательности
Признак окончания цикла - 0
var n, i, a, sum : integer; // инициализация переменных
begin
readln(а); // ввод первого числа последовательности sum := 0; // обнуление переменной суммы repeat // цикл ДО
if (a mod 3=0) and (a mod 10=6) then sum := sum + a;
// если число кратно 3 и число оканчивается на 6, то добавить его в сумму readln(a); // ввод числа последовательности until a=0; // условие выхода из цикла writeln (sum); // Вывести значение суммы end.
Repeat!
Признак окончания цикла - 0
var n, i, a, sum : integer; // инициализация переменных
begin
readln(а); // ввод первого числа последовательности sum := 0; // обнуление переменной суммы while a0 do // цикл ПОКА, условие входа в цикл
begin
if (a mod 3=0) and (a mod 10=6) then sum := sum + a;
// если число кратно 3 и число оканчивается на 6, то добавить его в сумму
readln(a); // ввод числа последовательности end; writeln (sum); // Вывести значение суммы end.
While!
Вычисление количества
С условием и без…
Количество чисел известно
Алгоритм действий
- Инициализация переменных;
- Ввод количества чисел в последовательности;
- Обнуление переменной счетчика;
- Цикл от 1 до количества чисел в последовательности:
4.1. Ввод числа последовательности;
4.2. Если число кратно 4 и число оканчивается на 6, то счетчик увеличить на 1.
- Вывести значение счетчика.
Количество чисел известно
var n, i, a , k : integer;
begin
readln (n); for i := 1 to n do
begin
readln (a); …………….
end; end.
Обязательный блок программы
n – количество чисел
а - число последовательности
Количество чисел известно
var n, i, a, k : integer; // инициализация переменных
begin
readln(n); // ввод количества чисел в последовательности k := 0; // обнуление переменной счетчика for i := 1 to n do // цикл от 1 до количества чисел в последовательности
begin
readln(a); // ввод числа последовательности if (a mod 4=0) and (a mod10=6) then inc(k); //если число кратно 4 и число оканчивается на 6, то увеличить счетчик на 1 end; writeln (k); // Вывести значение счетчика end.
Признак окончания цикла - 0
Алгоритм действий
- Инициализация переменных;
- Обнуление переменной суммы;
- Ввод первого числа последовательности;
- Цикл До (Цикл Пока):
4.1. Если число кратно 6 и число оканчивается на 0, то увеличить счетчик на 1;
4.2. Ввод числа последовательности.
- Вывести значение счетчика.
Признак окончания цикла - 0
var n, i, a , k : integer;
begin
readln (a);
k:=0; repeat
…………… .
until a=0;
……………… .. end.
Обязательный блок программы
а - число последовательности
Признак окончания цикла - 0
var n, i, a, k : integer; // инициализация переменных
begin
readln(а); // ввод первого числа последовательности k := 0; // обнуление переменной счетчика repeat // цикл ДО
if (a mod 6=0) and (a mod 10=0) then inc (k); //если число кратно 6 и число оканчивается на 0, то увеличить счетчик на 1
readln(a); // ввод числа последовательности until a=0; // условие выхода из цикла writeln (k); // Вывести значение суммы end.
Repeat!
Признак окончания цикла - 0
var n, i, a, k : integer; // инициализация переменных
begin
readln(а); // ввод первого числа последовательности k := 0; // обнуление переменной суммы while a0 do // цикл ПОКА, условие входа в цикл
begin
if (a mod 6=0) and (a mod 10=0) then k := k + 1; //если число кратно 6 и число оканчивается на 0, то увеличить счетчик на 1
readln(a); // ввод числа последовательности end; writeln (k); // Вывести значение счетчика end.
While!
Вычисление среднего арифметического
С условием и без…
Алгоритм действий
Вычисление среднего арифметического чисел последовательности предполагает одновременное вычисление суммы и количества чисел, удовлетворяющих условию.
Признак окончания цикла - 0
Алгоритм действий
- Инициализация переменных;
- Обнуление переменной суммы;
- Обнуление переменной счетчика
- Ввод первого числа последовательности;
- Цикл До (Цикл Пока):
4.1. Если число кратно 6 и число оканчивается на 0, то:
4.1.1 увеличить счетчик на 1;
4.1.2. добавить число в сумму;
4.2. Ввод числа последовательности.
- Если счетчик равен 0, то вывести «net» иначе вывести значение суммы, разделенной на счетчик.
Признак окончания цикла - 0
var n, i, a, sum, k : integer; // инициализация переменных
begin
readln (а); // ввод первого числа последовательности sum := 0; // обнуление переменной суммы
k := 0; // обнуление переменной счетчика repeat // цикл ДО
if (a mod 6=0) and (a mod 10=0) //если число кратно 6 и число оканчивается на 0, то
then
begin
sum:=sum + a ; // добавить переменную в сумму
inc (k); // увеличить счетчик на 1
end; readln (a); // ввод числа последовательности until a=0; // условие выхода из цикла if k=0
then writeln (‘net’) // Вывести сообщение, что таких чисел нет
else writeln (sum/k); // Вывести значение среднего арифметического end.
Нахождение минимального/максимального числа последовательности
С условием и без…
Количество чисел известно
Алгоритм действий
- Инициализация переменных;
- Присвоение заведомо ложного значения переменной эталону;
- Ввод количества чисел последовательности;
- Цикл от 1 до количества чисел последовательности:
4.1. Ввод числа последовательности;
4.2. Если остаток от деления числа на 10 не равен 3 и число больше эталона, то:
4.2.1 Присвоить эталону значение этого числа;
max) //если число не кратно 3 и число больше эталона, то then max:=a ; // эталону присвоить значение этого числа end; writeln (max); // Вывести значение эталона end. " width="640"
Количество чисел известно
var n, i, a, max, k : integer; // инициализация переменных
begin
readln(n); // ввод количества чисел последовательности max := -1; // Присвоение заведомо ложного значения переменной эталону
for i:=1 to n do // цикл ДО
begin
readln(a); // ввод числа последовательности if (a mod 3=0) and (a max) //если число не кратно 3 и число больше эталона, то
then max:=a ; // эталону присвоить значение этого числа
end;
writeln (max); // Вывести значение эталона end.
Признак окончания цикла - 0
Алгоритм действий
- Инициализация переменных;
- Присвоение заведомо ложного значения переменной эталону;
- Ввод первого числа последовательности;
- Цикл До (Цикл Пока):
4.1. Если число больше 9 и меньше 80 и больше эталона, то:
4.1.1 Присвоить эталону значение этого числа;
4.2. Ввод числа последовательности.
9) and (a max) //если число больше 9 и меньше 80 и число больше эталона, то then max:=a ; // эталону присвоить значение этого числа readln(a); // ввод числа последовательности until a=0; // условие выхода из цикла writeln (max); // Вывести значение эталона end. " width="640"
Признак окончания цикла - 0
var n, i, a, max, k : integer; // инициализация переменных
begin
max := -1; // Присвоение заведомо ложного значения переменной эталону
readln (a); // ввод первого числа последовательности
repeat // цикл ДО
if (a 9) and (a max) //если число больше 9 и меньше 80
и число больше эталона, то
then max:=a ; // эталону присвоить значение этого числа
readln(a); // ввод числа последовательности until a=0; // условие выхода из цикла
writeln (max); // Вывести значение эталона end.