Меню
Разработки
Разработки  /  Информатика  /  Презентации  /  Прочее  /  Подготовка к ЕГЭ и ОГЭ (PascalABC.NET vs Python)

Подготовка к ЕГЭ и ОГЭ (PascalABC.NET vs Python)

Данная разработка представляет собой материал для подготовки учащихся к ОГЭ и ЕГЭ по информатике. Рассматривается реализация, а также сравнительная характеристика способов решений некоторых заданий на двух языках программирования PascalABC.NET и Python.
28.04.2024

Содержимое разработки

«Подготовка к ОГЭ и ЕГЭ или  PascalABC.NET  vs  Python  » Коваленко Ольга Владимировна Учитель информатики МБОУ «СШ №1» г.Норильск

«Подготовка к ОГЭ и ЕГЭ или PascalABC.NET vs Python »

Коваленко Ольга Владимировна

Учитель информатики

МБОУ «СШ №1» г.Норильск

Задания ОГЭ  позиционные системы счисления ОГЭ_Задание №10_Статград_Вариант ИН2190203 Среди приведённых ниже трёх чисел, записанных в десятичной системе счисления, найдите число, в двоичной записи которого наименьшее количество нулей. В ответе запишите количество нулей в двоичной записи этого числа. 46, 48, 55 PascalABC.NET ## Python print (min(bin(46).count('0'),bin(48) uses school; print (min(bin(46).CountOf('0'), bin(48).CountOf('0'), .count('0'),bin(55).count('0')))  bin(55).CountOf('0')));  Ответ: 1 (верно)  Ответ: 2 (неверно) ?

Задания ОГЭ позиционные системы счисления

ОГЭ_Задание №10_Статград_Вариант ИН2190203

Среди приведённых ниже трёх чисел, записанных в десятичной системе счисления, найдите число, в двоичной записи которого наименьшее количество нулей. В ответе запишите количество нулей в двоичной записи этого числа. 46, 48, 55

PascalABC.NET

##

Python

print (min(bin(46).count('0'),bin(48)

uses school;

print (min(bin(46).CountOf('0'), bin(48).CountOf('0'),

.count('0'),bin(55).count('0')))

bin(55).CountOf('0')));

Ответ: 1 (верно)

Ответ: 2 (неверно)

?

Задания ОГЭ  позиционные системы счисления ОГЭ_ Задание №10_ Статград_Вариант ИН2190203 Среди приведённых ниже трёх чисел, записанных в десятичной системе счисления, найдите число, в двоичной записи которого наименьшее количество нулей. В ответе запишите количество нулей в двоичной записи этого числа. 46, 48, 55 PascalABC.NET ## # Python uses school; Вариант 1. min(bin(46).CountOf('0'), bin(48).CountOf('0'), print (min(bin(46).count('0'),bin(48) bin(55).CountOf('0')) .pr ; .count('0'),bin(55).count('0')) -1 )  (Вариант с использованием модулей SF (короткие функции) ### и модуля Uses School) Вариант 2. print(min(bin(46)[2:].count('0'), bin(48)[2:].count('0'), bin(55)[2:].count('0'))) Ответ: 1  Ответ: 1 !!! Строка, полученная при переводе из 10СС в 2 СС имеет префикс «0B». Поэтому при подсчете количества «0» получается число с учетом префикса! (на один «0» больше)

Задания ОГЭ позиционные системы счисления

ОГЭ_ Задание №10_ Статград_Вариант ИН2190203

Среди приведённых ниже трёх чисел, записанных в десятичной системе счисления, найдите число, в двоичной записи которого наименьшее количество нулей. В ответе запишите количество нулей в двоичной записи этого числа. 46, 48, 55

PascalABC.NET

## #

Python

uses school;

Вариант 1.

min(bin(46).CountOf('0'), bin(48).CountOf('0'),

print (min(bin(46).count('0'),bin(48)

bin(55).CountOf('0')) .pr ;

.count('0'),bin(55).count('0')) -1 )

