Программа разработчиков егэ

Доброго времени суток каждому жителю Хабрвилля! Давненько я не писал статей! Пора это исправить!

В сегодняшней статье поговорим о насущной для многих выпускников школ теме — ЕГЭ. Да-да-да! Я знаю, что Хабр — это сообщество разработчиков, а не начинающих айтишников, но сейчас ребятам как никогда нужна поддержка именно сообщества. Ребят опять посадили на дистант. Пока не ясно на какой период, но уже сейчас можно сказать, что ЕГЭ по информатике будет на компьютерах и его можно зарешать при помощи языка Python.

Вот я и подумал, чтобы не получилось как в песне, стоит этим заняться. Я расскажу про все задачи первой части и их решения на примере демо варианта ЕГЭ за октябрь.

Всех желающих — приглашаю ниже!

Быстрый перевод из системы в систему

В Python есть интересные функции bin(), oct() и hex(). Работают данные функции очень просто:

bin(156) #Выводит '0b10011100'
oct(156) #Выводит '0o234'
hex(156) #Выводит '0x9c'

Вывод в интерпретационном режиме

Вывод в интерпретационном режиме

Как вы видите, выводится строка, где 0b — означает, что число далее в двоичной системе счисления, 0o — в восьмеричной, а 0x — в шестнадцатеричной. Но это стандартные системы, а есть и необычные…

Давайте посмотрим и на них:

n = int(input()) #Вводим целое число
 
b = '' #Формируем пустую строку
 
while n > 0: #Пока число не ноль
    b = str(n % 2) + b #Остатот от деления нужной системы (в нашем сл записываем слева
    n = n // 2 #Целочисленное деление
 
print(b) #Вывод

Данная программа будет работать при переводе из десятичной системы счисления в любую до 9, так как у нас нет букв. Давайте добавим буквы:

n = int(input()) #Вводим целое число

b = '' #Формируем пустую строку

while n > 0: #Пока число не ноль
	if (n % 21) > 9: #Если остаток от деления больше 9...
		if n % 21 == 10: #... и равен 10...
			b = 'A' + b #... запишем слева A
		elif n % 21 == 11:#... и равен 11...
			b = 'B' + b#... запишем слева B

'''

И так далее, пока не дойдём до системы счисления -1 (я переводил в 21-ную систему и шёл до 20)

'''

		elif n % 21 == 11:
			b = 'B' + b
		elif n % 21 == 12:
			b = 'C' + b
		elif n % 21 == 13:
			b = 'D' + b
		elif n % 21 == 14:
			b = 'E' + b
		elif n % 21 == 15:
			b = 'F' + b
		elif n % 21 == 16:
			b = 'G' + b
		elif n % 21 == 17:
			b = 'H' + b
		elif n % 21 == 18:
			b = 'I' + b
		elif n % 21 == 19:
			b = 'J' + b
		elif n % 21 == 20:
			b = 'K' + b
	else: #Иначе (остаток меньше 10)
		b = str(n % 21) + b #Остатот от деления записываем слева
	n = n // 21 #Целочисленное деление

print(b) #Вывод

Способ объёмен, но понятен. Теперь давайте используем тот же функцию перевода из любой системы счисления в любую:

