Илья: Спасибо чел, помогло
09-02-2023
Читать статью
Калужский Александр: Никита, если мы ставим галочку "учитыват..
07-02-2023
Никита: В задание 10 не сошлось из-за того, что ..
Сегодня разберём нестандартные задачи из задания из второй часть ОГЭ по информатике.
Напишите программу, которая в последовательности натуральных чисел определяет КОЛИЧЕСТВО всех чисел, КРАТНЫХ 6 и ОКАНЧИВАЮЩИХСЯ на 2. В последовательности всегда имеется число, кратное 6 и оканчивающееся на 2. Программа получает на вход натуральные числа, КОЛИЧЕСТВО ВВЕДЁННЫХ ЧИСЕЛ НЕИЗВЕСТНО, ПОСЛЕДОВАТЕЛЬНОСТЬ ЧИСЕЛ ОКАНЧИВАЕТСЯ ЧИСЛОМ 0. (0 – признак окончания последовательности, не входит в последовательность)
Количество чисел не превышает 1000. Введённые числа не превышают 30 000. Программа должна вывести одно число - КОЛИЧЕСТВО всех чисел, КРАТНЫХ 6 и ОКАНЧИВАЮЩИХСЯ на 2.
Заводим две переменные: а – переменная для чисел, quantity – переменная для результата. Вначале Количество равно нулю, а само число -1 (главное, чтобы не (кратное 6 и оканчивающие на 2)) Далее, используем ЦИКЛ с предусловием (WHILE). Запрашиваем число, если оно кратно 6 (остаток от деления на 6 равен 0) И это число оканчивается на 2 (остаток от деления на 10 равно 2), то плюсуем 1 к тому, что было в переменной Количество. Как только, мы получили в последовательности 0 – программа выходит из ЦИКЛА (WHILE), и распечатывает ответ.
var a, quantity: integer; begin quantity:=0; a:=-1; while a <> 0 do begin Readln(a); if (a mod 6 = 10 = 2) then quantity := quantity + 1; end; Writeln(quantity); end.
Напишите программу, которая в последовательности натуральных чисел определяет СУММУ всех чисел, КРАТНЫХ 10 и БОЛЬШИХ 100. В последовательности всегда имеется число, кратное 10 и большее 100. Программа получает на вход натуральные числа, КОЛИЧЕСТВО ВВЕДЁННЫХ ЧИСЕЛ НЕИЗВЕСТНО, ПОСЛЕДОВАТЕЛЬНОСТЬ ЧИСЕЛ ОКАНЧИВАЕТСЯ ЧИСЛОМ 0. (0 – признак окончания последовательности, не входит в последовательность)
Количество чисел не превышает 1000. Введённые числа не превышают 30 000. Программа должна вывести одно число - СУММУ всех чисел, кратных 10 и БОЛЬШИХ 100.
Заводим две переменные: а – переменная для чисел, sum – переменная для суммы. Вначале сумма равна нулю, а само число -1 (главное, чтобы не (КРАТНОЕ 10 и БОЛЬШЕЕ 100)). Далее, используем ЦИКЛ с предусловием (WHILE). Запрашиваем число, если оно кратно 10 (остаток от деления на 10 равен 0) И это число БОЛЬШЕ 100 (>100), то СУММИРУЕМ: к тому, что было, в переменной суммы, плюсуем наш элемент. Как только мы получили в последовательности 0 – программа выходит из ЦИКЛА (WHILE) и распечатывает ответ.
var a, sum: integer; begin sum:=0; a:=-1; while a <> 0 do begin readln(a); if (a mod 10 = 0) and (a>100) then sum := sum + a; end; writeln(sum); end.
Напишите программу, которая в последовательности натуральных чисел определяет МИНИМАЛЬНОЕ нечётное число БОЛЬШЕЕ 50. В последовательности всегда имеется нечётное число большее 50. Программа получает на вход натуральные числа, КОЛИЧЕСТВО ВВЕДЁННЫХ ЧИСЕЛ НЕИЗВЕСТНО, ПОСЛЕДОВАТЕЛЬНОСТЬ ЧИСЕЛ ОКАНЧИВАЕТСЯ ЧИСЛОМ 0. (0 – признак окончания последовательности, не входит в последовательность)
Количество чисел не превышает 1000. Введённые числа не превышают 30 000. Программа должна вывести одно число - МИНИМАЛЬНОЕ нечётное число БОЛЬШЕЕ 50.
Заводим две переменные: а – переменная для чисел, min – переменная для результата. Вначале минимальное число равно самому большому значению из всех возможных: 30000, а само число -1 (главное, чтобы не (нечётное число БОЛЬШЕЕ 50)). Далее, используем ЦИКЛ с предусловием (WHILE). Запрашиваем число, если оно нечётное (остаток от деления на 2 равен 1) И число больше 50 (>50), И это число меньше, чем переменная min (минимальное число, считающееся в данный момент), то это число заносится в переменную min (Т.е. «получаем нового победителя – обновляем минимальное число»).Как только мы получили в последовательности 0 – программа выходит из ЦИКЛА (WHILE), и распечатывает ответ.
var a, min: integer; begin min:=30000; a:=-1; while a <> 0 do begin Readln(a); if (a mod 2 = 1) and (a > 50) and (a < min) then min := a; end; Writeln(min); end.
Успехов на экзамене по информатике!