- Фантастика и фэнтези
- Ироническое фэнтези
- Стимпанк
- Детективная фантастика
- Киберпанк
- Попаданцы
- LitRPG
- Космоопера
- Технофэнтези
- Городская фантастика
- Русское фэнтези
- Юмористическая фантастика
- Космическая фантастика
- Боевое фэнтези
- Эпическая фантастика
- Зарубежная фантастика
- Книги магов
- Мистика
- Разная фантастика
- Разное фэнтези
- Любовное фэнтези
- Романтическая фантастика
- Городское фентези
- Историческая фантастика
- Историческое фэнтези
- Социально-философская фантастика
- Сказочная фантастика
- Иностранное фэнтези
- Романтическое фэнтези
- Ироническая фантастика
- Ужасы и Мистика
- Постапокалипсис
- Героическая фантастика
- Фэнтези
- Научная Фантастика
- Социально-психологическая
- Альтернативная история
- Боевая фантастика
- Разная литература
- Пословицы, поговорки
- Шахматы
- Визуальные искусства
- Фанфик
- Авто и ПДД
- Военное
- Отраслевые издания
- Гиды, путеводители
- Зарубежная образовательная литература
- Военная история
- Цитаты из афоризмов
- Современная литература
- Великолепные истории
- Начинающие авторы
- Современная зарубежная литература
- Боевые искусства
- Изобразительное искусство, фотография
- Кино
- Литература 19 века
- Недвижимость
- Музыка, музыканты
- Готические новеллы
- Истории из жизни
- Культура и искусство
- Спецслужбы
- Зарубежная прикладная литература
- Музыка, танцы
- Подростковая литература
- Прочее
- Военная техника, оружие
- Газеты и журналы
- Периодические издания
- Домоводство, Дом и семья
- Любовные романы
- Экономическая литература
- Научные и научно-популярные книги
- О животных
- Биохимия
- Культурология
- Юриспруденция
- Политика
- Психотерапия
- Языкознание
- Научпоп
- Медицина
- Психология, личное
- Радиотехника
- Филология
- Педагогика
- Образовательная литература
- Деловая литература
- Физика
- Науки: разное
- Химия
- Воспитание детей, педагогика
- Детская психология
- Зарубежная публицистика
- Биология
- Архитектура
- Зарубежная психология
- Науки о космосе
- Социология
- Математика
- География
- Беременность, ожидание детей
- Литературоведение
- Транспорт, военная техника
- Обществознание
- Зоология
- География
- Альтернативная медицина
- Иностранные языки
- Ветеринария
- Рефераты
- Астрология
- Биофизика
- Экология
- История Европы
- Учебники
- Шпаргалки
- Государство и право
- Ботаника
- Религиоведение
- История
- Техническая литература
- Прочая научная литература
- Психология
- Детективы и Триллеры
- Справочная литература
- Проза
- Новелла
- Юмор
- Проза
- Историческая проза
- Русская современная проза
- Советская классическая проза
- Повести
- Очерки
- Эссе
- Рассказы
- Зарубежная современная проза
- Сентиментальная проза
- Зарубежная классика
- Афоризмы
- Эпистолярная проза
- Феерия
- Семейный роман/Семейная сага
- Разное
- Антисоветская литература
- Магический реализм
- Русская классическая проза
- Современная проза
- О войне
- Контркультура
- Классическая проза
- Поэзия, Драматургия
- Детская литература
- Детская фантастика
- Детские остросюжетные
- Детские стихи
- Детские приключения
- Внеклассное чтение
- Учебная литература
- Зарубежные детские книги
- Бизнес
- Загадки
- Книги для подростков
- Школьные учебники
- Детский фольклор
- Книги для дошкольников
- Детские детективы
- Детская познавательная и развивающая литература
- Буквари
- Прочая детская литература
- Сказка
- Детская проза
- Детская образовательная литература
- Юмор
- Документальные книги
- Бизнес
- Внешнеэкономическая деятельность
- Тайм-менеджмент
- Кадровый менеджмент
- О бизнесе популярно
- Управление, подбор персонала
- Бизнес
- Менеджмент и кадры
- Продажи
- Экономика
- Ценные бумаги и инвестиции
- Малый бизнес
- Делопроизводство, офис
- Корпоративная культура, бизнес
- Банковское дело
- Финансы
- Зарубежная деловая литература
- Ораторское искусство / риторика
- Личные финансы
- Интернет-бизнес
- Поиск работы
- Государственное и муниципальное управление
- Бухучет и аудит
- Работа с клиентами
- Менеджмент
- Краткое содержание
- Личная эффективность
- Переговоры
- Приключения
- Старинная литература
- Религия и духовность
- Компьютеры и Интернет
- Блог
Читаем без скачивания Задачник по программированию( для школы ) - W Cat
Шрифт:
Интервал:
Закладка:
Дополнительный материал:
Квадрат Полибия, Шифр Цезаря, Решето Кардано, Тарабарская грамота, Диск Энея
(11)
Римские цифрыПрограмма выводит число в римском стиле, пользователь вводит десятичный аналог. Для оживления программа будет выводить реакции «Долго думал», «Go to the first class», ну, на сколько хватит цензурного юмора.
(12)
Mad stringПользователь вводит строку. При нажатии, каждой клавиши, буквы возникают в произвольных местах экрана. По нажатии Enter экран стирается(это, чисто технологический момент и стирание не должно быть заметно), затем буквы опять появляются в случайных местах экрана, а затем они начинают весело прыгать, бегать, перемешиваться но через минуту должны собраться в исходную строку. [это типичный случай, когда задачу надо решать сзади наперед]
Кстати, забавный способ, проверить правильность набора текста, методом слепой печати.
Игры с числами
Пятница 13(13)
Программа должна выдать список из 13 ближайших тринадцатых пятниц, отсчитывая от текущей даты
(14)
Угадай числоПримерный сценарий:
(компьютер) Загадано двух [трех, четырех, пяти] значное число, сколько попыток вам надо для отгадывания?
(пользователь) 8
Попытка №1
50
Больше
Попытка №2
75
Меньше
Попытка №3
58
Поздравляю, вы угадали, затратив 3 попытки!!
Сыграем еще (Да, Нет)?
Да
Целей, при написании такой программы, несколько:
1. сама по себе интересная работа с интерфесом программы;
2. выработка алгоритма угадывания.
3. Как итог - разработка программы с обратной задачей, пользователь задумывает число, а программа отгадывает!!!
"Натуральная" случайностьВ задаче №1, я упоминал два вида случайностей «машинную» и «человеческую», давайте вспомним еще одну, пожалуй, главную, - «природную».
Найдите информацию о «нормальном распределении», не хочу пересказывать, то, что вы найдете, но там очень много вкусненького.
Задача – написать программу, которая будет генерировать случайные числа по закону нормального распределения.
Для того, чтобы убедиться в правильности работы, постройте графики используя «машинную» и «природную» случайности. Так, сказано невнятно.
Попробую подробнее...
Вот такая программа:
uses GraphABC;
const
Max = 600;
var
Mas : array[0..max] of integer;
n : integer;
begin
for var i:=1 to 200000 do
begin
n := Random(Max+1);
inc(Mas[n]);
SetPixel(25+n,Window.Height - Mas[n],clRandom);
end;
end.
Нарисует график:
Как видите, "машинная" случайность имеет "плоское" распределение. Ваша задача - сделать программу выдающую "нормальное" распределение случайности, это может выглядеть, примерно так:
Как сказал бы Кролик Винни-Пуху "Случайности могут быть разные".
Такие не простые, "простые" числа1. Выяснить: для чего нужны простые числа, методы их определения. (Уверяю вас, они очень и очень ценны...)
(15)
2. Написать программу для нахождения простых чисел
Счастливый билетОбъясните учащимся, что в древности в автобусах покупали билеты, и на каждом билете был шестизначный номер. И в течении скучной поездки школьники искали счастливые билеты, т. е. сумма первых трех чисел в номере должна быть равна сумме оставшихся (некоторые чудаки съедали их перед экзаменом :).
(16)
Задача: подсчитать число счастливых билетов, в дальнейшем можно выяснить вероятность приобретения «счастья».
Как-то эту задачу на уроке решали двое учеников, и результат получился существенно разный, но был конец урока, и проверять алгоритмы было лень.. А ученики... сейчас, оба, и он и она, профессиональные программисты, и надеюсь, счастливы в браке.
Лирическое отступление
Большинство задач в данном сборнике рассчитано на работу в текстовом режиме. У «знатоков» закономерно возникнет вопрос:
- Зачем нам учиться программировать в устаревшем текстовом режиме.
- Ну, во-первых, мы движемся от простого… далее… сейчас наверно кто-то пишет ПО для утюга или фена, а скоро надо будет писать для зубочистки, это конечно хорошо, программистам есть работа, но учтите, аппаратные возможности таких устройств очень ограничены. Т.е. винды в кастрюлю никто засовывать не станет, и программировать на низком уровне надо будет еще много лет. Освойтесь с основами программирования в Паскале, а дальше Ассемлбер, Java, Си - да мало ли, что еще возникнет.
А, чтобы напомнить возможности текстового режима, смотрите:
Игры с графикой.
Один «информатик» способен поставить столько задач, что не справятся 10 мудрецов из 10а.
The Adventure of the Dancing Men(17)
В начале, все просто,… а потом ООП.
Рисуем человечка.
Человечек должен иметь двигающиеся конечности. Для начала перемещаем конечности мышкой:
Перемещение мышки в направлении r - конечность сгибается в локте (колене), перемещение в направлении φ – вращение конечности вокруг точки О.
Теперь начинаем наращивать зрелищность.
а) человечек хаотично размахивает конечностями
б) на экране 10 человечков, синхронно размахивающих ручками и ножками
в) на экране толпа, каждый человечек движется независимо
(18)
А теперь вернемся к первоисточнику.
Пользователь набирает строку – на экране появляется строка пляшущих человечков.
На старт(19)
Написать программу, которая будет имитировать счет до старта (от 9 до 0)
В качестве основы использовать такую матрицу:
В этой матрице (семи-сегментном индикаторе) будут изменяться закрашенные сегменты.
Например: цифры 6 и 2:
Теннис(20)
Не мною придумано, но зрелищная и полезная игрушка:
Два игрока управляют двумя ракетками, по экрану бегает шарик, отражаясь от стенок и от ракеток, ведется счет
Смайлик(21)
Написать программу, которая нарисует такое личико.
Имеется в виду, что выражение лица меняется:
а) меняется автоматически по кругу (анимация)
б) меняется в зависимости от нажатой кнопки
С новым годом(22)
На экране рисуется зеленая елка, с игрушками свечами и т. п.
Не обязательно точно такую.
Как, слишком статично. Ничего, добавим ужастика! Пусть, вначале осыпятся игрушки, а затем и иголки — останется только елочный «скелет».
Калейдоскоп(23)
В ведущем треугольнике появляются и начинают перемещаться, объекты случайной формы и цвета. Каждый шаг изменения (с задержкой в 1-2 секунды) отображается симметрично в остальных треугольниках.
Орнамент(24)
В каком-то сериале, в титрах, на экране росли и развивались завитки орнамента.
В кино, художники научились делать это еще сто лет назад.
А программисту, слабо?
Совершенно не обязательно повторить именно этот орнамент, главное, чтобы на экране что-то росло, зеленело.
Игры с файлами
Пока не наступает проза жизни, все мы немножко поэты.
Колбазов "Колония. Дубликат"(25)
Написать программу, которая при включении спрашивает имя, фамилию.
А далее, если этот пользователь еще не работал с программой, запрашиваются разные данные (день рождения, какие домашние животные есть у пользователя, как их зовут...) данные сохраняются в файл.
Если же пользователь уже работал с программой, то имитируется разговор:
'Ты что заболел, уже 3 дня мы не виделись!!!'
(или наоборот 'Слишком много сидишь за компьютером')
'Поздравляю, тебе сегодня 14 лет, 3 месяца и 5 дней'
'Как здоровье Мурки?'
или 'Передай привет Шарику'
. . .
Если программу запускает другой пользователь, то используются его данные (как видите, ничего нового — пытаемся пройти тест Тьюринга ).
Анти поле чудес(26)
Все время толкую, что для игры в стране дураков, надо знать волшебное заклинание ОЕАНТИСРВ.
Программа читает файл, с текстом русской книги (ну например, "Война и мир"), и определяет:
* встречаемость букв в файле (в результате, должно получиться - то самое заклинание).