def convert_base(num, to_base=10, from_base=10):
    # Перевод в десятичную систему
    if isinstance(num, str): # Если число - строка, то ...
        n = int(num, from_base) # ... переводим его в нужную систему счисления
    else: # Если же ввели число, то ...
        n = int(num) # ... просто воспринять его как число
    # Перевод десятичной в 'to_base' систему
    alphabet = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ" # Берём алфавит
    if n < to_base: # Если число меньше системы счисления в которую переводить...
        return alphabet[n] # ... вернуть значения номера в алфавите (остаток от деления)
    else: # Иначе...
        return convert_base(n // to_base, to_base) + alphabet[n % to_base] # ... рекурсивно обратиться к функии нахождения остатка

Вызвав функцию вывода print(convert_base(156, 16, 10)) мы переведём 156 из 10 в 16 систему счисления, а введя print(convert_base('23', 21, 4)) переведёт 23 из 4-ичной в 21-ичную систему (ответ: B).

Задача 2

Все задания беру из первого октябрьского варианта (он же вариант № 9325894) с сайта Решу.ЕГЭ.

Решение данной задачи совсем простое: банальный перебор.

print('y', 'x', 'z', 'F') #Напечатаем заголовки таблицы
for y in range(2): #Берём все переменные и меняем их в циклах '0' и '1'
	for x in range(2):
		for z in range(2):
			for w in range(2):
				F = ((not x or y) == (not z or w)) or (x and w) #Записываем функцию
				print(x, y, z, F) #Выводим результат

Результат:

Нам вывелась вся таблица истинности (1 = True, 0 = False). Но это не очень удобно. Обратите внимание, что в задании, функция равно 0, так и давайте подправим код:

print('y', 'x', 'z', 'F') #Напечатаем заголовки таблицы
for y in range(2): #Берём все переменные и меняем их в циклах '0' и '1'
	for x in range(2):
		for z in range(2):
			for w in range(2):
				F = ((not x or y) == (not z or w)) or (x and w) #Записываем функцию
				if not F:
					print(x, y, z, F) #Выводим результат

Результат:

Далее — простой анализ.

Задача 5

Данная задача легко решается простой последовательностью действий в интерпретационном режиме:

Задача 6

Перепечатали и получили ответ:

s = 0
k = 1
while s < 66:
    k += 3
    s += k
print(k)

Задача 12

В очередной раз, просто заменим слова на код:

a = '9' * 1000

while '999' in a or '888' in a:
	if '888' in a:
		a = a.replace('888', '9', 1)
	else:
		a = a.replace('999', '8', 1)
print(a)

Задача 14

Компьютер железный, он всё посчитает:

a = 4 ** 2020 + 2 ** 2017 - 15
k = 0

while a > 0:
    if a % 2 == 1:
    	k += 1
    a = a // 2

print(k)

Задача 16

Опять же, просто дублируем программу в python:

def F(n):
    if n > 0:
        F(n // 4)
        print(n)
        F (n - 1)
print(F(5))

Результат:

Задача 17

Задача с файлом. Самое сложное — достать данные из файла. Но где наша не пропадала?!

with open("17.txt", "r") as f: #Открыли файл 17.txt для чтения
    text = f.read() #В переменную text запихнули строку целиком
a = text.split("n") #Разбили строку энтерами (n - знак перехода на новую строку)

k = 0 #Стандартно обнуляем количество
m = -20001 #Так как у нас сумма 2-ух чисел и минимальное равно -10000, то минимум по условию равен -20000, поэтому...

for i in range(len(a)): #Обходим все элементы массива
	if (int(a[i - 1]) % 3 == 0) or (int(a[i]) % 3 == 0): #Условное условие
		k += 1 #Счётчик
		if int(a[i - 1]) + int(a[i]) > m: #Нахождение минимума
			m = int(a[i - 1]) + int(a[i])

print(k, m) #Вывод

Немного пояснений. Функция with() открывает файл считывает данные при помощи функции read() и закрывает файл. В остальном — задача стандартна.

Задача 19, 20 и 21

Все три задачи — задачи на рекурсию. Задачи идентичны, а вопросы разные. Итак, первая задача:

Пишем рекурсивную функцию и цикл перебора S:

def f(x, y, p): #Рекурсивная функция
	if x + y >= 69 or p > 3: #Условия завершения игры
		return p == 3
	return f(x + 1, y, p + 1) or f(x, y + 1, p + 1) or
		   f(x * 2, y, p + 1) or f(x, y * 3, p + 1) #Варианты действий

for s in range (1, 58 + 1): #Перебор S
	if f(10, s, 1): #Начали с 10 камней
		print(s)
		break

Немного пояснений. В рекурсивной функции существует 3 переменные x — число камней в первой куче, y — число камней во второй куче, p — позиция. Позиция рассчитывается по таблице:

Игра

Петя

Ваня

Петя

Ваня

Петя

p

1

2

3

4

5

6

Далее — всё по условию задачи.

Вторая задача на теорию игр:

Все отличия в рамке. Ну и код, соответственно, не сильно отличается:

def f(x, y, p): #Рекурсивная функция
	if x + y >= 69 or p > 4: #Условия завершения игры
		return p == 4
	if p % 2 != 0:
		return f(x + 1, y, p + 1) or f(x, y + 1, p + 1) or
			   f(x * 2, y, p + 1) or f(x, y * 3, p + 1) #Варианты действий
	else:
		return f(x + 1, y, p + 1) and f(x, y + 1, p + 1) and
			   f(x * 2, y, p + 1) and f(x, y * 3, p + 1) #Варианты действий


for s in range (1, 58 + 1): #Перебор S
	if f(10, s, 1): #Начали с 10 камней
		print(s)

Отличия:

  1. Выиграл Петя, соответственно, позиция 4

  2. Так как Петя не может выиграть за один ход — он выигрывает за 2 хода (and, а не or на нечётных позициях (играх Пети))

  3. Убрали break, так как нам нужны все S, а не единственный

Последняя вариация задачи:

Сразу код:

def f(x, y, p): #Рекурсивная функция
	if x + y >= 69 or p > 5: #Условия завершения игры
		return p == 3 or p == 5
	if p % 2 == 0:
		return f(x + 1, y, p + 1) or f(x, y + 1, p + 1) or
			   f(x * 2, y, p + 1) or f(x, y * 3, p + 1) #Варианты действий
	else:
		return f(x + 1, y, p + 1) and f(x, y + 1, p + 1) and
			   f(x * 2, y, p + 1) and f(x, y * 3, p + 1) #Варианты действий


for s in range (1, 58 + 1): #Перебор S
	if f(10, s, 1): #Начали с 10 камней
		print(s)

Ну и всего лишь 2 отличия:

  1. Позиции 3 или 5, а не 4, так как выиграл Ваня

  2. На второй ход выигрывает Ваня и нам нужно or и and поменять. Я заменил только кратность 2.

Задача 22

Ctrl+C, Ctrl+V — наше всё! :)

for i in range(1, 100000):
	x = i
	L = 0
	M = 0
	while x > 0 :
		L = L+1
		if (x % 2) != 0:
			M = M + x % 8
		x = x // 8
	if L == 3 and M == 6:
		print(i)

Задача 23

Итак, код:

def f(x, y):
	if x > y: #Перегнали цель
		return 0
	if x == y:  #Догнали цель
		return 1
	if x < y: #Догоняем цель тремя методами
		return f(x + 1, y) + f(x + 2, y) + f(x * 2, y)

print(f(3, 10) * f(10, 12)) #Прошло через 10, значит догнали 10 и от де догоняем 12

Так как в условии задачи мы увеличиваем число, но будем числа «догонять». Три метода описаны, ну а пройти через 10 — значит дойти до него и идти от него.

Собственно, это и есть вся первая часть ЕГЭ по информатике решённая на Python.

Ссылка на репозиторий со всеми программами:

Надеюсь, что смог помочь в своей статье выпускникам и готовящимся ;)

