Basic - вводный курс

         

Угадайка (математика и программирование)

Компьютер случайным образом загадывает число от 1 до 100. Задача пользователя — за минимальное количество попыток, но не более шести, угадать это число, предлагая компьютеру свои варианты, в ответ на которые программа указывает номер попытки, и сообщение о том, больше загаданное число или меньше введенного с клавиатуры. При правильной стратегии (делении интервала чисел пополам) наверняка угадать число можно за 7 попыток (27=128). Именно поэтому человеку дается только шесть попыток, чтобы у компьютера тоже был шанс. Игра состоит из пяти партий, и, как показывает практика, человек не всегда побеждает!


Анаграммы (русский язык и программирование)

Игра со словами. Анаграмма — это слово, в котором перепутаны буквы, например, "ШАДОЛЬ" — это "ЛОШАДЬ", а "ТИВОНКР" — это "ВТОРНИК". Программа рассчитана на двух игроков, соревнующихся друг с другом. В качестве слов используются только имена существительные, нарицательные, в единственном числе, в именительном падеже. Первый игрок вводит с клавиатуры слово длиной не менее пяти, но не более восьми букв (постарайтесь сделать так, чтобы во время ввода на экране вместо букв отображались символы *). Затем компьютер определяет длину введенного слова, разбирает его на отдельные символы, заносит их в массив, откуда случайным образом выводит на экран. Соперник в течение 2-х минут (время определяет компьютер) должен определить это слово. В случае правильного ответа (который он вводит с клавиатуры) он получает 1 очко, и сам загадывает слово первому игроку. Игра идет до 5 очков. За неправильный ответ очки не начисляются. Безусловно, приветствуется дружественный интерфейс: запрос и обращение к игрокам по именам, вывод на экран правил игры, графическое и звуковое оформление.


Стрельба из пушки (физика, математика и программирование)

Вариант 1

В замке в заточении томится прекрасная принцесса. В стене замка имеется небольшое окошко-бойница. У нас есть пушка. Необходимо передать принцессе план побега, выстрелив им из пушки (и, естественно, попав). Дается всего три попытки. Исходными данными являются угол наклона ствола пушки по отношению к горизонту и начальная скорость полета ядра. Они запрашиваются с клавиатуры. Предусмотреть примитивное изображение пушки (рис. 1.75), поворот ствола в зависимости от введенного угла, вычерчивание траектории полета ядра, реакцию замка на попадание в стену ядра, вывод на экран текста плана побега в случае правильного попадания.

Рис.1.75. Стрельба из пушки: вариант 1

Вариант 2

Дуэль на пушках через каменную стену — кто кого. Пушки теперь есть у двух игроков. Они небольшого размера. Стреляют по очереди, также задавая угол и скорость полета ядра в пределах: угол от 10° до 90°, начальная скорость от 30 до 100 м/с. Попадание засчитывается, если расстояние от центра ядра до центра колеса пушки не более 20 экранных точек. В таком случае противник проигрывает. Высота стены каждый раз выбирается случайным образом в пределах от 50 до 200 экранных точек (рис. 1.76). Игра идет до трех побед.

Рис.76. Стрельба из пушки: вариант 2



Царь-пушка (математика, физика, экономика, история, русский язык и программирование)

Выполните расчет рентабельности изготовления ядер для "Царь-пушки".
Царь выделил 10 млн рублей на изготовление наиболее рентабельных ядер для Царь-пушки. Необходимо написать программу, рассчитывающую рентабельность изготовления ядер для 17 различных материалов, сэкономив таким образом для государственной казны значительные средства, которые могли бы быть затрачены на проверку рентабельности в полевых условиях с использованием натуральных материалов.
Исходные данные таковы. Отпущено денег 10 млн руб. Калибр Царь-пушки, фамилию мастера и год изготовления выясните дома. Взяв из табл. 1.6 исходные данные, создайте файл pushka.dat.

Таблица 1.6. Исходные данные для задания "Царь-пушка"

Материал
Плотность г/см3
Себестоимость руб./кг
Коэффициент убойной силы
1
Платина
21,5
3636,36
1000,0
2
Золото
19,3
3090,91
950,0
3
Свинец
11,3
178,18
900,0
4
Серебро
10,5
454,55
800,0
5
Медь
9
81,82
300.0
6
Никель
8,9
92,73
340,0
7
Железо
7,9
29,09
500,0
8
Олово
7,3
67,27
550,0
9
Титан
4,5
203,64
450,0
10
Алюминий
2,7
21,82
450,0
11
Глина
2,2
3,64
0,1
12
Каучук
0,9
25,45
130,0
13
Цинк
7,1
60,00
610,0
14
Графит
2,5
9,09
2,5
15
Латунь
8,24
73,09
230,0
16
Мельхиор
5,42
84,00
200.0
17
Чугун
7,63
28,09 .
440,0

Здесь необходимо перевести плотности в систему СИ. Далее вычислить (все вычисления производить в системе СИ):

объем ядра (ядро идеально круглое); массу ядра (М); начальную скорость (по формуле цену одного ядра (С); количество ядер (N); дальность полета (S), если выстрел производится под углом 45°;

убойную силу рентабельность

Напишите программу, которая поможет:

найти пять наиболее рентабельных материалов, их рентабельности занести в массив и упорядочить по возрастанию; из самой большой рентабельности взять вторую цифру; из следующей по убыванию — число, составленное из первых двух цифр, поделить на два; в очередной по убыванию — сложить цифры целой части и прибавить число, которое получится, если число, составленное из двух первых цифр пятой рентабельности, поделить пополам; из четвертой рентабельности взять разность второй и третьей цифр.

Полученные четыре значения соответствуют порядковым номерам букв русского алфавита, в котором отсутствует буква "е". Необходимо определить эти буквы и составить из них четырехбуквенное слово, которое является первым результатом выполнения задания. Второе слово получаем следующим образом: из фамилии мастера берем три последние буквы, добавляем букву, чей порядковый номер — вторая цифра года создания Царь-пушки и букву, чей порядковый номер получается делением на 2 числа, образуемого второй и четвертой цифрами года создания Царь-пушки. Составляем пятибуквенное слово.

Кинотеатр "Кристалл-Палас" (математика, экономика и программирование)

И еще одно очень объемное задание. Представьте себе, что вас приглашают в кинотеатр "Кристалл-Палас", расположенный на Невском проспекте, на должность директора. Когда вы пытаетесь узнать, сколько же вам будут платить, то говорят, что сейчас заодно и проверят ваши деловые способности, и предлагают написать программу, используя следующие исходные данные. В кинотеатре "Кристалл-Палас" три зала: "Красный", "Зеленый" и "Синий". Залы одинаковы и представляют собой квадраты 11x11 кресел. В результате маркетинговых исследований были установлены показатели по заполнению зала в среднем (рис. 1.77).

Рис.77. Рассадка зала

Первым делом, чтобы облегчить себе жизнь, создадим файл исходных данных, в котором будет содержаться массив 11x11, элементами которого будут цифры из таблицы. Здесь цифры 1 и 2 будут обозначать мужчин, 3 и 4 — женщин, 5 и 6 — детей, 7 и 8 — тех, кто имеет право на льготные билеты, 0 — пустые места и 9 — знакомые и родственники служащих кинотеатра, которые ходят в кино бесплатно. К исходным данным также относится курс доллара на сегодняшний день. Цены на билеты в зависимости от времени сеанса и принадлежности к той или иной категории зрителей приведены в табл. 1.7, а затраты от общей прибыли — в табл. 1.8.

Таблица 1.7. Цены билетов в кинотеатре "Кристалл-Палас"

Категория зрителей
Цена билетов (руб.)
Утро (1 сеанс)
День (3 сеанса)
Вечер (2 сеанса)
Мужчины
70
100
200
Женщины
50
70
150
Дети
30
50
100
Льготники
10
20
50

Необходимо вычислить прибыль кинотеатра за день, за месяц (считая, что в месяце 30 дней), расходы по статьям в рублях и долларах. Вывести эти данные на экран, выделив зарплату директора цветом.

Тараканьи бега (математика, дизайн и программирование)

Конечно, сейчас уже далеко не все из вас смотрели фильм "Бег", поставленный по роману М. Булгакова. В частности, в нем есть сюжет о том, как наши эмигранты первой волны зарабатывали себе в Париже на жизнь. Одним из источников их доходов были тараканьи бега. Попробуем реализовать их компьютерную версию.

Часть 1. Красочная заставка. Часть 2. Представление кличек участвующих тараканов, запрос количества делающих ставки и их фамилий, выдача всем кредита в 200 единиц, прием ставок (не более 100, но не менее 30). Часть 3. Оформление игрового поля примерно, как на рис. 1.78. Часть 4. Непосредственно забег. Скорость каждого таракана за один такт — случайное целое число от 1 до 5.

Забег заканчивается, как только какой-либо таракан коснулся "головой" финишной черты. Если никто из сделавших ставки не выиграл, то деньги переходят в доход казино. В случае выигрыша игрока, ему начисляется двойная ставка. Игра идет до тех пор, пока кто-либо не разорится, или кто-либо не наберет сумму в размере двойного кредита.

Таблица 1.8. Затраты из общей прибыли за месяц

Затраты
%
Затраты
%
Амортизация
12
Охранные структуры
25
Налоги
22
Новые фильмы
22
Зарплата сотрудникам
16
Директор
3
Часть 5. После каждого забега выводится информационное сообщение о финансовом положении участников и статистике побед тараканов.

Рекомендуется оформить забег музыкально.

Рис.77. Игровое поле для "тараканьих бегов"

Тесты (психология, русский язык и программирование)

Для этого задания вы можете взять любой тест из многочисленных выпускаемых сейчас журналов. Создайте файл исходных данных — вопросов и вариантов ответов. Напишите программу, знакомящуюся с пользователем, сообщающую ему цель теста и инструкцию по работе с программой, проводящую тест, анализирующую результаты и выводящую итоги, взятые из другого файла данных.
Такая программа может использоваться как для психологических тестов, так и для проверки знаний в какой-либо области.
Если с одним тестом у вас получилось, то можно написать целую гибкую систему тестирования, где пользователю предлагается выбор из нескольких тестов, а также непосредственное создание тестов самому.
Итак, вы уже имеете некий багаж знаний, который никогда не бывает лишним, вы уже пользуетесь уважением у друзей и преподавателей, вы получаете только пятерки по программированию, но впереди — моря и океаны новых знаний. Ничего не бойтесь, и все у вас получится!
Удачи!