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

         

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



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

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

 



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



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

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






Глава 4. Задания повышенной трудности, интегрированные, азартные Задания повышенной трудности Угадайка (математика и программирование) Анаграммы (русский язык и программирование) Стрельба из пушки (физика, математика и программирование) Царь-пушка (математика, физика, экономика, история, русский язык и программирование) Кинотеатр "Кристалл-Палас" (математика, экономика и программирование) Тараканьи бега (математика, дизайн и программирование) Тесты (психология, русский язык и программирование)


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



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

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



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



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




 











Рассадка зала



Рисунок 77. Рассадка зала


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



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



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

Вариант 1

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



Дуэль на пушках через каменную



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


Вариант 2

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



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




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



Таблица 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 числа, образуемого второй и четвертой цифрами года создания Царь-пушки. Составляем пятибуквенное слово.

 


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



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

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

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

 


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



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

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

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



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



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

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

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

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



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



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

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

 



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



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

Компьютер случайным образом загадывает число от 1 до 100.



Задача пользователя — за минимальное


 











Задания повышенной трудности



Задания повышенной трудности

Если вы добрались до сих слов, дорогой читатель, то дальше, полагаю, вы сможете идти один, гордо неся знамя российского программирования над миром (ведь только в США 80% разработчиков программного обеспечения и математиков — наши соотечественники).
Напоследок я хочу предложить вам ряд разнообразных задач, поломав голову над которыми, вы приобретете неоценимую закалку и опыт. Они будут без решений. Кроме того, подобные задания всегда хочется видеть не просто работающими, но и оформленными, и снабженные такими "FOOL PROOF" (защитой от дурака, т. е. выдерживающими случайные нажатия не тех клавиш неопытными пользователями), чтобы с ними было приятно работать.