Остался один вопрос — нужен ли разбор второй части ЕГЭ по информатике на Python? Оставлю этот вопрос на ваше голосование.

Всем удачи!

Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.

Делаю разбор второй части?

Проголосовали 106 пользователей.

Воздержались 15 пользователей.

Руководитель комиссии по разработке контрольных измерительных материалов ЕГЭ по математике Иван Ященко рассказал о нюансах выполнения экзаменационной работы в 2023 году в рамках онлайн-консультаций «На все 100» от Рособрнадзора. Этот предмет обязателен для получения аттестата.

Содержательных изменений в ЕГЭ по базовой и профильной математике в 2023 году не будет. Поменяется только структура работы, задания будут сгруппированы по тематическим блокам.

«Самый неэффективный способ подготовки — это прорешивать много вариантов. Подготовка должна быть тематической. Регулярно тренируйтесь на решении несложных задач, это придаст уверенность в своих силах и поможет отработать технику», — посоветовал Иван Ященко.

Эксперт заверил, что все методы, необходимые для решения заданий ЕГЭ, есть в учебниках математики базового и углубленного уровней. «Не надо пытаться изучать какие-то дополнительные методы, они будут скорее вредны, чем полезны, вы в них запутаетесь», — отметил Иван Ященко.

Разработчик также ответил на вопрос о 100 баллах.

«Чтобы сдать на балл, близкий к 100, необходимо хорошо учить математику на протяжении нескольких лет, — говорит Иван Ященко. — В математике имеется одна важная особенность. Максимальный балл — 100 баллов — вы можете получить, не набрав все первичные баллы. Это традиция во всех экзаменах по математике. Еще в советские времена пятерка ставилась за 9 из 10 решенных заданий. Для нас важно, чтобы вы продемонстрировали умение решать большой спектр задач. Даже если вы не решили какую-то одну задачу или допустили ошибку, все равно можете получить 100 баллов».

Эксперт рассказал, что наиболее часто встречающаяся ошибка у участников ЕГЭ по математике — неправильно прочитанное условие задачи. Также часты арифметические ошибки, особенно если вести подсчеты в уме, поэтому лучше сделать это на бумаге.

Видеозапись эфира доступна на страницах Рособрнадзора во «ВКонтакте».

В основной период ЕГЭ по математике сдадут 1 июня. Продолжительность экзамена профильного уровня составит 3 часа 55 минут, базового ‎ — 3 часа. С собой можно будет взять линейку.

Для поступления в вуз потребуется минимум 39 баллов.

Бесплатные онлайн-консультации от разработчиков для участников ЕГЭ-2023 продлятся до 11 ноября. Ранее выпускников консультировали по физике, русскому языку и итоговому сочинению.

Фото: Вслух.ру

Неудобно на сайте? Читайте самое интересное в Telegram и самое полезное в 

Vk.

Введение

Актуальность работы

В настоящее время единый
государственный экзамен является в России единственной формой выпускных
экзаменов в средней общеобразовательной школе и одновременно вступительным
экзаменом в вуз.

Современная молодежь не расстается со
своими гаджетами, они всегда под рукой. Сейчас всех нас волнует сдача ЕГЭ.  Я
решила, что было бы очень полезно иметь в телефоне программу, позволяющую в
любую свободную минутку осуществлять подготовку к экзамену.

Речь идет о мобильном приложении на операционной системе Андроид.
Такое приложение даст ребятам возможность готовиться к экзамену не только дома,
но и в кафе, транспорте, в гостях, на природе и обходиться при этом без книг и
учебных пособий.

Тема моей работы: «Разработка приложения по подготовке к ЕГЭ для Андроид».

Объект исследования

Предмет исследования

