Главная страница
Навигация по странице:

  • Магнитуда Описание

  • Задание № 5 Вариант 1

  • Расчетное задание ИСТ-11. Задание на выполнение расчетнографической работы по дисциплине Технологии программирования


    Скачать 168.48 Kb.
    НазваниеЗадание на выполнение расчетнографической работы по дисциплине Технологии программирования
    Дата23.10.2022
    Размер168.48 Kb.
    Формат файлаdocx
    Имя файлаРасчетное задание ИСТ-11.docx
    ТипДокументы
    #749405
    страница5 из 5
    1   2   3   4   5

    Вариант 12. Китайский гороскоп


    Китайский гороскоп делит время на 12-летние циклы, и каждому году соответствует конкретное животное. Один из таких циклов приведен в табл. 7. После окончания одного цикла начинается другой, то есть 2012 год снова символизирует дракона.
    Таблица 7. Китайский гороскоп

    Год

    Животное

    Год

    Животное

    2000

    Дракон

    2006

    Собака

    2001

    Змея

    2007

    Свинья

    2002

    Лошадь

    2008

    Крыса

    2003

    Коза

    2009

    Бык

    2004

    Обезьяна

    2010

    Тигр

    2005

    Петух

    2011

    Кролик

    Напишите программу, которая будет запрашивать у пользователя год рождения и выводить ассоциированное с ним название животного по китайскому гороскопу. При этом программа не должна ограничиваться только годами из приведенной таблицы, а должна корректно обрабатывать все годы нашей эры.

    Вариант 13. Шкала Рихтера


    В табл. 8 приведены диапазоны магнитуд землетрясений по шкале Рихтера с описаниями.
    Таблица 8. Шкала Рихтера

    Магнитуда

    Описание землетрясения

    Меньше 2,0

    Минимальное

    Больше или равно 2,0 и меньше 3,0

    Очень слабое

    Больше или равно 3,0 и меньше 4,0

    Слабое

    Больше или равно 4,0 и меньше 5,0

    Промежуточное

    Больше или равно 5,0 и меньше 6,0

    Умеренное

    Больше или равно 6,0 и меньше 7,0

    Сильное

    Больше или равно 7,0 и меньше 8,0

    Очень сильное

    Больше или равно 8,0 и меньше 10,0

    Огромное

    10.0 и больше

    Разрушительное

    Ваша программа должна запрашивать у пользователя магнитуду землетрясения по шкале Рихтера и выводить на экран описание уровня, соответствующего введенному значению. Например, если пользователь введет значение 5,5, нужно вывести сообщение о том, что этой магнитуде соответствует умеренный уровень землетрясения.


    Задание № 4

    Вариант 1. Билеты в зоопарк


    В зоопарке цена входного билета зависит от возраста посетителя. Дети до двух лет допускаются бесплатно. Дети в возрасте от трех до 12 лет могут посещать зоопарк за $14,00. Пенсионерам старше 65 лет вход обойдется в $18,00, а обычный взрослый билет стоит $23,00.

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

    Вариант 2. Биты четности


    Определение бита четности – это простой механизм выявления ошибок при передаче данных в условиях низкой надежности соединения, например по телефонной линии. Идея заключается в том, что после передачи каждых восьми бит следом отправляется бит четности, позволяющий определить наличие ошибки при передаче одного бита из восьми.

    При этом можно использовать как контроль четности, так и контроль нечетности. В первом случае бит четности, посылаемый следом за группой из восьми бит данных, выбирается таким образом, чтобы общее количество переданных единичек в числе восьми бит данных и проверочного бита было четным. Во втором случае их количество должно быть нечетным.



    Подсказка. Пользователь должен вводить последовательность в виде строки. После ввода вы можете определить количество нулей и единиц во введенной последовательности при помощи метода count. Информацию о работе этого метода можно найти в онлайне.
    Напишите программу, вычисляющую значение бита четности для групп из восьми бит, введенных пользователем, с использованием контроля четности. Пользователь может вводить комбинации из восьми бит бесконечное количество раз, а индикатором окончания ввода пусть снова будет пустая строка. После каждой введенной группы из восьми бит программа должна выводить на экран сообщение о том, чему должен равняться бит четности: 0 или 1. Также осуществляйте контроль ввода и выводите соответствующее сообщение об ошибке, если пользователь ввел последовательность, отличную от восьми бит.

    Вариант 3. Плата за такси


    Представьте, что сумма за пользование услугами такси складывается из базового тарифа в размере $4,00 плюс $0,25 за каждые 140 м поездки. Напишите функцию, принимающую в качестве единственного параметра расстояние поездки в километрах и возвращающую итоговую сумму оплаты такси. В основной программе должен демонстрироваться результат вызова функции.



    Подсказка. Цены на такси могут меняться со временем. Используйте константы для представления базового тарифа и плавающей ставки, чтобы программу можно было легко обновлять при изменении цен.



    Вариант 4. Расчет стоимости доставки


    Интернет-магазин предоставляет услугу экспресс-доставки для части своих товаров по цене $10,95 за первый товар в заказе и $2,95 – за все последующие. Напишите функцию, принимающую в качестве единственного параметра количество товаров в заказе и возвращающую общую сумму доставки. В основной программе должны производиться запрос количества позиций в заказе у пользователя и отображаться на экране сумма доставки.

    Вариант 5. Случайный номерной знак


    Представьте, что в вашем регионе устаревшим является формат номерных автомобильных знаков из трех букв, следом за которыми идут три цифры. Когда все номера такого шаблона закончились, было решено обновить формат, поставив в начало четыре цифры, а за ними три буквы.

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

    Задание № 5

    Вариант 1
    Игра «Жизнь» Конвея — клеточный автомат для имитационного моделирования, позволяющий создавать интересные узоры на основе простых правил. Изобрел ее математик Джон Конвей в 1970 году, а сделала известной рубрика «Математические игры» Мартина Гарднера в журнале Scientific American. Программисты и специалист по вычислительной технике сегодня очень любят эту скорее интересную визуализацию, чем настоящую «игру». Двумерная доска содержит сетку из «клеток», которые все следуют трем простым правилам:

    • живые клетки с двумя или тремя соседями остаются живыми на следующем шаге моделирования;

    • мертвые клетки с ровно тремя соседями оживают на следующем шаге моделирования

    • все прочие клетки умирают или остаются мертвыми на следующем шаге.

    Состояние клетки на следующем шаге моделирования (живая или мертвая) зависит только от текущего состояния. Клетки не «помнят» старых состояний. Существует множество исследований, посвященных узорам, генерируемым на основе этих простых правил. К сожалению, профессор Конвей умер от осложнений COVID-19 в апреле 2020 года. Больше информации об игре «Жизнь» вы можете найти в статье «Википедии» https://ru.wikipedia.org/wiki/Игра_«Жизнь».
    Колония клеток пусть задана множеством (set) пар координат (множество кортежей), например:

    Пример: colony = { (1,1), (2,1), (3,1), (3,2), (2,3) }

    5.1 Напишите функцию count_neighbors(cell), которая возвращает количество соседей у клетки с координатами cell = (x, y).

    5.2 Напишите функцию get_colony_area(colony), которая возвращает множество (set) клеток, граничащих с колонией, включая клетки, занятые колонией.

    5.3 Напишите функцию next_generation(colony), которая возвращает множество (set) клеток следующего поколения, количество умерших и родившихся клеток.
    1   2   3   4   5


    написать администратору сайта