Как написать программу которая в последовательности натуральных чисел

Здравствуйте, дорогие друзья. Сегодня мы решим задание 15.2 из ОГЭ по информатике. Условия задачи взяты с сайта «Решу ОГЭ». Вот сама задача:

15.2 Напишите программу, которая в последовательности натуральных чисел определяет максимальное число, кратное 5. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, кратное 5. Количество чисел не превышает 1000. Введённые числа не превышают 30 000. Программа должна вывести одно число — максимальное число, кратное 5.

Вот сам исходный код:

n=int(input(«Введите последовательность «)) # вводим количество общей последовательности

maxx=0 # задаём максимальное число

if n>1000: # ставим условие, если введённое число больше 1000, тогда

print(«Error»)# выводим сообщение об ошибке

exit(0) # выходим из программы

for i in range (n): # задаём цикл с параметром до n

chislo=int(input(«Введите число «)) # в цикле вводим число

20.2 ОГЭ Информатика 2019 Python Pascal C++

if chislo>30000: # если число больше 30000, тогда

print(«Error») # выводим сообщение об ошибке

exit(0) # выходим из программы

if chislo%5==0 and chislo>maxx: # если число делится на 5 без остатка и больше максимального, тогда

maxx=chislo # в переменную maxx записываем наше число

print(«Максимальное число больше 5 = «, maxx) # выводим максимальное число кратное 5

А теперь смотрим на скриншот программы и читаем комментарии:

Источник: dzen.ru

ОГЭ по информатике 2023 — Задание 15 (Составляем программу)

Всем привет! Сегодня мы будем решать 15 задание из ОГЭ по информатике.

В 15 задании у учащегося есть выбор: решить задачу с Роботом в программе Кумир или решить задачу на программирование. Мы с вами выбираем задачу по программированию! Выполнять будем на языке Python.

В этой статье рассмотрим основные типы задач на программирование из 15 задания ОГЭ по информатике.

Задача (Количество чисел)

Напишите программу, которая в последовательности натуральных чисел определяет количество чисел, кратных 3. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, кратное 3. Количество чисел не превышает 1000. Введённые числа не превышают 30 000. Программа должна вывести одно число — количество чисел, кратных 3.

Пример работы программы:

Входные данные Выходные данные
4
15
26
24
7
2

Решение:

n=int(input()) k=0 for i in range(n): a=int(input()) if a%3==0: k=k+1 print(k)

В первой строчке мы запрашиваем число n. Переменная k отвечает за количество найденных чисел, удовлетворяющих условию задачи. В начале количество найденных чисел равно нулю.

Затем идёт ЦИКЛ for. Цикл повторяется n раз. Внутри цикла запрашиваем число a. Это очередное число в нашей последовательности. Это число проверяется с помощью условия if (переводится, как ЕСЛИ).

Если остаток от деления на 3 равен нулю, то число a делится на 3. Операция % — это и есть остаток от деления.

Если условие будет истинным, то будет выполняться строчка k=k+1. Т.е., если мы нашли число, которое кратно 3, то прибавляем единицу к счётчику k. Если условие не выполняется (ложно), то строка k=k+1 не выполняется.

После того, как весь цикл прокрутится, в переменной k будет сидеть ответ.

Выполните код и проверьте тестовую таблицу, которая дана в условии задачи.

Задача (Проверяем, на что оканчивается число)

Напишите программу, которая в последовательности натуральных чисел определяет количество чисел, оканчивающихся на 4. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, оканчивающееся на 4. Количество чисел не превышает 1000. Введённые числа не превышают 30 000. Программа должна вывести одно число — количество чисел, оканчивающихся на 4.

Читайте также:
Установить программу кумир на компьютер

Пример работы программы:

Входные данные Выходные данные
3
26
33
24
1

Решение:

n=int(input()) k=0 for i in range(n): a=int(input()) if a%10==4: k=k+1 print(k)

Эта программа отличается от предыдущей тем, что нужно количество чисел, которые оканчиваются на цифру 4.

Для того, чтобы найти на что оканчивается положительное число, достаточно взять остаток от деления на 10.

16 : 10 = 1 (остаток 6)
28 : 10 = 2 (остаток 8)
432 : 10 = 43 (остаток 2)

Задача (Сумма элементов, сложное условие)

Напишите программу, которая в последовательности натуральных чисел определяет сумму чисел, кратных 3 и оканчивающихся на 1. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, кратное 3 и оканчивающееся на 1. Количество чисел не превышает 100. Введённые числа не превышают 300. Программа должна вывести одно число — сумму чисел, кратных 3 и оканчивающихся на 1.

Пример работы программы:

Входные данные Выходные данные
5
21
51
6531
121
22
6603

Решение:

n=int(input()) sm=0 for i in range(n): a=int(input()) if a%3==0 and a%10==1: sm=sm+a print(sm)

За сумму отвечает переменная sm.

Здесь нужно, чтобы два условия выполнялись для числа a. Это достигается за счёт союза and (союз И).

Когда ищем сумму, мы уже к переменной sm прибавляем не 1, а само число a.

Задача (Трёхзначные числа)

Напишите программу, которая в последовательности натуральных чисел определяет сумму трехзначных нечётных чисел, кратных 7. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется трёхзначное нечётное число, кратных 7. Количество чисел не превышает 100. Введённые числа не превышают 300. Программа должна вывести одно число — сумму трёхзначных нечётных чисел, кратных 7.

Пример работы программы:

Входные данные Выходные данные
5
441
455
294
121
2261
896

Решение:

n=int(input()) sm=0 for i in range(n): a=int(input()) if a%2!=0 and a%7==0 and a > 99 and a < 1000: sm=sm+a print(sm)

Нечётное число даёт при делении на 2 остаток не равный нулю. Знак неравно пишется так: !=.Трёхзначные числа легко отследить, т.к. эти числа больше 99, но меньше 1000.

Эти все требования оформляем в виде сложного условия через союз И.

Задача (Максимальное значение)

Напишите программу, которая в последовательности натуральных чисел определяет максимальное число, кратное 8. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, кратное 8. Количество чисел не превышает 1000. Введённые числа не превышают 30 000. Программа должна вывести одно число — максимальное число, кратное 8.

Пример работы программы:

Входные данные Выходные данные
4
56
431
64
90
64

Решение:

n=int(input()) mx=0 for i in range(n): a=int(input()) if a%8==0: mx=max(mx, a) print(mx)

Здесь уже заводим переменную mx для максимального значения, которое делится на 8. Она и пойдёт в ответ.

Нас интересуют только числа, которые делятся на 8. Если это так, числа a претендуют, чтобы попасть в переменную mx. Функция max() выбирает среди двух значений наибольшее. Если a больше, чем значение, которое находится в mx в данный момент времени, то оно перезапишется в переменную mx.

В начале в mx самое маленькое число 0, чтобы его легко было «победить». Последующее число будет «победить» уже сложнее. После прохождения всего цикла в переменной mx будет находится максимальное число.

Читайте также:
Как пользоваться программой паттерн мейкер пошагово

Задача (Минимальное значение)

Напишите программу, которая в последовательности натуральных чисел определяет минимальное число, оканчивающееся на 6. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, оканчивающееся на 6. Количество чисел не превышает 1000. Введённые числа не превышают 30 000. Программа должна вывести одно число — минимальное число, оканчивающееся на 6.

Пример работы программы:

Входные данные Выходные данные
4
56
500
86
13
56

Решение:

n=int(input()) mn=30001 for i in range(n): a=int(input()) if a%10==6: mn=min(mn, a) print(mn)

Эта программа похоже на поиск максимального числа. Существенная разница заключается в том, что при поиске минимального значения в переменную mn кладём наоборот самое большое значение. Если мы оставим ноль, то его никто не сможет «победить», и в ответе получится тоже ноль.

Задача (Последовательность оканчивается нулём)

Напишите программу, которая в последовательности натуральных чисел вычисляет сумму всех двузначных чисел, кратных 5. Программа получает на вход натуральные числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 – признак окончания ввода, не входит в последовательность). Количество чисел не превышает 1000. Введённые числа не превышают 30 000. Программа должна вывести одно число: сумму всех двузначных чисел, кратных 5.

Пример работы программы:

Входные данные Выходные данные
55
120
25
68
80

Решение:

a=int(input()) sm=0 while a!=0: if a%5==0 and a > 9 and a < 100: sm=sm+a a=int(input()) print(sm)

Здесь уже нет переменной n (количества чисел в последовательности). Как пользователю надоест вводить числа, он должен ввести число ноль.

Вместо n запрашиваем число a. Заводим переменную sm для ответа. Потом начинается ЦИКЛ while. Он будет выполняться (повторяться), пока условие, стоящие справа, истинное. Мы там прописываем, пока число a не равно нулю, мы продолжаем, иначе это окончание последовательности.

Внутри ЦИКЛА проверяем число a согласно условию задачи.

После проверки, запрашиваем новое число a (новый элемент последовательности).

Задача (Последовательность оканчивается нулём, закрепление)