Цель моей работы – разработать приложение по подготовке к ЕГЭ по информатике для Андроид.

При этом мной решались следующие задачи:

*               
Изучить различные источники
информации по данной теме;

*               
Разработать приложение по
подготовке к ЕГЭ по информатике для
Андроид;

*               
Выяснить будут ли
востребованными такого рода приложения у обучающихся 10-11 классов.

*               
Проанализировать результаты исследования,
сделать выводы;

Выполняя работу, я использовала следующие
методы:

*               
Сбор и анализ информации;

*               
Анкетирование;

*               
Наблюдение;

*               
Сравнение;

*               
Обобщение;

*               
Обработка результатов.

Глава 1.

1.1 Изучение источников
информации

В школе мы изучаем язык
программирования Паскаль, меня заинтересовал вопрос — а можно ли на Паскале
создать приложение для телефона?

Я уже использовала для разработки
приложений свободно распространяемую среду программирования
Lazarus.
Задав в Интернете запрос «
Lazarus
и Андроид», я выяснила, что действительно собрать приложение под Андроид
можно. Инструкция о том, как это можно сделать, содержится в статье 
«LAZARUS: сборка приложения под андройд»  Логинова Д. С. Но из этой
же статьи я выяснила, что есть мощное средство разработки Embarcadero  Delphi,
которое является платным. Я попыталась выяснить, нет ли бесплатных версий этого
продукта. Для этого открыла официальный сайт https://www.embarcadero.com.

Есть бесплатная версия Starter
Edition, но как оказалось, в этой версии можно собрать приложение только под
Windows 32.

Полная версия студии доступна
бесплатно после регистрации на пробный 30-ти дневный период.

Для ознакомления со средой и
написания небольшого приложения этого должно быть достаточно. Я
зарегистрировалась, получила и установила пробную версию.

Для изучения возможностей и порядка
работы ознакомилась со статьями, книгами и видеоуроками:

Всеволод Леонов — Обучение мобильной
разработке на Delphi / Embarcadero, 2015

http://www.webdelphi.ru/android/

http://delphiexpert.ru/delphi-xe5-android.html

http://fire-monkey.ru

1.2 Разработка приложения

После
запуска среды программирования выберем пункт «Создать приложение под
различные устройства».

Появляется
диалоговое окно с выбором типа создаваемого приложения.

Почитав
про существующие типы, для своего приложения я выбрала шаблон
MasterDetail.
Разобраться какие компоненты в нем для чего мне помогли статьи:

http://delphi2010.ru/delphi-xe7-multiview/

http://www.cyberforum.ru/delphi-firemonkey/thread1569067.html

http://www.cyberforum.ru/delphi-firemonkey/thread1547040.html

Первоначально заготовка проекта выглядит
так:

Выберу платформу для сборки пока Windows.

 и попробую запустить. Приложение выглядит
так:

Меню
и панель с деталями заполнены случайными данными. Уберу ненужные мне
компоненты. PrototypeBindSource1 — отвечает за заполнение случайными данными,
Memo1 со случайным текстом, imgContact  с «фото» и метки с именем и
должностью. Кнопки вверх-вниз мне тоже не понадобятся.

Оставлю
только MultiView1 для бокового меню и DetailToolbar с кнопкой отображения меню
и меткой.

При запуске ошибок не возникло, выглядит
все вот так:

Теперь,
изменю, текст на метках и заполню пункты меню в процедуре создания формы.

procedure
TMasterDetailForm.FormCreate(Sender: TObject);

begin

listview1.Items.Add.Text:=’—ТЕОРИЯ—‘;

 listview1.Items.Add.Text:=’ПРИМЕРЫ
РЕШЕНИЯ‘;

 listview1.Items.Add.Text:=’ГЕНЕРАТОР
ЗАДАНИЙ‘;

 listview1.Items.Add.Text:=’КАЛЬКУЛЯТОР
СС‘;

 listview1.Items.Add.Text:=’ОБ
АВТОРЕ‘;

end;

Проверим,
как это будет выглядеть на Андроиде. Можно запустить эмулятор, но я решила
подсоединить телефон или планшет. На телефоне в настройках необходимо разрешить
отладку по
USB.

Screenshot_2017-01-17-18-57-05

После
этого установить специальный драйвер, для этого я использовала утилиту
Adb Driver Installer.

Теперь
в устройствах Андроид в Делфи появился телефон.

Попробуем запустить приложение на
телефоне. Всё работает.

Screenshot_2017-01-20-02-27-05

Добавлю
на форму компонент ImageControl1, выравнивание Client, рисунок из
подготовленного файла.

Настрою отображение пунктов меню.

При запуске получаем:

Screenshot_2017-01-15-22-39-21

Теперь
необходимо создать еще несколько форм — для отображения теории, примеров
решения, генератора заданий и калькулятора. Воспользуюсь командой
«Сохранить как…». Получу пять пока одинаковых форм с разными
именами. Для вызова нужной формы изменим процедуру щелчка по пункту меню. В
зависимости от номера пункта меню будем вызывать нужную форму или отображать
сообщение. Используем
конструкцию
выбора.

