Просмотр содержимого документа
«Задание 15.2 в ОГЭ по информатике»
Задание 15.2 в ОГЭ по информатике
Игнатьева Лариса Николаевна, учитель информатики
СОШ № 24 города Костромы
Спецификация
Кодификатор
Кодификатор
0 или равен 1 x % 2 == 1" width="640"
Условие: число х чётное
Остаток от деления числа х на число 2 равен 0
x %2 == 0
Условие: число х нечётное
Остаток от деления числа х на число 2 не равен 0
x % 2 != 0
или больше 0 x %2 0
или равен 1 x % 2 == 1
Условие: число х кратно у
Остаток от деления числа х на число у равен 0
x % y == 0
Пример: число х кратно 5.
Остаток от деления числа х на число 5 равен 0
x % 5 == 0
Условие: остаток от деления х на у равен z
x % y == z
Пример: остаток от деления числа x на число 5 равен 4
x % 5 == 4
Условие: число х оканчивается на у
Остаток от деления числа х на число 10 равен у
x % 10 == у
Пример: число х оканчивается на 5.
Остаток от деления числа х на число 10 равен 5
x % 10 ==5
Подсчет количества чисел,удовлетворяющих условию
k=0 # счётчик
for i in range (1,n+1):# цикл
if : # если условие выполняется
k+=1 # увеличиваем счетчик на 1
Подсчет суммы чисел,удовлетворяющих условию
s=0 # сумма
for i in range (1,n+1):# цикл
if : # если условие выполняется
s+=x # увеличиваем сумму
Максимальное число, удовлетворяющее условию
mx=0 # максимуму всегда присваиваем минимальное значение
В Python можно использовать функцию max
Минимальное число, удовлетворяющее условию
mn=1000000 # минимуму всегда присваиваем максимальное значение
В Python можно использовать функцию min
Пример 1
Напишите программу, которая в последовательности натуральных чисел определяет максимальное число, кратное 5. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, кратное 5. Количество чисел не превышает 1000. Введённые числа не превышают 30 000. Программа должна вывести одно число — максимальное число, кратное 5.
print ('Введите количество чисел последовательности')
n = int (input())
mx = 0
for n in range (1,n+1):
print ('Введите число')
a = int (input())
if a%5==0 and amx: # if a%5==0 :
mx=a # mx=max(mx,a)
print (mx)
Пример 2
Напишите программу для решения следующей задачи. Камера наблюдения регистрирует в автоматическом режиме скорость проезжающих мимо неё автомобилей, округляя значения скорости до целых чисел. Необходимо определить максимальную зарегистрированную скорость автомобиля. Если скорость хотя бы одного автомобиля была меньше 30 км/ч, выведите «YES», иначе выведите «N0».
Программа получает на вход число проехавших автомобилей N (1
max: max=v if v k+=1 print (max) if k=1: print ('YES') else: print ('NO')" width="640"
print ('Введите количество автомобилей')
n = int (input())
max = 0
k=0
for n in range (1,n+1):
print ('Введите скорость автомобиля')
v = int (input())
if vmax:
max=v
if v
k+=1
print (max)
if k=1:
print ('YES')
else: print ('NO')
Пример 3
Напишите программу, которая в последовательности натуральных чисел определяет наибольший из делителей числа 2200. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, являющееся делителем числа 2200. Количество чисел не превышает 1000. Введённые числа не превышают 30 000. Программа должна вывести одно число — наибольший в последовательности делитель числа 2200.
mx: mx=a print(mx)" width="640"
print('Введите количество чисел последовательности')
n=int(input())
mx=1
for n in range (1,n+1):
a=int(input())
if 2200%a==0 and amx:
mx=a
print(mx)
Пример 4
Напишите программу, которая в последовательности натуральных чисел определяет минимальное число, кратное 3. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, кратное 3. Количество чисел не превышает 1000. Введённые числа не превышают 30 000. Программа должна вывести одно число — минимальное число, кратное 3.
print ('Введите количество чисел последовательности')
n = int (input())
min = 30001
for n in range (1,n+1):
print ('Введите число')
a = int (input())
if a%3==0 and a
min=a
print (min)
Пример 5
Напишите программу, которая в последовательности натуральных чисел определяет наименьший из делителей числа 1344. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, являющееся делителем числа 1344. Количество чисел не превышает 1000. Введённые числа не превышают 30 000. Программа должна вывести одно число — наименьший в последовательности делитель числа 1344.
print('Введите количество чисел последовательности')
n=int(input())
mn=1345
for n in range (1,n+1):
a=int(input())
if 1344%a==0 and a
mn=a
print(mn)
Пример 6
Напишите программу, которая в последовательности натуральных чисел определяет сумму чисел, кратных 6. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, кратное 6. Количество чисел не превышает 100. Введённые числа не превышают 300. Программа должна вывести одно число — сумму чисел, кратных 6.
print ('Введите количество чисел последовательности')
n = int (input())
s = 0
for n in range (1,n+1):
print ('Введите число')
a = int (input())
if a%6==0 :
s=s + a # s+=a
print (s)
Пример 7
Напишите программу, которая в последовательности целых чисел определяет их сумму и подсчитывает разность количества положительных и отрицательных чисел последовательности. Программа получает на вход целые числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 — признак окончания ввода, не входит в последовательность).
Количество чисел не превышает 1000. Введённые числа по модулю не превышают 30 000. Программа должна вывести два числа: сумму чисел и разность количества положительных и отрицательных чисел.
0:k1+=1 if awhile a!=0: a=int(input()) s=s+a if a0:k1+=1 if aprint (s) print (k1-k2)" width="640"
s=0
k1=0
k2=0
a=int(input())
s=s+a
if a0:k1+=1
if a
while a!=0:
a=int(input())
s=s+a
if a0:k1+=1
if a
print (s)
print (k1-k2)
Пример 8
Напишите программу, которая в последовательности натуральных чисел определяет сумму всех чисел, кратных 7 и оканчивающихся на 2. Программа получает на вход натуральные числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 — признак окончания ввода, не входит в последовательность). Количество чисел не превышает 1000. Введённые числа не превышают 30 000. Программа должна вывести одно число: сумму всех чисел, кратных 7 и оканчивающихся на 2.
a = int (input())
s = 0
if a%7==0 and a%10==2:
s+=a
while a!=0:
a = int (input())
if a%7==0 and a%10==2:
s+=a
print (s)
Пример 9
Напишите программу, которая в последовательности натуральных чисел определяет количество чисел, кратных 4. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, кратное 4. Количество чисел не превышает 1000. Введённые числа не превышают 30 000. Программа должна вывести одно число — количество чисел, кратных 4.
print ('Введите количество чисел последовательности')
n = int (input())
k = 0
for n in range (1,n+1):
print ('Введите число')
a = int (input())
if a%4==0 :
k=k + 1 # k+=1
print (k)
Пример 10
Напишите программу, которая в последовательности натуральных чисел определяет количество чисел, которые при делении на 221 дают в остатке 5. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, которое при делении на 221 дает в остатке 5. Количество чисел не превышает 1000. Введённые числа не превышают 30 000. Программа должна вывести одно число — количество чисел, кратных 4.
print('Введите количество чисел последовательности')
n=int(input())
k=0
for n in range (1,n+1):
a=int(input())
if a%221==5:
k+=1
print(k)
Пример 11
Напишите программу, которая в последовательности натуральных чисел определяет количество чисел, являющихся делителями числа 2020. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, являющееся делителем числа 2020, но не совпадающее с ним самим. Количество чисел не превышает 1000. Введённые числа не превышают 30 000. Программа должна вывести одно число — количество чисел, являющихся делителем числа 2020, но не совпадающее с ним самим.
print('Введите количество чисел последовательности')
n=int(input())
k=0
for n in range (1,n+1):
a=int(input())
if 2020%a==0 and a!=2020:
k+=1
print(k)
Пример 12
Напишите программу для решения следующей задачи. Камера наблюдения регистрирует в автоматическом режиме скорость проезжающих мимо неё автомобилей, округляя значения скорости до целых чисел. Необходимо определить среднюю зарегистрированную скорость всех автомобилей. Если не менее двух автомобилей двигались со скоростью не больше 40 км/ч, выведите «YES», иначе выведите «NO».
Программа получает на вход число проехавших автомобилей N (1 ≤ N ≤ 30), затем указываются их скорости. Значение скорости не может быть меньше 1 и больше 300.Программа должна сначала вывести среднюю скорость, с точностью до одного знака после запятой, затем «YES» или «NO».
=2: print ('YES') else: print ('NO')" width="640"
print ('Введите количество автомобилей')
n = int (input())
s=0
k=0
for n in range (1,n+1):
print ('Введите скорость автомобиля')
v = int (input())
s=s+v
if v
k+=1
print (s/n)
if k=2:
print ('YES')
else: print ('NO')
Пример 13
Напишите программу для решения следующей задачи. Камера наблюдения регистрирует в автоматическом режиме скорость проезжающих мимо неё автомобилей, округляя значения скорости до целых чисел. Необходимо определить:
1) разность максимальной и минимальной скоростей автомобилей;
2) количество автомобилей, скорость которых не превышала 30 км/ч.
Программа получает на вход число проехавших автомобилей N (1 ≤ N ≤ 30), затем указываются их скорости. Значение скорости не может быть меньше 1 и больше 300. Программа должна сначала вывести разность максимальной и минимальной скоростей автомобилей, затем количество автомобилей, скорость которых не превышала 30 км/ч.
max: max = v if v k+=1 print (max-min) print (k)" width="640"
print ('Введите количество автомобилей')
n = int (input())
max=0
min=301
k=0
for n in range (1,n+1):
print ('Введите скорость автомобиля')
v = int (input())
if v
if vmax: max = v
if v
k+=1
print (max-min)
print (k)
Используемые источники:
https://fipi.ru/
https://inf-oge.sdamgia.ru/
ОГЭ. Информатика и ИКТ: типовые экзаменационные варианты: 20 вариантов/С. С. Крылов, Т. Е. Чуркина. – Москва: Издательство «Национальное образование», 2022