Программирование на ЕГЭ по информатике Идеи серьёзные и бредовые Чернов Сергей Николаевич МОУ лицей 44.

Презентация:



Advertisements
Похожие презентации
ПОДГОТОВКА К СДАЧЕ ЕДИНОГО ГОСУДАРСТВЕННОГО ЭКЗАМЕНА Часть С Автор-составитель - Демержеева Т.В.
Advertisements

ЕГЭ информатика Алгоритмизация и программирование Консультация 4.
ЕГЭ информатика Алгоритмизация и программирование Консультация 3.
Двумерные массивы. В двумерном массиве каждый элемент фиксируется номером строки и столбца, на пересечении которых он расположен. Положение элемента в.
ЕДИННЫЙ ГОСУДАРСТВЕННЫЙ ЭКЗАМЕН Часть С демо-варианта 2009.
ЕГЭ 2012 Информатика и ИКТ Консультация 4ЕГЭ 2012 Информатика и ИКТ Консультация 4.
Массивы Разбор задачи С4. Массив - это множество однотипных элементов, объединённых общим именем и занимающих в компьютере определённую область памяти.
ЕГЭ 2012 Информатика и ИКТ Консультация 3. Пример.
ЕГЭ 2011 Информатика и ИКТ Консультация 3 18 марта.
Программирование на языке Q Basic Раздел 1: Язык Q Basic; Линейный алгоритм; Раздел 2: генератор случайных чисел; циклический алгоритм; Раздел 3: графика.
Определение максимального и минимального значений переменных. Задание 1. Даны две переменные А и В, значения которых вводятся командой Input. Определить.
П. Лаплас – выдающийся французский математик, физик и астроном, известен работами в области небесной механики, дифференциальных уравнений, один из создателей.
Задания сЗадания сТребовалось написать программу, при выполнении которой с клавиатуры считываются координаты точки на плоскости (х, у - действительные.
Методика решения и оценивания задач «С1», «С2» Единого Государственного Экзамена.
Апрель - май 2011 г. Выполнил : Шамов Сергей Ученик 11 б класса МОУ ФСОШ 2 « с углубленным изучение отдельных предметов » Апрель - май 2011 г. Задания.
Решение задач по программированию. С клавиатуры вводятся значения температур за некоторый период времени. Определить среднее значение отрицательных температур.
Программирование на Basic МассивыПрограммирование на Basic Массивы.
Массивы Теоретические сведения. Примеры решения задач. Задания для самостоятельного выполнения.
Массивы 9 класс. Основные теоретические сведения Примеры решения задач.
Упорядочение массива методом вставки Сообщение по Информатике ученика 11 «а» класса МОУ СОШ 45 Калюжного Андрея Калининград 2008 г.
Транксрипт:

Программирование на ЕГЭ по информатике Идеи серьёзные и бредовые Чернов Сергей Николаевич МОУ лицей 44

С1. Требовалось написать алгоритм (программу) подсчета всех натуральных чисел n, кратных 7 и заключенных строго между натуральными числами a и b. Входная информация вводится с клавиатуры, а на выходе должно быть получено сообщение, например, вида "искомое число равно 12" (если есть 12 таких кратных чисел) или "искомое число равно 0" (если нет кратных чисел). Некто, в спешке, написал следующий алгоритм (следующую программу): Intuit, demo-2007

dim a, b, c, n as integer print 'введите a, b:' input a,b n = 0 if (a = b) and (a MOD 7=0) then n = n + 1 else for c = a to b if (с MOD 7 = 0) then n = n + 1 end if next c end if print "искомое число равно ", n end

Задания: Укажите набор входных чисел a, b, для которого программа работает неправильно. Укажите любой вариант доработки программы (удаления, добавления, изменения команд), чтобы не было случаев её неправильной работы. Укажите вариант доработки программы без использования логических операций (and, or, not).

1) Например, если a>=b 2) CLS INPUT "a,b"; a, b IF a > b THEN SWAP a, b FOR c = a + 1 TO b - 1 IF c MOD 7 = 0 THEN n = n + 1 NEXT PRINT Количество таких чисел "; nКоличество таких чисел

Здесь можно обойтись вообще без IF: CLS INPUT "a,b"; a, b c = ABS(a - b): a = (a + b - c) / 2: b = a + c FOR i = a + 1 TO b - 1 n = n + (1 - SGN(i MOD 7)) NEXT PRINT Количество таких чисел "; nКоличество таких чисел