procedure
TMasterDetailForm.ListView1ItemClick(const Sender: TObject; const AItem: TListViewItem);

begin

 
MultiView1.HideMaster;

 
case  LISTVIEW1.Selected.Index of

 
0: master1form.show;

 
1:master2form.show;

 
2: master3form.show;

 
3: master4form.show;

 
4:showmessage (‘Приложение разработано учащейся 11-а класса МОУ СОШ №6 Киселёвой Людмилой’);

 
end;

end;

Для
форм с теорией и примерами решения задач внесла такие изменения:

1.
Изменила
пункты
меню:

procedure
TMaster1Form.FormCreate(Sender: TObject);

begin

listview1.Items.Add.Text:=’1.Системы
счисления‘;

 listview1.Items.Add.Text:=’5.Кодирование
информации’;

 listview1.Items.Add.Text:=’8.Анализ
программ’;

 listview1.Items.Add.Text:=’9.Кодирование
и передача’;

 listview1.Items.Add.Text:=’10.Перебор
слов и СС’;

 listview1.Items.Add.Text:=’11.Рекурсивные
алгоритмы’;

 listview1.Items.Add.Text:=’12.Сети.Адресация’;

 listview1.Items.Add.Text:=’13.Количество
информации’;

 listview1.Items.Add.Text:=’16.Кодирование
и СС’;

 listview1.Items.Add.Text:=’18.Логические
выражения’;

end;

2.
Компонент
ImageControl заменила на два
компонента
ImageViewer1 и ImageList1.
В компоненте
ImageViewer будет отображаться одно
из изображений, хранящихся в
ImageList.
ImageViewer
имеет полосы прокрутки и позволит оставлять неизменным разрешение изображений с
теорией.

При выборе пункта меню определяется
его номер
listview1.Selected.Index,
из списка изображений находится с таким же номером
imagelist1.Source.Items,
берется его изображение и отображается в
ImageViewer

imageviewer1.Bitmap:=imagelist1.Source.Items[listview1.Selected.Index].MultiResBitmap.Bitmaps[1];

На форме с заданиями убрала ImageViewer
и
ImageList.
Расположила несколько меток для вывода пояснений, вопросов и результатов, поле
для ввода ответа. Две командные кнопки. Кнопка «Сбросить счет»
обнуляет результаты, «Проверить» сравнивает введенный результат с
правильным и подсчитывает очки.

1.2.1 Создание базы данных для
приложения

При реализации данного пункта
разработки возник вопрос — как удобней было бы сохранять задания? Я решила
использовать для этих целей базу данных.

Выяснила, что в
Android существует встроенная поддержка базы данных SQLite. 

Саму базу буду создавать не
программно, использую свободно распространяемую SQLiteStudio. Создам базу, в
ней одну таблицу, в таблице три поля — номер вопроса, вопрос, правильный ответ.

Занесла
в базу по 10 вопросов по каждой теме. Базу поместила в папку с проектом.

Для
работы с базой данных на форме расположила два компонента FDConnection1 и
FDQuery1. Свойство  Connection у FDQuery1 поставила FDConnection1.

Настроила
FDConnection1 указав путь к базе данных и драйвер

Добавила
поля базы в FDQuery1

При
выборе пункта меню индекс выбранного пункта меню умножу на 10 и прибавлю
полученное генератором случайных чисел  число от 1 до 10:

 k:=
listview1.Selected.Index*10+   random(9)+1;

так
при выборе первого (индекс 0) пункта меню вопросы могут быть от 1 до 10,
второго — от 11 до 20 и т.д.

Выберу
из базы запись с соответствующим номером

s:= 
‘select * from vopros where nomer=’+inttostr(k);

и
отображу текст вопроса в метке:

   
fdquery1.SQL.text:=s;

   
fdquery1.Open;

   
label5.Text:=fdquery1.Fields[0].AsString;

При
нажатии на кнопку «Проверить»  введенный в поле результат
сравнивается с хранящимся в базе данных, если совпадает — сумма баллов 
s
увеличивается на 1,
n-количество
сгенерированных вопросов, оно считается при каждом нажатии на пункт меню.

if
edit1.Text=fdquery1.Fields[1].AsString then

 begin

s:=s+1;

label4.Text:=’Верно.
Сумма
баллов=’
+ inttostr(s)+ ‘
из ‘ +inttostr(n);

 end
else

label4.Text:=’Неверно.
Сумма
баллов=’
+ inttostr(s)+ ‘
из ‘ +inttostr(n);

Кнопка
«Сбросить результат» обнуляет сумму баллов и количество
сгенерированных вопросов, возвращает поля и метки к первоначальному виду.

n:=0;

s:=0;

label4.Text:=»;