(Вариант с использованием модулей SF (короткие функции) ### и модуля Uses School)

Вариант 2.

print(min(bin(46)[2:].count('0'), bin(48)[2:].count('0'), bin(55)[2:].count('0')))

Ответ: 1

Ответ: 1

!!! Строка, полученная при переводе из 10СС в 2 СС имеет префикс «0B».

Поэтому при подсчете количества «0» получается число с учетом префикса!

(на один «0» больше)

Задания ОГЭ  позиционные системы счисления  ОГЭ_Задание №10_Статград_Вариант ИН2190103 Переведите двоичное число 1001111 в десятичную систему счисления. . PascalABC.NET ## Python print(int('1001111',2)) uses school; print(Dec('1001111',2));   Ответ: 79  Ответ: 79

Задания ОГЭ позиционные системы счисления

ОГЭ_Задание №10_Статград_Вариант ИН2190103

Переведите двоичное число 1001111 в десятичную систему счисления.

.

PascalABC.NET

##

Python

print(int('1001111',2))

uses school;

print(Dec('1001111',2));

Ответ: 79

Ответ: 79

Задания ЕГЭ  логика ЕГЭ_Задание №2_сайт К. Полякова_№ 199_Е. Джобс  Логическая функция F задаётся выражением ( x   ( y    ¬ z )   w )  ( x → ¬ y    z ). На рисунке приведён частично заполненный фрагмент таблицы истинности функции F , содержащий неповторяющиеся строки. Определите, какому столбцу таблицы истинности функции F соответствует каждая из переменных x , y , z , w . В ответе напишите буквы x , y , z, w в том порядке, в котором идут соответствующие им столбцы. Буквы в ответе пишите подряд, никаких разделителей между буквами ставить не нужно. ?   ? 1 1 ? 1 ?   1   F   1 1   1 1   1

Задания ЕГЭ логика

ЕГЭ_Задание №2_сайт К. Полякова_№ 199_Е. Джобс

Логическая функция F задаётся выражением

( x  ( y  ¬ z )  w )  ( x → ¬ yz ).

На рисунке приведён частично заполненный фрагмент таблицы истинности функции F , содержащий неповторяющиеся строки. Определите, какому столбцу таблицы истинности функции F соответствует каждая из переменных x , y , z , w .

В ответе напишите буквы x , y , z, w в том порядке, в котором идут соответствующие им столбцы. Буквы в ответе пишите подряд, никаких разделителей между буквами ставить не нужно.

?

 

?

1

1

?

1

?

 

1

 

F

 

1

1

 

1

1

 

1

Задания ЕГЭ  логика ЕГЭ_Задание №2_сайт К. Полякова_№ 199_Е. Джобс  ( x   ( y    ¬ z )   w )  ( x → ¬ y    z ). PascalABC.NET Python var x,y,w,z: boolean; begin print('x y w z')  for x in range(2):  for y in range(2):  for z in range(2):  for w in range(2):  if((x and (y or not z) and w) == (x Результат:  println ('x y w z');  for x:=false to true do x y w z 1 0 0 0  for y:=false to true do  for w:=false to true do 1 1 0 0 1 1 0 1  for z:=false to true do  if((x and (y or not z) and w) = (x  then println (ord(x),ord (y),ord(w),ord(z)); end. Результат: x y w z 1 0 0 0 1 1 0 0 1 1 0 1

Задания ЕГЭ логика

ЕГЭ_Задание №2_сайт К. Полякова_№ 199_Е. Джобс

( x  ( y  ¬ z )  w )  ( x → ¬ yz ).

PascalABC.NET

Python

var x,y,w,z: boolean;

begin

print('x y w z') for x in range(2): for y in range(2): for z in range(2): for w in range(2): if((x and (y or not z) and w) == (x

Результат:

println ('x y w z');

for x:=false to true do

x y w z

1 0 0 0

for y:=false to true do

for w:=false to true do

1 1 0 0

1 1 0 1

for z:=false to true do

if((x and (y or not z) and w) = (x

then println (ord(x),ord (y),ord(w),ord(z));

end.

Результат:

x y w z

1 0 0 0

1 1 0 0

1 1 0 1

(x and (y or not z) and w)=(xnot y and z)); print (' x y w z F'); TrueTablePrint (tt,1); Результат: x y w z F a b c d F --------- 1 0 0 0 1 1 1 0 0 1 1 1 0 1 1 " width="640"

Задания ЕГЭ логика

ЕГЭ_Задание №2_сайт К. Полякова_№ 199_Е. Джобс

( x  ( y  ¬ z )  w )  ( x → ¬ yz ).

PascalABC.NET (используя модуль Uses School)

###

uses school;

var tt:=TrueTable((x,y,w,z)-(x and (y or not z) and w)=(xnot y and z));

print (' x y w z F');

TrueTablePrint (tt,1);

Результат:

x y w z F a b c d F

---------

1 0 0 0 1

1 1 0 0 1

1 1 0 1 1

Задания ЕГЭ ЕГЭ_Задание №12 Исполнитель Редактор получает на вход строку цифр и преобразовывает её. Редактор может выполнять две команды, в обеих командах v и w обозначают цепочки цифр. заменить (v, w) нашлось (v) Дана программа для исполнителя Редактор: НАЧАЛО  ПОКА нашлось (333) ИЛИ нашлось (555)  ЕСЛИ нашлось (555) ТО заменить (555, 3)   ИНАЧЕ заменить (333, 5)  КОНЕЦ ЕСЛИ  КОНЕЦ ПОКА КОНЕЦ Какая строка получится в результате применения приведённой выше программы к строке, состоящей из 62 идущих подряд цифр 5? В ответе запишите полученную строку.  PascalABC.NET ## Python s =

Задания ЕГЭ

ЕГЭ_Задание №12

Исполнитель Редактор получает на вход строку цифр и преобразовывает её. Редактор может выполнять две команды, в обеих командах v и w обозначают цепочки цифр. заменить (v, w) нашлось (v) Дана программа для исполнителя Редактор:

НАЧАЛО

ПОКА нашлось (333) ИЛИ нашлось (555)

ЕСЛИ нашлось (555) ТО заменить (555, 3)

ИНАЧЕ заменить (333, 5)

КОНЕЦ ЕСЛИ

КОНЕЦ ПОКА

КОНЕЦ

Какая строка получится в результате применения приведённой выше программы к строке, состоящей из 62 идущих подряд цифр 5? В ответе запишите полученную строку.

PascalABC.NET

##

Python

s = "5"*62 while "333" in s or "555" in s: if "555" in s: s = s.replace("555", "3", 1) else: s = s.replace("333", "5", 1) print(s)

var s := '5'*62;

while s.contains('333') or s.contains('555') do

begin

if s.contains('555') then

s:=s.replace('555', '3', 1)

Результат: 5355

else

s:=s.replace('333', '5', 1);

end ;

print(s)

Результат: 5355

Задания ЕГЭ  позиционные системы счисления ЕГЭ_сайт К. Полякова_Задание №14_задача 254 (Е. Джобс) Значение арифметического выражения 43∙7 103 – 21∙7 57 + 98 записали в системе счисления с основанием 7. Найдите сумму цифр получившегося числа и запишите её в ответе в десятичной системе счисления. PascalABC.NET ### Python def sd7(n): uses school; var x:=(43*7BI**103-21*7BI**57+98).ToBase(7);  s=0 print(x.CountOf('1')+2*x.CountOf('2')+3*x.CountOf('3')+4*x.CountOf('4')+5*x.CountOf('5')+6*x.CountOf('6'));  while n!=0: Ответ: 276  s+=n%7  n=n//7  return s print(sd7(43*7**103-21*7**57+98))  Ответ: 276

Задания ЕГЭ позиционные системы счисления

ЕГЭ_сайт К. Полякова_Задание №14_задача 254 (Е. Джобс)

Значение арифметического выражения 43∙7 103 – 21∙7 57 + 98 записали в системе счисления с основанием 7. Найдите сумму цифр получившегося числа и запишите её в ответе в десятичной системе счисления.

PascalABC.NET

###

Python

def sd7(n):

uses school;

var x:=(43*7BI**103-21*7BI**57+98).ToBase(7);

s=0

print(x.CountOf('1')+2*x.CountOf('2')+3*x.CountOf('3')+4*x.CountOf('4')+5*x.CountOf('5')+6*x.CountOf('6'));

while n!=0:

Ответ: 276

s+=n%7

n=n//7

return s

print(sd7(43*7**103-21*7**57+98))

Ответ: 276

Divisors(n).Count(x - x.IsEven) = 3) ) // оставь те, у которых 3 четных делителя .Print; Ответ: 101075762; 101417282; 101588258; 101645282 " width="640"

Задания ЕГЭ делители

ЕГЭ_Задание 25_Решу ЕГЭ № 33527

Найдите все натуральные числа, принадлежащие отрезку [101000000;102000000], у которых ровно три различных чётных делителя. В ответе перечислите найденные числа в порядке возрастания.

PascalABC.NET

(используя модуль school и лямбда-выражения)

##

uses school;

(101000000..102000000) // возврати все числа из диапазона

.Where(n - Divisors(n).Count(x - x.IsEven) = 3) ) // оставь те, у которых 3 четных делителя

.Print;

Ответ: 101075762; 101417282; 101588258; 101645282

trunc(sqrt(x)) = sqrt(x)) // оставь те, корень из которых – целое число .Select(x - divisors(x)) //получи из отобранных x все его делители .Where(L -L.count = 5) // оставь те, у которых 5 делителей, включая «1» и само число .foreach(L - print(L[3])); для тех, что остались, выведи 3 делитель (корень из числа) Ответ: 1225043; 1295029; 1442897 " width="640"

Задания ЕГЭ делители

ЕГЭ_Задание 25_Статград_Вариант ИН2010103

Назовём  нетривиальным делителем  натурального числа его делитель, не равный единице и самому числу. Например, у числа 6 есть два нетривиальных делителя: 2 и 3. Найдите все натуральные числа, принадлежащие отрезку [123456789; 223456789] и имеющие ровно три нетривиальных делителя. Для каждого найденного числа запишите в ответе его наибольший нетривиальный делитель. Ответы расположите в порядке возрастания.

PascalABC.NET

(используя модуль school и лямбда-выражения)

##

uses school;

(123489567..223456789) // возврати все числа из диапазона

.Where(x - trunc(sqrt(x)) = sqrt(x)) // оставь те, корень из которых – целое число

.Select(x - divisors(x)) //получи из отобранных x все его делители

.Where(L -L.count = 5) // оставь те, у которых 5 делителей, включая «1» и само число

.foreach(L - print(L[3])); для тех, что остались, выведи 3 делитель (корень из числа)

Ответ: 1225043; 1295029; 1442897

Рекомендуемые ресурсы: Александр Осипов. Учебник «PascalABC.NET: выбор школьника». Решу ОГЭ, Решу ЕГЭ https:// inf-ege.sdamgia.ru/ , https:// inf-oge.sdamgia.ru/ Демонстрационная версия станции КЕГЭ https://kompege.ru/ Каналы YouTube и сообщества VK:  Алексей Богданов (Alex Danov) (+ курс по LINQ) https://www.youtube.com/channel/UCxAZM_7sunA166ycxTj0Etw  Семен Овчинников (Дневник эксперта ЕГЭ) https://www.youtube.com/c/% D0%94%D0%9D%D0%95%D0%92%D0%9D%D0%98%D0%9A%D0%AD%D0%9A%D0%A1%D0%9F%D0%95%D0%A0%D0%A2%D0%90%D0%95%D0%93%D0%AD/featured Информатик БУ https://www.youtube.com/c/% D0%98%D0%BD%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%82%D0%B8%D0%BA%D0%91%D0%A3/about Евгений Джобс https://www.youtube.com/c/EvgenijJobs/about

Рекомендуемые ресурсы:

  • Александр Осипов. Учебник «PascalABC.NET: выбор школьника».
  • Решу ОГЭ, Решу ЕГЭ https:// inf-ege.sdamgia.ru/ , https:// inf-oge.sdamgia.ru/
  • Демонстрационная версия станции КЕГЭ https://kompege.ru/
  • Каналы YouTube и сообщества VK:
  • Алексей Богданов (Alex Danov) (+ курс по LINQ)

https://www.youtube.com/channel/UCxAZM_7sunA166ycxTj0Etw

  • Семен Овчинников (Дневник эксперта ЕГЭ)

https://www.youtube.com/c/% D0%94%D0%9D%D0%95%D0%92%D0%9D%D0%98%D0%9A%D0%AD%D0%9A%D0%A1%D0%9F%D0%95%D0%A0%D0%A2%D0%90%D0%95%D0%93%D0%AD/featured

  • Информатик БУ

https://www.youtube.com/c/% D0%98%D0%BD%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%82%D0%B8%D0%BA%D0%91%D0%A3/about

  • Евгений Джобс

https://www.youtube.com/c/EvgenijJobs/about

-75%
Курсы повышения квалификации

Организация и сопровождение олимпиадной деятельности учащихся

Продолжительность 72 часа
Документ: Удостоверение о повышении квалификации
4000 руб.
1000 руб.
Подробнее
Скачать разработку
Сохранить у себя:
Подготовка к ЕГЭ и ОГЭ (PascalABC.NET vs Python) (291.36 KB)

Комментарии 0

Чтобы добавить комментарий зарегистрируйтесь или на сайт