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

  • Цель работы

  • Задание на лабораторную работу

  • Варианты лабораторного задания 1. А)

  • 83 17

  • 170 68

  • Лабораторная работа №2. Программирование с использованием управляющих конструкций


    Скачать 252.47 Kb.
    НазваниеПрограммирование с использованием управляющих конструкций
    Дата22.10.2021
    Размер252.47 Kb.
    Формат файлаdocx
    Имя файлаЛабораторная работа №2.docx
    ТипЛабораторная работа
    #253142


    Лабораторная работа №2

    Тема: Программирование с использованием управляющих конструкций if-else…, else-if

    Цель работы: изучить особенности использования условных операторов if-else…, else-if….

    Теоретические сведения

    Условные операторы if-else…, else-if

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

    В самом простом случае синтаксис данного оператора if следующий:



    Если значение параметра «выражение» равно «истинно», выполняется оператор, иначе он пропускается программой. Следует отметить, что «выражение» является условным выражением, в котором выполняется проверка некоторого условия.

    Приведем пример использования оператора ветвления if. Следующая программа позволяет определять знак введенной переменной.

    Листинг 1. Программа определения знака введенного числа.

    #include

    int main()

    {

    float x;

    printf("Введите число: "); scanf("%f",&x);

    if(x < 0)

    printf("Введенное число %f является отрицательным.^", x);

    if(x >= 0)

    printf("Введенное число %f является неотрицательным.^", x); return 0;

    }

    Анализ приведенного текста программы показывает, что два условных оператора можно одним, используя конструкцию



    которая интерпретируется таким образом. Если «выражение» истинно, то выполняется «оператор1», иначе выполняется «оператор2».

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

    if ( выражение)

    {

    <список операторов>

    }

    else

    {

    <список операторов>

    }

    Следует отметить, что после ключевого слова else формально можно поставить еще один оператор условия if, в результате получим еще более гибкую конструкцию условных переходов:

    if(выражение1) <оператор1> else if( выражение2) <опреатор2> else <оператор3>

    Содержание отчета

    1. Титульный лист с названием лабораторной работы, номером варианта, фамилией студента и группы.

    2. Текст программ.

    3. Результаты действия программ.

    4. Выводы о полученных результатах работы программ.

    Задание на лабораторную работу

    1. Написать программу работы с условным оператором if в соответствии с номером своего варианта.

    2. Написать программу с использованием оператора switch в соответствии с номером своего варианта.

    3. Сделать выводы о полученных результатах работы программ.


    Варианты лабораторного задания

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

    Вычисление частного.

    Введите в одной строке делимое и делитель,

    затем нажмите .

    -> 12 0

    Вы ошиблись. Делитель не должен быть равен нулю.

    Б) Даны три действительных числа. Возвести в квадрат те из них, значения которых неотрицательны, и в четвертую степень — отрицательные.

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

    Введите время (минут.секунд) -> 2 90

    Ошибка! Количество секунд не может быть больше 60

    Б) Даны две точки А(х1, у1) и В(х2, у2). Составить алгоритм, определяющий, которая из точек находится ближе к началу координат.

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

    Решение квадратного уравнения

    Введите в одной строке значения коэффициентов и нажмите



    -> 12 27 -10

    Корни уравнения:

    х1 = -25.551

    х2 = -28.449

    Б) Даны два угла треугольника (в градусах). Определить, существует ли такой треугольник, и если да, то будет ли он прямоугольным.

    4. А) Написать программу вычисления стоимости покупки с учетом скидки. Скидка в 10% предоставляется, если сумма покупки больше 1000 руб. Ниже приведен рекомендуемый вид экрана во время выполнения программы (данные, введенные пользователем, выделены полужирным шрифтом).

    Вычисление стоимости покупки с учетом скидки

    Введите сумму покупки и нажмите

    -> 1200

    Вам предоставляется скидка 10%

    Сумма покупки с учетом скидки: 1080.00 руб.

    Б) Даны действительные числа х и у, не равные друг другу. Меньшее из этих двух чисел заменить половиной их суммы, а большее — их удвоенным произведением.

    5. А) Написать программу вычисления стоимости покупки с учетом скидки. Скидка в 3% предоставляется, если сумма покупки больше 500 руб, в 5% — если сумма больше 1000 руб. Ниже приведен рекомендуемый вид экрана во время выполнения программы (данные, введенные пользователем, выделены полужирным шрифтом).

    Вычисление стоимости покупки с учетом скидки.

    Введите сумму покупки и нажмите

    -> 640

    Вам предоставляется скидка 3%

    Сумма с учетом скидки: 620.80 руб.

    Б) На плоскости ХОY задана своими координатами точка А. Указать, где она расположена (на какой оси или в каком координатном угле).

    6. А) Написать программу проверки знания даты основания Санкт-Петербурга. В случае неправильного ответа пользователя, программа должна выводить правильный ответ. Ниже приведен рекомендуемый вид экрана во время выполнения программы (данные, введенные пользователем, выделены полужирным шрифтом).

    В каком году был основан Санкт-Петербург?

    Введите число и нажмите

    -> 1705

    Вы ошиблись, Санкт-Петербург был основан в 1703 году.

    Б) Даны целые числа А,С. Если числа не равны, то заменить каждое из них одним и тем же числом, равным большему из исходных, а если равны, то заменить числа нулями.

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

    В каком году началась вторая мировая война?

    Введите число и нажмите

    -> 1939

    Правильно.

    Б) Подсчитать количество отрицательных среди чисел а, b, с.

    8. А) Напишите программу проверки знания истории архитектуры. Программа должна вывести вопрос и три варианта ответа. Пользователь должен выбрать правильный ответ и ввести его номер. Ниже приведен рекомендуемый вид экрана во время выполнения программа (данные, введенные пользователем, выделены полужирным шрифтом).

    Архитектор Исаакиевского собора:

    1. Доменико Трезини

    2. Огюст Монферран

    3. Карл Росси

    Введите номер правильного ответа и нажмите -> 3

    Вы ошиблись.

    Архитектор Исаакиевского собора — Огюст Монферран.

    Б) Подсчитать количество положительных среди чисел а, b, с.

    9. А) Напишите программу проверки знания истории архитектуры. Программа должна вывести вопрос и три варианта ответа. Пользователь должен выбрать правильный ответ и ввести его номер. Ниже приведен рекомендуемый вид экрана во время выполнения программы (данные, введенные пользователем, выделены полужирным шрифтом).

    Невский проспект получил свое название:

    1. По имени реки, на берегах которой расположен Санкт-Петербург

    2. По имени близлежащего монастыря Александро-Невской лавры

    3. В память о знаменитом полководце Александре Невском

    Введите номер правильного ответа и нажмите

    -> 1

    Вы ошиблись.

    Правильный ответ: 2.

    Б) Подсчитать количество четных среди чисел а, b, с.

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

    программы.

    Введите в одной строке два целых числа и нажмите .

    -> 34 67

    34 меньше 67

    Б) Определить, делителем, каких чисел а, b, с является число k.

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

    Введите числа -> 6 7

    Сколько будет 6x7?

    Введите ответ и нажмите

    -> 56

    Вы ошиблись. 6x7=42

    Б) Программа — льстец. На экране высвечивается вопрос «Кто ты: мальчик или девочка? Введи Д или М». В зависимости от ответа на экране должен появиться текст «Мне нравятся девочки!» или «Мне нравятся мальчики!».

    12. А) Написать программу, которая выводит пример на вычитание (в пределах 100), запрашивает ответ пользователя, проверяет его и выводит сообщение "Правильно!" или "Вы ошиблись" и правильный результат. Ниже приведен рекомендуемый вид экрана во время выполнения программы (данные, введенные пользователем, выделены полужирным шрифтом).

    Введите числа -> 83 17

    Сколько будет 83-17?

    Введите ответ и нажмите

    ->67

    Вы ошиблись. 83-17=66

    Б) Перераспределить значения переменных х и у так, чтобы в х оказалось большее из этих значений, а в у — меньшее.

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

    шрифтом).

    Введите целое число и нажмите

    -> 23

    Число 23 — нечетное.

    Б) Определить правильность даты, введенной с клавиатуры (число — от 1 до 31, месяц — от 1 до 12). Если введены некорректные данные, то сообщить об этом.

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

    Введите целое число и нажмите

    -> 451

    Число 451 нацело на три не делится.

    Б) Составить программу, определяющую результат гадания на ромашке — «любит—не любит», взяв за исходное данное количество лепестков N.

    15. А) Написать программу вычисления стоимости разговора по телефону с учетом 20% скидки, предоставляемой по субботам и воскресеньям. Ниже приведен рекомендуемый вид экрана программы во время ее работы (данные, введенные пользователем, выделены полужирным шрифтом).

    Вычисление стоимости разговора по телефону.

    Введите исходные данные:

    Длительность разговора (целое количество минут) -> 3

    День недели (1 — понедельник, ... 7 — воскресенье) -> 6

    Предоставляется скидка 20%.

    Стоимость разговора: 5.52 руб.

    Б) Написать программу нахождения суммы большего и меньшего из трех чисел.

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

    Введите в одной строке через пробел

    рост (см) и вес (кг), затем нажмите

    ->170 68

    Вам надо поправиться на 2.00 кг.

    Б) Написать программу, по длинам сторон распознающую среди всех треугольников ABC прямоугольные. Если таковых нет, то вычислить величину угла С.

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

    Введите номер месяца (число от 1 до 12)

    -> 11

    Зима

    Б) Найти max{min(a, b), min(c, d)}.

    18. А) Написать программу, которая запрашивает у пользователя номер дня недели и выводит одно из сообщений: "Рабочий день","Суббота" ИЛИ "Воскресенье".

    Б) Даны три числа а, b, с. Определить, какое из них равно d. Если ни одно не равно d, то найти max(d — а, d —b, d —с).

    19. А) Написать программу, которая после введенного с клавиатуры числа (в диапазоне от 1 до 999), обозначающего денежную единицу, дописывает слово "рубль" в правильной форме. Например, 12 рублей, 21 рубль и т. д.

    Б) Даны действительные числа a,b,c. Удвоить эти числа, если a>b>c, и заменить их абсолютными значениями, если это не так.

    20. А) Написать программу, которая после введенного с клавиатуры числа (в диапазоне от 1 до 99), обозначающего денежную единицу, дописывает слово "копейка" в правильной форме. Например, 5 копеек, 41 копейка и т. д.

    Б) Составить программу, которая проверяла бы, не приводит ли суммирование двух целых чисел А и В к переполнению (т.е. к результату большему чем 32 767). Если будет переполнение, то сообщить об этом, иначе вывести сумму этих чисел.


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