label5.Text:=’Выбирайте
поочередно темы из меню, по ним будут генерироваться вопросы. Ответив на
вопрос, нажмите кнопку ПРОВЕРИТЬ. Если Вы желаете пройти тест еще раз – нажмите
на кнопку СБРОСИТЬ СЧЕТ’;

edit1.Text:=»;

1.2.2 Создание калькулятора
перевода чисел
из двоичной, восьмеричной,
шестнадцатеричной сс в десятичную и наоборот.

При выполнении многих заданий
требуется переводить числа из одной системы счисления в другую. Для
самоконтроля правильности выполнения отдельных этапов заданий, включающих
перевод, я добавила в своё приложение калькулятор перевода чисел из двоичной,
восьмеричной, шестнадцатеричной системы счисления в десятичную и наоборот. Для
перевода в десятичную использовала формулу, согласно которой число N  в
некоторой позиционной системе счисления с основанием P записывается как

,где a –цифра от 0 до
P-1,      P – основание системы счисления. Число, введенное в поле для
перевода, программой воспринимается как строка. Определю длину строки
k.
Тогда
k-1
(в Андроиде символы нумеруются с нуля, для
Windows
начинаем с
k) символ переведу в число
и умножу на 2,8 или 16 в степени 0. Затем
k-2
на основание в первой степени и т.д. до 0 символа в степени
k-1.

Использую
цикл. Получила такую функцию:

function 
Fingers(Symbols: String;Number:Integer) : String;

 var
i,k:integer;   s:single;

 begin

      
s:=0;

      
k:=  length(symbols);

           
for I := 0 to k-1 do    begin

 s:=s+
strtofloat(symbols[i])*power(number,k-1-i);  //  
для
windows symbols[i+1]

          
end;

       
Fingers:=   floattostr(s);

  
end;

Number
— это основание системы счисления,
Symbols
— введенное в поле перевода число. Функция вернет строку — результат перевода
в  десятичное число.

Для
перевода из десятичной системы счисления буду использовать алгоритм деления на
основание той системы счисления, в которую переводим. Использую операторы
целочисленного деления
div и mod.

function
perevod(s:string;p:integer):string;

var

 
r,c:string; d,z:integer;

 
begin

 
c:=’0123456789ABCDEF‘;
//строка для записи нужных цифр, иначе с 16 не получится

  
d:=strtoint(s);   
//считываем введенное число

  
if d<p then perevod:=c[d]   
//делим на основание системы счисления, если меньше —

//это
уже результат, иначе

  
else 
begin

    
while d>=p do begin      
//делим на основание, пока наше число больше или равно

 //основанию,
остатки от деления собираем в строку, записывая новый символ СЛЕВА.

      
r:=c[d mod p
]+
r;

      
d:=d div p;   
// сохраняем результат деления

  
end;

    
perevod:=c[d]+r
// последний результат от деления тоже добавляем

//
к нашей строке

  
end;

 
end;

В
итоге получила приложение, работающее и на компьютере (ОС
Windows), 
и на планшете, и на телефоне с Андроид.

Глава 2.

2.1 Анкетирование

Я продемонстрировала сове приложения
обучающимся 10-11 классов МОУ СОШ№6 г.Сердобска и предложила им ответить на
вопросы анкеты.

1.     Считаете
ли вы данное приложение полезным для подготовки к ЕГЭ по информатике?

2.     Считаете
ли вы удобным интерфейс приложения?

3.     Хотели
бы вы, чтобы были разработаны подобные приложения для подготовки к ЕГЭ по
другим предметам?

2.2 Обработка
результатов

В опросе приняли участие 42 ученика
10-11 классов МОУ СОШ№6 г.Сердобска. Заполненные анкеты обрабатывались, а
результаты заносились в таблицы, на основании которых были построены диаграммы
и проведен анализ.

1.     Считаете
ли вы данное приложение полезным для подготовки к ЕГЭ по информатике?

Да  — 42 человека (100%)

Нет – 0 человек (0%)

2.     Считаете
ли вы удобным интерфейс приложения?

Да
– 41 человек (97%)

Нет
1 человек (3%)

3.     Хотели
бы вы, чтобы были разработаны подобные приложения для подготовки к ЕГЭ по
другим предметам?

Да
– 42 человека (100%)

Нет
0 человек (0%)

Перспективы проекта

Обработав результаты
анкетирования, я выяснила, что старшеклассники считают мое приложение полезным,
и хотели бы, чтобы подобные приложения были разработаны по другим предметам.
Поэтому, в планах у меня разработка приложений по подготовке к ЕГЭ по всем
основным предметам.

Практическая
значимость

Созданное мной приложение может быть
использовано обучающимися старших классов для подготовки к ЕГЭ по информатике.
Кроме того материалы моей работы позволяют создать подобные приложения и по
другим предметам.

Приложение

Screenshot_2017-01-23-19-37-05Screenshot_2017-01-23-19-35-28Screenshot_2017-01-23-19-35-50Screenshot_2017-01-23-19-36-03Screenshot_2017-01-23-19-36-11Screenshot_2017-01-23-19-36-41Screenshot_2017-01-23-19-36-57

Литература

1.    
https://www.embarcadero.com.

2.    
 http://www.loginovprojects.ru/LAZARUSForAndroid.pdf

3.    
Всеволод Леонов — Обучение мобильной
разработке на Delphi / Embarcadero, 2015

4.    
http://www.webdelphi.ru/android/

5.    
http://delphiexpert.ru/delphi-xe5-android.html

6.    
http://fire-monkey.ru

7.    
http://delphi2010.ru/delphi-xe7-multiview/

8.    
http://www.cyberforum.ru/delphi-firemonkey/thread1569067.html

9.    
http://www.cyberforum.ru/delphi-firemonkey/thread1547040.html

10.
 http://kpolyakov.spb.ru/school/ege.htm

СТРУКТУРА ПРОГРАММЫ

16 модулей

ОБЪЕМ ПРОГРАММЫ

72 академических часа

УРОВЕНЬ СЛОЖНОСТИ

Экспертный

ФОРМАТ ОБУЧЕНИЯ

Дистанционный

ДОКУМЕНТЫ ОБ ОБРАЗОВАНИИ

Удостоверение о повышении квалификации государственного образца

Внесение записи в ФИС ФРДО

СТРУКТУРА ПРОГРАММЫ

16 модулей

ОБЪЕМ ПРОГРАММЫ

72 академических часа

УРОВЕНЬ СЛОЖНОСТИ

Экспертный

ФОРМАТ ОБУЧЕНИЯ

Дистанционный

ДОКУМЕНТЫ ОБ ОБРАЗОВАНИИ

Удостоверение о повышении квалификации государственного образца

Внесение записи в ФИС ФРДО

Модули
Программы

МОДУЛЬ 1.

Введение. Общая рамка КЕГЭ по информатике и его особенности

Особенности компьютерного формата экзамена, анализ первого опыта проведения КЕГЭ 2021 года, обсуждение проекта демонстрационного варианта КЕГЭ 2022 года

МОДУЛЬ 2.

Методические основы подготовки обучающихся к КЕГЭ на уроках информатики

Возможности сдачи КЕГЭ по информатике для обучающихся, осваивающих предмет на углубленном и базовом уровне. Подготовка к КЕГЭ на уроке информатики

МОДУЛЬ 3.

Кодирование информации. Системы счисления. Учебно-методическое сопровождение

Основные понятия и умения по теме «Кодирование информации. Системы счисления». Перечень глав и разделов учебников федерального перечня Минпросвещения России. Разбор примеров заданий и обсуждение различных подходов к поиску решения. Задания открытого банка ФИПИ для самостоятельных и тренировочных работ, комплекты заданий для подготовки самостоятельных и тренировочных работ обучающихся

МОДУЛЬ 4.

Основы математической логики. Учебно-методическое сопровождение

Основные понятия и умения по теме «Основы математической логики». Перечень глав и разделов учебников федерального перечня Минпросвещения России. Разбор примеров заданий и обсуждение различных подходов к поиску решения. Задания открытого банка ФИПИ для самостоятельных и тренировочных работ, комплекты заданий для подготовки самостоятельных и тренировочных работ обучающихся

МОДУЛЬ 5.

Элементы теории алгоритмов. Учебно-методическое сопровождение

Основные понятия и умения по теме «Элементы теории алгоритмов». Перечень глав и разделов учебников федерального перечня Минпросвещения России. Разбор примеров заданий и обсуждение различных подходов к поиску решения. Задания открытого банка ФИПИ для самостоятельных и тренировочных работ, комплекты заданий для подготовки самостоятельных и тренировочных работ обучающихся

МОДУЛЬ 6.

Логика и алгоритмы. Учебно-методическое сопровождение

Основные понятия и умения по теме «Логика и алгоритмы». Перечень глав и разделов учебников федерального перечня Минпросвещения России. Разбор примеров заданий и обсуждение различных подходов к поиску решения. Задания открытого банка ФИПИ для самостоятельных и тренировочных работ, комплекты заданий для подготовки самостоятельных и тренировочных работ обучающихся

МОДУЛЬ 7.

Технологии хранения и поиска информации. Учебно-методическое сопровождение

Основные понятия и умения по теме «Технологии хранения и поиска информации». Перечень глав и разделов учебников федерального перечня Минпросвещения России. Разбор примеров заданий и обсуждение различных подходов к поиску решения. Задания открытого банка ФИПИ для самостоятельных и тренировочных работ, комплекты заданий для подготовки самостоятельных и тренировочных работ обучающихся

МОДУЛЬ 8.

Обработка числовой информации. Учебно-методическое сопровождение

Основные понятия и умения по теме «Обработка числовой информации». Перечень глав и разделов учебников федерального перечня Минутпросвещения России. Разбор примеров заданий и обсуждение различных подходов к поиску решения. Задания открытого банка ФИПИ для самостоятельных и тренировочных работ, комплекты заданий для подготовки самостоятельных и тренировочных работ обучающихся