Напишите программу, которая в последовательности натуральных чисел вычисляет количество всех чисел, оканчивающихся на 9. Программа получает на вход натуральные числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 – признак окончания ввода, не входит в последовательность). Количество чисел не превышает 1000. Введённые числа не превышают 30 000. Программа должна вывести одно число: количество всех чисел, оканчивающихся на 9.

Пример работы программы:

Входные данные Выходные данные
19
45
599
11
2

Решение:

a=int(input()) k=0 while a!=0: if a%10==9: k=k+1 a=int(input()) print(k)

На сегодня всё, всем удачи на ОГЭ по информатике.

Источник: code-enjoy.ru

PASCAL . Программа получает на вход количество чисел в последовательности. »
для ввода самих чисел и проверки на соответствие условию удобно использовать оператор for . to . do begin . end;

В заданиях, где встречается фраза «. последовательность чисел заканчивается числом 0 (0 – признак окончания ввода, не входит в последовательность) . »
для ввода самих чисел и проверки на соответствие условию удобно использовать оператор while . do begin . end;
В этом случае число вводят с клавиатуры два раза до цикла, потом в цикле идет проверка условий и снова ввод следующего числа

Задача 1

Напишите программу, которая в последовательности натуральных чисел определяет максимальное число, кратное 5. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, кратное 5. Количество чисел не превышает 1000. Введённые числа не превышают 30 000. Программа должна вывести одно число – максимальное число, кратное 5.

Пример работы программы:
Входные данные
Выходные данные

Пояснение: в данной программе будем использовать переменные i — переменная цикла, n — количество чисел в последовательности, a — вводимое число, max — для хранения найденного числа.
Мы ищем максимальное число, поэтому начальное значение max:=0 .
Условия отбора: кратность 5 ( a mod 5=0) и наибольшее ( a>max)
Текст программы

var i, n, a, max: integer; /объявление переменных
max:=0; /начальное значение max
readln(n); /ввод количества чисел в последовательности
for i:=1 to n do /цикл
readln(a); /ввод числа
if (a mod 5=0) and (a>max) then max:=a; /проверка условия и нахождение max
writeln(max); /вывод найденного максимального кратного 5
Задача 2

Напишите программу, которая в последовательности натуральных чисел определяет сумму чисел, кратных 6. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, кратное 6. Количество чисел не превышает 100. Введённые числа не превышают 300. Программа должна вывести одно число – сумму чисел, кратных 6.

Пример работы программы:
Входные данные
Выходные данные

Пояснение: в данной программе будем использовать переменные n — количество чисел в последовательности, s — для хранения найденной суммы, k — переменная цикла, g — вводимое число.
Мы ищем сумму, поэтому начальное значение s:=0 .
Условие отбора кратность 6 ( g mod 6=0)
Текст программы

var n, s, k, g: integer; /объявление переменных
s:=0; /начальное значение суммы чисел
readln(n); /ввод количества чисел в последовательности
for k:=1 to n do /цикл
readln(g); /ввод числа
if (g mod 6=0) then s:=s+g; /проверка условия и нахождение суммы
writeln(s); /вывод суммы чисел кратных 6
Задача 3

Напишите программу, которая в последовательности натуральных чисел определяет количество чисел, кратных 4. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, кратное 4. Количество чисел не превышает 1000. Введённые числа не превышают 30 000. Программа должна вывести одно число – количество чисел, кратных 4.

Пример работы программы:
Входные данные
Выходные данные

Пояснение: в данной программе будем использовать переменные n — количество чисел в последовательности, s — для хранения количества чисел кратных 4, k — переменная цикла, g — вводимое число.
Мы ищем количество, поэтому начальное значение s:=0 .
Условие отбора кратность 4 ( g mod 4=0)
Текст программы

var n, s, k, g: integer; /объявление переменных
s:=0; /начальное значение количества чисел кратных 4
readln(n); /ввод количества чисел в последовательности
for k:=1 to n do /цикл
readln(g); /ввод числа
if (g mod 4=0) then s:=s+1; /проверка условия и нахождение количества
writeln(s); /вывод количества чисел кратных 4
Задача 4

Напишите программу, которая в последовательности натуральных чисел определяет количество чисел, оканчивающихся на 3. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, оканчивающееся на 3. Количество чисел не превышает 1000. Введённые числа не превышают 30 000. Программа должна вывести одно число – количество чисел, оканчивающихся на 3.

Пример работы программы:
Входные данные
Выходные данные

Пояснение: в данной программе будем использовать переменные n — количество чисел в последовательности, s — для хранения количества чисел оканчивающихся на 3, k — переменная цикла, a — вводимое число.
Мы ищем количество, поэтому начальное значение s:=0 .
Условие число оканчивается на 3 ( a mod 10=3)
Текст программы

Источник: pascal304.blogspot.com

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru