Поиск по этому блогу

вторник, 3 ноября 2020 г.

Задачи на программирование (ветвление)

l. День недели. Напишите программу, которая запрашивает у пользователя число в диапазоне от 1 до 7. Эта программа должна показать соответствующий день недели, где l - понедельник, 2 - вторник, 3 - среда, 4 - четверг, 5 - пятница, 6 - суббота и 7 - воскресенье. Программа должна вывести сообщение об ошибке, если пользователь вводит номер, который находится вне диапазона от 1 до 7.
2. Площади прямоугольников. Площадь прямоугольника - это произведение его длины на его ширину. Напишите программу, которая запрашивает длину и ширину двух прямоугольников. Программа должна выводить пользователю сообщение о том, площадь какого прямоугольника больше, либо сообщать, что они одинаковы.
3. Классификатор возраста. Напишите программу, которая просит пользователя ввести возраст человека. Программа должна определить, к какой категории этот человек принадлежит: младенец, ребенок, подросток или взрослый, и вывести соответствующее сообщение. Ниже приведены возрастные рекомендации:
• если возраст 1 год или меньше, то он или она - младенец;
• если возраст старше l года, но моложе 13 лет, то он или она- ребенок;
• если возраст не менее 13 лет, но моложе 20 лет, то он или она - подросток;
• если возраст более 20 лет, то он или она- взрослый.
4. Римские цифры. Напишите программу, которая предлагает пользователю ввести число в диапазоне от 1 до 10. Программа должна показать для этого числа римскую цифру. Если число находится вне диапазона 1-10, то программа должна вывести сообщение об ошибке. В табл. приведены римские цифры для чисел от 1 до 10.
5. Масса и вес. Ученые измеряют массу физического тела в килограммах и вес в ньютонах. Если известна величина массы тела в килограммах, то при помощи приведенной ниже формулы можно рассчитать вес в ньютонах: 
вес= масса х 9,8.
Напишите программу, которая просит пользователя ввести массу тела и затем вычисляет его вес. Если вес тела больше 500 Н (ньютонов), то вывести сообщение, говорящее о том, что тело слишком тяжелое. Если вес тела меньше 100 Н, то показать сообщение, что оно слишком легкое.
6. Волшебные даты. Дата 10 июня 1960 года является особенной, потому что если ее записать в приведенном ниже формате, то произведение дня и месяца равняется году:
10.06.60
Разработайте программу, которая просит пользователя ввести месяц (в числовой форме), день и двузначный год. Затем программа должна определить, равняется ли произведение дня и месяца году. Если это так, то она должна вывести сообщение, говорящее, что введенная дата является волшебной. В противном случае она должна вывести сообщение, что дата не является волшебной.
7. Цветовой микшер. Красный, синий и желтый называются основными цветами, потому что их нельзя получить путем смешения других цветов. При смешивании двух основных цветов получается вторичный цвет:
• если смешать красный и синий, то получится фиолетовый;
• если смешать красный и желтый, то получится оранжевый;
• если смешать синий и желтый, то получится зеленый.
Разработайте программу, которая предлагает пользователю ввести названия двух основных цветов для смешивания. Если пользователь вводит что-нибудь помимо названий "красный", "синий" или "желтый", то программа должна вывести сообщение об ошибке. В противном случае программа должна вывести название вторичного цвета, который получится в результате.
8. Калькулятор сосисок для пикника. Допустим, что сосиски упакованы в пакеты по 10 штук, а булочки - в пакеты по 8 штук. Напишите программу, которая вычисляет количество упаковок с сосисками и количество упаковок с булочками, необходимых для пикника с минимальными остатками. Программа должна запросить у пользователя количество участников пикника и количество хот-догов, которые будут предложены каждому   участнику. Программа должна показать приведенные ниже подробности:
• минимально необходимое количество упаковок с сосисками;
• минимально необходимое количество упаковок с булочками;
• количество оставшихся сосисок;
• количество оставшихся булочек.
9. Цвета колеса рулетки. На колесе рулетки карманы пронумерованы от 0 до 36. Ниже приведены цвета карманов:
• карман 0 - зеленый;
• для карманов с 1 по 10 карманы с нечетным номером имеют красный цвет, карманы с четным номером - черный;
• для карманов с 11 по 18 карманы с нечетным номером имеют черный цвет, карманы с четным номером - красный;
• для карманов с 19 по 28 карманы с нечетным номером имеют красный цвет, карманы с четным номером - черный;
• для карманов с 29 по 36 карманы с нечетным номером имеют черный цвет, карманы с четным номером - красный.
Напишите программу, которая просит пользователя ввести номер кармана и показывает, является ли этот карман зеленым, красным или черным. Программа должна вывести сообщение об ошибке, если пользователь вводит число, которое лежит вне диапазона от 0 до 36.
10. Игра в подсчитывание монет. Создайте игру, которая просит пользователя ввести необходимое количество монет, чтобы получился ровно один рубль. Программа должна предложить пользователю ввести количество монет достоинством 5, 10 и 50 копеек. Если итоговое значение введенных монет равно одному рублю, то программа должна поздравить пользователя с выигрышем. В противном случае программа должна вывести сообщение, говорящее о том, была ли введенная сумма больше или меньше одного рубля. Подумайте о варианте игры, где вместо рубля используется доллар и разменные монеты: пенс, пятицентовик, десятицентовик и четвертак.
11. Очки книжного магазина. Прозорливая книготорговая фирма владеет книжным магазином, который присуждает своим клиентам очки, основываясь на количестве книг, приобретенных ими ежемесячно. Очки присуждаются следующим образом:
• если клиент приобретает 0 книг, то зарабатывает 0 очков;
• если клиент приобретает 2 книги, то зарабатывает 5 очков;
• если клиент приобретает 4 книги, то зарабатывает 15 очков;
• если клиент приобретает 6 книг, то зарабатывает 30 очков;
• если клиент приобретает 8 книг или больше, то зарабатывает 60 очков.
Напишите программу, которая просит пользователя ввести количество книг, приобретенных им в этом месяце, и затем выводит присужденное количество очков.
12. Реализация программного обеспечения. Компания-разработчик программного обеспечения продает программный пакет, который реализуется в рознице за 99 долларов. Скидки за количество предоставляются в соответствии с табл.

Напишите программу, которая просит пользователя ввести количество приобретенных пакетов. Программа должна затем показать сумму скидки (если таковая имеется) и общую сумму покупки после вычета скидки.
13. Стоимость доставки. Грузовая компания срочной доставки взимает плату согласно ставкам, приведенным в табл.

Напишите программу, которая просит пользователя ввести массу пакета и показывает плату за доставку.
14. Индекс массы тела. Напишите программу, которая вычисляет и показывает индекс массы тела (ИМТ) человека. ИМТ часто используется для определения, весит ли человек больше или меньше нормы для своего. ИМТ человека рассчитывают по формуле:

где масса измеряется в килограммах, а рост - в метрах. Программа должна попросить пользователя ввести массу и рост и затем показать ИМТ пользователя. Программа также должна вывести сообщение, указывающее, имеет ли человек оптимальную, недостаточную или избыточную массу. Масса человека считается оптимальной, если его ИМТ находится между 18.5 и 25. Если ИМТ меньше 18.5, то считается, что человек весит ниже нормы. Если значение ИМТ больше 25, то считается, что человек весит больше нормы.
15. Калькулятор времени. Напишите программу, которая просит пользователя ввести количество секунд и работает следующим образом.
• В минуте 60 секунд. Если число введенных пользователем секунд больше или равно 60, то программа должна преобразовать число секунд в минуты и секунды.
• В часе 3 600 секунд. Если число введенных пользователем секунд больше или равно 3 600, то программа должна преобразовать число секунд в часы, минуты и секунды.
• В дне 86 400 секунд. Если число введенных пользователем секунд больше или равно 86 400, то программа должна преобразовать число секунд в дни, часы, минуты и секунды.
16. Дни в феврале. Февраль обычно имеет 28 дней. Но в високосный год в феврале 29 дней.
Напишите программу, которая просит пользователя ввести год. Затем она должна показать количество дней в феврале в этом году. Для определения високосных лет используйте следующие критерии.
• Определить, делится ли год на 100. Если да, то этот год високосный тогда и только тогда, если он также делится на 400. Например, 2000 является високосным годом, а 2100 нет.
• Если год не делится на 100, то этот год високосный тогда и только тогда, если он делится на 4. Например, 2008 является високосным годом, но 2009 нет.
17. Селектор ресторанов. На вашу встречу выпускников собирается прибыть группа ваших друзей, и вы хотите их повести в местный ресторан на ужин. Вы не уверены, что ваши друзья придерживаются диетических ограничений, но ваши варианты выбора ресторана будут такими.
Изысканные гамбургеры от Джо - вегетарианская: нет, веганская (строгая вегетарианская): нет, безглютеновая: нет.
Центральная пиццерия - вегетарианская: да, веганская: нет, безглютеновая: да.
Кафе за углом - вегетарианская: да, веганская: да, безглютеновая: да.
Блюда от итальянской мамы - вегетарианская: да, веганская: нет, безглютеновая: нет.
Кухня шеф-повара - вегетарианская: да, веганская: да, безглютеновая: да.
Напишите программу, которая запрашивает, есть ли в группе вегетарианцы, веганцы либо приверженцы безглютеновой диеты, после чего она выводит только те рестораны, в которые можно повести группу друзей. Вот пример вывода программы:


Комментариев нет:

Отправить комментарий