С2. Для заданного числового массива (ряда чисел) составить алгоритм нахождения m - максимума среди элементов массива, находящихся на нечетных местах (то есть среди x1, x3, x5 и т. д.) и k - минимума среди элементов массива, находящихся на четных местах (то есть среди x2, x4, x6 и т. д.).

CLS : RANDOMIZE TIMER DEF fns (a, b) = a + (b - a) * RND \ 1 INPUT #N = ; n INPUT [a, b]; a, b DIM a(n) FOR i = 1 TO n a(i) = fns(a, b) COLOR 13 + (i MOD 2) четность индексачетность индекса 'COLOR 13 + ABS(a(i) MOD 2) четность элемента четность элемента PRINT a(i); NEXT i max = a(1): min = a(2) FOR i = 1 TO n IF i MOD 2 = 1 AND a(i) > max THEN max = a(i) IF i MOD 2 = 0 AND a(i) < min THEN min = a(i) 'IF a(i) MOD 2 = 1 AND a(i) > max THEN max = a(i) 'IF a(i) MOD 2 = 0 AND a(i) < min THEN min = a(i) NEXT i PRINT : PRINT : COLOR 15: PRINT max, min

С3. Два игрока играют в игру со следующими правилами: имея достаточный запас монет (диаметром d см), каждый из них кладет по очереди одну монету на стол размером а и b (см). Проигрывает тот игрок, которому некуда класть очередную монету. Монета должна опираться своей полной площадью на стол (не допускается свисание монеты). Можно перемещать монету, соблюдая это условие. Описать стратегию выигрышной игры (как начинать и как ходить игроку для выигрыша).

Предлагаемое решение: Определим, сколько монет поместится максимально (без свисания) на столе. По стороне длины a это количество равно n=int(a/d), а по стороне b - равно m=int(b/d). Общее количество монет равно k=nm. Все зависит от четности (нечетности) этого числа. Если k - нечетно, то выигрывает всегда тот, кто ходит первым, а если k - четно, то он проигрывает всегда. Стратегия хода проста: каждый раз к монете второго игрока (после его хода) нужно приставлять по длине или ширине стола свою монету в этом ряду или начинать новый ряд (если предыдущий ряд уже заполнен).

Неточно и даже неверно! Разные укладки – разное количество монет - другой результат игры!

С4. Составить алгоритм удаления из заданного текста a всех символов, расположенных на нечетных местах другого заданного текста b. В качестве решения предлагается перебор символов текста a c последующим склеиванием части a до негодного символасклеиванием с частью после него.

CLS a$ = "teiytojypeno 7tewts7zgk7lkmlkhjoigkjhfol": b$ = "a e tia t4t0j5o67w8y" lb = LEN(b$) FOR k = 1 TO lb STEP 2 z$ = MID$(b$, k, 1): z = INSTR(1, a$, z$) WHILE z > 0 a$ = MID$(a$, 1, z - 1) + MID$(a$, z + 1) z = INSTR(z, a$, z$) WEND SLEEP: PRINT a$ NEXT COLOR 14: PRINT a$

CLS a$ = "teiytojypeno 7tewts7zgk7lkmlkhjoigkjhfol": b$ = "a e tia t4t0j5o67w8y" lb = LEN(b$) FOR k = 1 TO lb STEP 2 z$ = MID$(b$, k, 1): z = INSTR(1, a$, z$) WHILE z > 0 a$ = MID$(a$, 1, z - 1) + MID$(a$, z + 1) z = INSTR(z, a$, z$) WEND SLEEP: PRINT a$ NEXT COLOR 14: PRINT a$

Я предлагаю синтезировать новое слово накоплением годных символов с последующей заменой получившимся значением исходного значения a:синтезировать

CLS a$ = "teiytojypjguyutewtsdzgkjlkmlkhjoigkjhfol" b$ = "a e tia t4t0j5o6u7w8y" la = LEN(a$): lb = LEN(b$) FOR i = 1 TO LEN(a$) FOR j = 1 TO LEN(b$) STEP 2 IF MID$(a$, i, 1) = MID$(b$, j, 1) THEN 1 NEXT j aa$ = aa$ + MID$(a$, i, 1) 1 NEXT i a$ = aa$ PRINT a$

CLS a$ = "teiytojypjguyutewtsdzgkjlkmlkhjoigkjhfol" b$ = "a e tia t4t0j5o6u7w8y" la = LEN(a$): lb = LEN(b$) FOR i = 1 TO LEN(a$) FOR j = 1 TO LEN(b$) STEP 2 IF MID$(a$, i, 1) = MID$(b$, j, 1) THEN 1 NEXT j aa$ = aa$ + MID$(a$, i, 1) 1 NEXT i a$ = aa$ PRINT a$