МОДУЛЬ 9.

Моделирование и компьютерный эксперимент. Учебно-методическое сопровождение

Основные понятия и умения по теме «Моделирование и компьютерный эксперимент». Перечень глав и разделов учебников федерального перечня Минпросвещения России. Разбор примеров заданий и обсуждение различных подходов к поиску решения. Задания открытого банка ФИПИ для самостоятельных и тренировочных работ, комплекты заданий для подготовки самостоятельных и тренировочных работ обучающихся

МОДУЛЬ 10.

Элементы теории игр. Учебно-методическое сопровождение

Основные понятия и умения по теме «Элементы теории игр». Перечень глав и разделов учебников федерального перечня Минпросвещения России. Разбор примеров заданий и обсуждение различных подходов к поиску решения. Задания открытого банка ФИПИ для самостоятельных и тренировочных работ, комплекты заданий для подготовки самостоятельных и тренировочных работ обучающихся

МОДУЛЬ 11.

Программирование. Массивы (списки). Учебно-методическое сопровождение

Основные понятия и умения по теме «Программирование. Массивы (списки)». Перечень глав и разделов учебников федерального перечня Минпросвещения России. Разбор примеров заданий и обсуждение различных подходов к поиску решения. Задания открытого банка ФИПИ для самостоятельных и тренировочных работ, комплекты заданий для подготовки самостоятельных и тренировочных работ обучающихся

МОДУЛЬ 12.

Программирование. Обработка символьной информации. Учебно-методическое сопровождение

Основные понятия и умения по теме «Программирование. Обработка символьной информации». Перечень глав и разделов учебников федерального перечня Минпросвещения России. Разбор примеров заданий и обсуждение различных подходов к поиску решения. Задания открытого банка ФИПИ для самостоятельных и тренировочных работ, комплекты заданий для подготовки самостоятельных и тренировочных работ обучающихся

МОДУЛЬ 13.

Программирование. Обработка числовой информации. Учебно-методическое сопровождение

Основные понятия и умения по теме «Программирование. Обработка числовой информации». Перечень глав и разделов учебников федерального перечня Минпросвещения России. Разбор примеров заданий и обсуждение различных подходов к поиску решения. Задания открытого банка ФИПИ для самостоятельных и тренировочных работ, комплекты заданий для подготовки самостоятельных и тренировочных работ обучающихся

МОДУЛЬ 14.

Программирование. Анализ числовых последовательностей

Основные понятия и умения по теме «Программирование. Анализ числовых последовательностей». Перечень глав и разделов учебников федерального перечня Минпросвещения России. Разбор примеров заданий и обсуждение различных подходов к поиску решения. Задания открытого банка ФИПИ для самостоятельных и тренировочных работ, комплекты заданий для подготовки самостоятельных и тренировочных работ обучающихся

МОДУЛЬ 15.

Основы формирования конструктивной стратегии деятельности участника КЕГЭ по информатике. Учебно-методическое сопровождение

Основы тайм-менеджмента и эффективные приемы формирования конструктивной стратегии участника экзамена для получения высоких результатов. Описание системы тренировочных работ с элементами тайм-менеджмента. Примеры тренировочных работ.

МОДУЛЬ 16.

Итоговый зачет

Дистанционная зачетная работа в формате КЕГЭ 2022 года, продолжительностью 3 часа 55 минут с последующим разбором и анализом результатов. Подведение итогов курса

Видеоконсультации по подготовке к ЕГЭ 2020 года

Специалисты ФИПИ — руководители и члены комиссий по разработке КИМ ГИА участвуют в онлайн-марафоне России «Домашний час» в сообществе Министерства просвещения Российской Федерации в социальной сети «ВКонтакте». Марафон открытых эфиров организован Минпросвещения России в помощь родителям и школьникам, которые находятся дома для защиты своего здоровья в условиях сложившейся эпидемиологической ситуации.

3 апреля в онлайн-марафоне на тему «Что изменится в экзаменационных заданиях ЕГЭ и ОГЭ» директор ФИПИ Оксана Александровна Решетникова рассказала об изменениях в содержании экзаменационных материалов ЕГЭ и ОГЭ 2020 года и самостоятельной подготовке к экзаменам, а также ответила на вопросы зрителей эфира. В частности, отвечая на один из популярных вопросов, будет ли в 2020 году из-за перехода школ на дистанционное обучение упрощен ЕГЭ, О. А. Решетникова сообщила, что такие изменения не планируются. Также в этом году не запланировано проведение экзаменов в компьютерной форме, это вопрос более отдаленной перспективы.

Понравилась статья? Поделить с друзьями:

Новое и интересное на сайте:

  • Программа психопрофилактики стресса перед экзаменом
  • Продать сочинение по литературе
  • Продать собрание сочинений чехова
  • Программа психологической подготовки к экзаменам 9 класс
  • Продать собрание сочинений ленина цена

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии