Лабораторная работа №4: Программирование разветвляющихся алгоритмов
Разработать алгоритмы, написать на языке Си программы в соответствиями с заданиями (4.1-4.10), подготовить тексты для отладки программ.
Подготовить отчет, который должен содержать:
- Титульный лист.
- Цель работы.
- Для каждой задачи:
- Условие задачи.
- Графическую схему алгоритма.
- Таблицу соответствия переменных.
- Текст программы на языке Си.
- Тесты.
- Листинг с текстом программы
- Выводы по работе.
Задание 4.1
Составить графическую схему алгоритма и написать программу вычисления функции y=f(x) в соответствии с видом функции, приведенном в табл.2.1. В программе предусмотреть вывод:
- значения аргумента функции x;
- вычисленного значения функции y;
- номер формулы, по которой производилось вычисление функции (1, 2 или 3).
Результаты и исходные данные вывести:
- в окно сообщений;
- в ячейки рабочего листа. Номер строки на рабочем листе, в которую будут выведены результаты, ввести как исходное данное.
Исходные данные для отладки программы выбрать самостоятельно. Предусмотреть отладку программы для каждого интервала изменения функции и для каждой точки ветвления функции.
Задание 4.2
Выполнить задание в соответствии со своим вариантом в таблице. Вывести исходные данные и полученные результаты. Исходные данные для отладки программы выбрать самостоятельно так, чтобы проверить все возможные варианты выполнения программы.
- Определить в какой четверти или на какой оси координатной плоскости находится точка с координатами х, у.
- Даны два числа неравных друг другу. Меньшее из них заменить их полусуммой, большее - их удвоенным произведением.
- Даны три целых положительных числа. Если все они четные, каждое число уменьшить в два раза, если хотя бы одно из них четное, увеличить каждое число на 20% , если четных чисел нет, оставить числа без изменения.
- Даны три целых числа. Найти минимальное из них и прибавить минимальное значение к числам, отличным от минимального.
- Даны три целых числа. Определить, могут ли они быть сторонами треугольника. Если могут, то определить какой это треугольник: равнобедренный, равносторонний или разносторонний.
- Даны два угла (в градусах). Определить существует ли треугольник с такими углами. Если да, то будет ли он прямоугольным.
- Даны три числа. Если одно из них положительное, то найти площадь квадрата со стороной, равной значению положительного числа. В противном случае вывести соответствующее сообщение.
- Даны числа a, b. Если b=0, то найти min (a, b), если b<0, то найти max (a, b), в противном случае каждое число уменьшить на 20%.
- Даны два целых числа неравных друг другу. Большее из них увеличить на 50%, меньшее заменить суммой заданных чисел.
- Даны числа a, b, c, d. Найти min { max (a, b), max (c, d)}.
- Даны два целых числа a, b. Найти вещественные корни уравнения ax2+b=0 или вывести сообщение об их отсутствии.
- Даны числа a, b, c, d. Если a>b>c>d, то каждое число заменить наибольшим из всех чисел, если aДаны числа a, b, c. Если все они равны нулю, вывести об этом сообщение, если среди чисел нет нулей, найти и вывести их произведение, в противном случае нули заменить суммой двух других чисел.
- Даны числа a, b, c. Вычислить max (a+b+c, abc)*min (a, b, c)
- Определить, где находится точка с координатами х, у: на окружности радиуса r, внутри круга радиуса r или вне его.
- Даны числа a, b, c, d. Если ни одно из чисел a, b, c не равно d, то найти max(d-a, d-b, d-c).
- Даны три целых числа a, b, c. Найти вещественные корни уравнения ax2+bx+c=0 или вывести сообщение об их отсутствии.
- Определить правильность даты, заданной тремя целыми числами (день, месяц, год).
- Даны три числа. Найти сумму минимального и максимального среди них.
- Даны числа a, b, c, d. Найти max {min(a, b), min(c, d)}.
- Даны три целых положительных числа. Если все они нечетные, каждое число увеличить в два раза, если хотя бы одно из них нечетное, оставить числа без изменения, если нечетных чисел нет, увеличить каждое число на 50% .
- Даны два целых числа неравных друг другу. Большее из них уменьшить на 30%, меньшее заменить произведением заданных чисел.
- Даны три числа. Если все они отрицательные, каждое число увеличить на 40%, если хотя бы одно из них отрицательное, уменьшить каждое число в два раза, если отрицательных чисел нет, оставить их без изменения.
- Даны три числа a, b, c. Если все они положительны, вычислить площадь треугольника со сторонами a, b и c. Если среди них есть хотя бы одно отрицательное число, найти сумму чисел.
- Даны числа a, b, c. Вычислить min(a+b+c, abc)* max (a, b, c)
- Даны числа a, b, c, d. Если aa>b>c>d, то каждое число уменьшить на 40%, в противном случае оставить числа без изменения.
- Даны числа a, b. Если a<0, то найти max (a, b), если a=0, то найти min (a, b), в противном случае каждое число увеличить на 50%.
- Даны числа a, b, c. Если среди них нет положительных чисел, вывести об этом сообщение, если все они положительные, найти и вывести их сумму, в противном случае положительные числа уменьшить на 20%.
- Даны числа a, b, c, d. Если ни одно из чисел a, b, c не равно d, то найти min(a-d, b-d, c-d).
- Даны числа a, b, c. Найти произведение минимального и максимального из них.
- 1,16 Найти все точки пересечения прямой, проходящей через две заданные точки: и , и окружности или выдать соответствующее сообщение в противном случае
- 2,17 Проверить, лежит ли данная точка внутри окружности , на её границе или вне окружности.
- 3,18 Найти точку пересечения двух прямых: и или выдать сообщение, если они параллельны
- 4,19 Найти точку пересечения прямой, проходящей через две заданные точки: и , и параболы , в противном случае выдать соответствующее сообщение
- 5,20 Проверить, лежит ли данная точка внутри фигуры, образованной осями координат и параболой .
- 6,21 Найти угол пересечения двух прямых и , или выдать соответствующее сообщение, если они не пересекаются
- 7,22 Найти точки пересечения прямой с осями координат, или выдать соответствующее сообщение, если они не пересекаются
- 8,23 Найти точки пересечения параболы и оси OX, или выдать соответствующее сообщение, если они не пересекаются
- 9,24 Найти уравнение прямой, перпендикулярной прямой и проходящей через точку или выдать сообщение, если такую прямую провести не возможно.
- 10,25 Проверить, является ли треугольник, заданный своими вершинами , и , равнобедренным
- 11,26 Проверить, является ли треугольник, заданный своими вершинами , и , прямоугольным
- 12,27 Проверить, является ли треугольник, заданный своими вершинами , и , равносторонним
- 13,28 Проверить, лежит ли данная точка внутри фигуры, образованной осью OX и параболой .
- 14,29 Найти все точки пересечения прямой и окружности или выдать соответствующее сообщение в противном случае
- 15,30 Определить, принадлежит ли данная точка треугольнику, образованному осями координат и прямой
Задание 4.3
- 1,16 Введите четырехзначное число. Верно ли что оно содержит 3 одинаковые цифры.
- 2,17 Введите четырехзначное число. Является ли оно полиндромом.
2222, 6116, 0440. и т.д.
- 3,18 Введите четырехзначное число. Проверьте, больше ли 10 сумма его цифр.
- 4,19 Введите четырехзначное число. Проверьте, что больше: сумма первых 2 или последних 2 цифр.
- 5,20 Введите четырехзначное число. Верно ли, что все цифры числа различны.
- 6,21 Введите четырехзначное число. Найдите последнюю цифру числа. Проверьте, не равна ли она 0.
- 7,22 Введите четырехзначное число. Проверьте, есть ли 2 одинаковые цифры в числе.
- 8,23 Введите четырехзначное число. Проверьте, равны ли первая и последняя цифра.
- 9,24 Введите четырехзначное число. Проверьте, равен ли остаток от деления первой цифры на вторую, остатку от деления третьей цифры на четвертую.
- 10, 25 Введите четырехзначное число. Проверьте, равна ли целая часть от деления первой цифры на вторую, целой части от деления третьей цифры на четвертую.
- 11, 26 Введите четырехзначное число. Проверьте, являются ли все цифры четными.
- 12, 27 Введите четырехзначное число. Проверьте, являются ли четными сумма первых двух и последних двух цифр.
- 13, 28 Введите четырехзначное число. Что больше сумма первых двух цифр или произведение вторых 2 цифр.
- 14, 29 Введите четырехзначное число. Является ли последняя цифра числа нечетной.
- 15, 30 Введите четырехзначное число. Является ли остаток от деления первой цифры на последнюю четным.
Задача 4.4
Даны действительные числа x, y. Определить, принадлежит ли точка с координатами x, y заштрихованной части плоскости.
Задание 4.5: Логические выражения
Во всех заданиях лабораторной работы требуется вывести логическое значение True, если приведенное высказывание для предложенных исходных данных является истинным, и значение False в противном случае. Все числа, для которых указано количество цифр (двузначное число, трехзначное число и т.д.), считаются целыми.
- Проверить истинность высказывания: "Квадратное уравнение A·x2 + B·x + C = 0 с данными коэффициентами A, B, C имеет вещественные корни".
- В лабораторной работе проверить истинность высказывания: "Данные числа x, y являются координатами точки, лежащей во второй координатной четверти".
- В лабораторной работе проверить истинность высказывания: "Данные числа x, y являются координатами точки, лежащей в первой или третьей координатной четверти".
- Проверить истинность высказывания: "Точка с координатами (x, y) лежит внутри прямоугольника, левая верхняя вершина которого имеет координаты (x1, y1), правая нижняя — (x2, y2), а стороны параллельны координатным осям".
- Проверить истинность высказывания: "Данное целое число является четным двузначным числом".
- Проверить истинность высказывания: "Данное целое число является нечетным трехзначным числом".
- Проверить истинность высказывания: "Среди трех данных целых чисел есть хотя бы одна пара совпадающих".
- В лабораторной работе проверить истинность высказывания: "Среди трех данных целых чисел есть хотя бы одна пара взаимно противоположных".
- Проверить истинность высказывания: "Сумма цифр данного трехзначного числа является четным числом".
- Проверить истинность высказывания: "Сумма двух первых цифр данного четырехзначного числа равна сумме двух его последних цифр".
- Проверить истинность высказывания: "Данное четырехзначное число читается одинаково слева направо и справа налево".
- В лабораторной работе проверить истинность высказывания: "Все цифры данного трехзначного числа различны".
- Проверить истинность высказывания: "Цифры данного трехзначного числа образуют возрастающую последовательность".
- Проверить истинность высказывания: "Цифры данного трехзначного числа образуют возрастающую или убывающую последовательность".
- Проверить истинность высказывания: "Цифры данного трехзначного числа образуют арифметическую прогрессию".
- Проверить истинность высказывания: "Цифры данного трехзначного числа образуют геометрическую прогрессию".
- Даны координаты для лабораторной работы (как целые от 1 до 8) двух различных полей шахматной доски. Если ладья за один ход может перейти с одного поля на другое, вывести логическое значение True, в противном случае вывести значение False.
- Даны координаты (как целые от 1 до 8) двух различных полей шахматной доски. Если король за один ход может перейти с одного поля на другое, вывести логическое значение True, в противном случае вывести значение False.
- Даны координаты (как целые от 1 до 8) двух различных полей шахматной доски. Если слон за один ход может перейти с одного поля на другое, вывести логическое значение True, в противном случае вывести значение False.
- Даны координаты для лабораторной работы (как целые от 1 до 8) двух различных полей шахматной доски. Если ферзь за один ход может перейти с одного поля на другое, вывести логическое значение True, в противном случае вывести значение False.
- Даны координаты (как целые от 1 до 8) двух различных полей шахматной доски. Если конь за один ход может перейти с одного поля на другое, вывести логическое значение True, в противном случае вывести значение False.
Задание 4.6: Условные операторы
- Даны три целых числа. Возвести в квадрат отрицательные числа и в третью степень — положительные (число 0 не изменять).
- Из трех данных чисел выбрать наименьшее.
- Из трех данных чисел выбрать наибольшее.
- Из трех данных чисел выбрать наименьшее и наибольшее.
- Перераспределить значения переменных X и Y так, чтобы в X оказалось меньшее из этих значений, а в Y — большее.
- Значения переменных X, Y, Z поменять местами так, чтобы они оказались упорядоченными по возрастанию.
- Значения переменных X, Y, Z поменять местами так, чтобы они оказались упорядоченными по убыванию.
- Даны две переменные целого типа: A и B. Если их значения не равны, то присвоить каждой переменной сумму этих значений, а если равны, то присвоить переменным нулевые значения.
- Даны две переменные целого типа: A и B. Если их значения не равны, то присвоить каждой переменной максимальное из этих значений, а если равны, то присвоить переменным нулевые значения.
- Даны три переменные: X, Y, Z. Если их значения упорядочены по убыванию, то удвоить их; в противном случае заменить значение каждой переменной на противоположное.
- Даны три переменные: X, Y, Z. Если их значения упорядочены по возрастанию или убыванию, то удвоить их; в противном случае заменить значение каждой переменной на противоположное.
- Даны целочисленные координаты точки на плоскости. Если точка не лежит на координатных осях, то вывести 0. Если точка совпадает с началом координат, то вывести 1. Если точка не совпадает с началом координат, но лежит на оси OX или OY, то вывести соответственно 2 или 3.
- Даны вещественные координаты точки, не лежащей на координатных осях OX и OY. Вывести номер координатной четверти, в которой находится данная точка.
- На числовой оси расположены три точки: A, B, C. Определить, какая из двух последних точек (B или C) расположена ближе к A, и вывести эту точку и ее расстояние от точки A.
- Даны четыре целых числа, одно из которых отлично от трех других, равных между собой. Вывести порядковый номер этого числа.
- Дан номер некоторого года (положительное целое число). Вывести соответствующий ему номер столетия, учитывая, что, к примеру, началом 20 столетия был 1901 год.
- Дан номер некоторого года (положительное целое число). Вывести число дней в этом году, учитывая, что обычный год насчитывает 365 дней, а високосный — 366 дней. Високосным считается год, делящийся на 4, за исключением тех годов, которые делятся на 100 и не делятся на 400 (например, годы 300, 1300 и 1900 не являются високосными, а 1200 и 2000 — являются).
- Для данного x вычислить значение следующей функции f, принимающей вещественные значения:
–1, если x <= 0,
f(x)= x·x, если 0 < x < 2,
4, если x >= 2.
- Для данного x вычислить значение следующей функции f, принимающей значения целого типа:
0, если x < 0,
f(x)= 1, если x принадлежит [0,1), [2,3), ... ,
–1, если x принадлежит [1,2), [3,4), ... .
- Дано целое число, лежащее в диапазоне от –999 до 999. Вывести строку — словесное описание данного числа вида "отрицательное двузначное число", "нулевое число", "положительное однозначное число" и т.д.
- Дано целое число, лежащее в диапазоне от 1 до 9999. Вывести строку — словесное описание данного числа вида "четное двузначное число", "нечетное четырехзначное число".
Задание 4.6: Оператор выбора
- Дан номер месяца (1 — январь, 2 — февраль, ...). Вывести название соответствующего времени года ("зима", "весна" и т.д.).
- Дан номер месяца (1 — январь, 2 — февраль, ...). Вывести число дней в этом месяце для невисокосного года.
- соответствующей цифры на русском языке (0 — "ноль", 1 — "один", 2 — "два", ...).
- Дано целое число в диапазоне 1 – 5. Вывести строку — словесное описание соответствующей оценки (1 — "плохо", 2 — "неудовлетворительно", 3 — "удовлетворительно", 4 — "хорошо", 5 — "отлично").
- Арифметические действия над числами пронумерованы следующим образом: 1 — сложение, 2 — вычитание, 3 — умножение, 4 — деление. Дан номер действия и два числа A и B (В не равно нулю). Выполнить над числами указанное действие и вывести результат.
- Единицы длины пронумерованы следующим образом: 1 — дециметр, 2 — километр, 3 — метр, 4 — миллиметр, 5 — сантиметр. Дан номер единицы длины и длина отрезка L в этих единицах (вещественное число). Вывести длину данного отрезка в метрах.
- Единицы массы пронумерованы следующим образом: 1 — килограмм, 2 — миллиграмм, 3 — грамм, 4 — тонна, 5 — центнер. Дан номер единицы массы и масса тела M в этих единицах (вещественное число). Вывести массу данного тела в килограммах.
Begin70. Робот может перемещаться в четырех направлениях ("С" — север, "З" — запад, "Ю" — юг, "В" — восток) и принимать три цифровые команды: 0 — продолжать движение, 1 — поворот налево, –1 — поворот направо. Дан символ C — исходное направление робота и число N — посланная ему команда. Вывести направление робота после выполнения полученной команды.
- Локатор ориентирован на одну из сторон света ("С" — север, "З" — запад, "Ю" — юг, "В" — восток) и может принимать три цифровые команды: 1 — поворот налево, –1 — поворот направо, 2 — поворот на 180 градусов. Дан символ C — исходная ориентация локатора и числа N1 и N2 — две посланные ему команды. Вывести ориентацию локатора после выполнения данных команд.
- Элементы окружности пронумерованы следующим образом: 1 — радиус (R), 2 — диаметр (D), 3 — длина (L), 4 — площадь круга (S). Дан номер одного из этих элементов и его значение. Вывести значения остальных элементов данной окружности (в том же порядке). В качестве значения Pi использовать 3.14.
Задание 4.7
- Стоимость проезда в транспорте зависит от расстояния, которое проезжает пассажир, и тарифа за 1 км пути, который устанавливается в зависимости от дальности:
если расстояние <10 км, то стоимость проезда 1 км рав¬на а1 руб.
если расстояние 10≤ и <100 км, то стоимость проезда 1 км рав¬на а2 руб.
если расстояние ≥100 км, то стоимость проезда 1 км рав¬на а3 руб. .
Определить стоимость билета для пассажиров, едущих на расстояние В.
- Имеются данные о выработке продукции за день по плану (П) и фактически (Ф). Определить величину выпуска продукции (З), зачитываемую в счет выполнения плана по формуле:
- Избыток (I>0) или недостаток рабочих (I<0) некоторого предприятия определяется по формуле, где Ф - среднемесячная численность рабочих (фактически); П - среднемесячная численность рабочих (по плану); х- процент выполнения плана по выпуску продукции. Определить, испытывает ли предприятие недостаток в рабочей силе.
- Шоферу, работающему на уборке и вывозке зерна, опла¬чивают по установленным расценкам Р (руб.) за перевезенное зерно. Если при этом количество тонн перевезенного зерна больше установлен¬ной нормы, то оплата за все перевезенное зерно производится по повышенным расценкам Р1 (руб.). Кроме того, в этом случае начисляется по С кг зерна на каждый рубль оплаты за перевезенное зерно.
Рассчитать величину оплаты за перевезенное зерно для заданных нормы перевозки (т), фактически перевезенного зерна (т) значений Р, Р1 и С .
- Предприятие выпускает продукцию, соответствующую стандарту (в исходном документе отмечается буквой С) и со знаком качества (в исходном документе отмечается буквой К).
Определить сумму выручки от реализации М единиц продукции с учетом ее качества при условии, что предприятию оплачивают по А руб. за каждое изделие, соответствующее стандарту, а за единицу изделия со знаком качества платится надбавка К % к А.
Вся продаваемая партия относится к одному виду качества.
- Решить предыдущую задачу, добавив условие, что в исходном документе может фиксироваться продукция, не соответст¬вующая стандарту (в исходном документе отмечается буквой Я). При оплате таких изделий делается скидка в размере Р % от А.
- Телефонные разговоры с тремя населенными пунктами стоят С1, С2, С3 руб./мин., соответственно. Какую сумму насчитает компьютер за разговор длительностью t минут с заданным населенным пунктом?
- Периметр цветочной клумбы вычисляется по формуле , если клумба имеет форму круга с радиусом a, по – формуле , если клумба имеет форму прямоугольника со сторонами, равными a и . Если клумба имеет форму равностороннего треугольника со стороной, равной a, то ее периметр вычисляется по формуле . Вычислить периметр цветочной клумбы заданной формы.
- Оплата работ зависит от типа выполненной работы и насчитывается по формуле, где x – объем выполненной работы. Для работ типа A налог составляет 10%, для В – 5%, для С – 20%. Ввести тип работ. Вывести насчитанную сумму, сумму налога и к выдаче.
- Известно, что 1 фут = 0.3048 м = 12 дюймов. Для расстояния, равного P м, вычислить расстояние в футах или дюймах для заданной меры (фут или дюйм).
- Время (t) на пробег автомобиля от автопредприятия до пункта первой погрузки или места подачи (нулевой пробег), ч. определяется по формуле, где L - пробег автомобиля от автопредприятия до пункта первой погрузки или места подачи (нулевой пробег), км; V – расчетная норма скорости пробега автомобиля (км/ч), принимающая следующие значения в зависимости от типа дорог: 49 км/ч для дорог с усовершенствованным покрытием, 37 км/ч для дорог с твердым покрытием, 28 км/ч для естественных грунтовых дорог.
Рассчитать время пробега автомобиля на расстояние L по дороге заданного типа.
- Себестоимость строительно-монтажных работ определяется по формуле:
, где М – стоимость используемых материалов, конструкций, электроэнергии и т.п.; З – расходы на оплату труда, А – расходы на содержание строительных машин и механизмов; Н – накладные расходы.
На строительно-монтажные работы, выполняемые хозяйственным способом, к нормам накладных расходов применяется понижающий коэффициент 0,506. На внутренние санитарно-технические работы, выполняемые в сельских районах, к нормам накладных расходов применяется коэффициент 1,15. При реконструкции действующих предприятий к нормам накладных расходов применяется коэффициент 1,1.
Рассчитать себестоимость строительно-монтажных работ заданного типа.
- Расчет прибыли (П) организации в условиях инфляции производится по формуле, где Потч – прибыль отчетного года; НН – индекс инфляции, равный (1+m)12 (m – коэффициент уровня инфляции в месяц, 12 – количество месяцев в году).
Если планируемые уровни инфляции на сырье m и на отпускную цену готовой продукции n не совпадают, то расчет прибыли выполняется по формуле, где В – объем реализации продукции в отчетном году (млн р.); НДС – налог на добавленную себестоимость (млн р.); Н – единый платеж в республиканский и местные целевые бюджетные фонды (млн р.); З – себестоимость этой продукции (млн р.);
Рассчитать планируемую прибыль организации.
- Размеры возмещения суточных расходов при длительных служебных командировках по Республике Беларусь составляют Р тыс. руб/сутки. Возмещение длительных и однодневных командировок находится в пропорции 2:1.
Рассчитать размер возмещения суточных по командировке, длящейся n суток.
- Житель РБ Беларусь решил подключиться к сети VELCOM на один из тарифных планов: "Корпоративный" или "Социальный". Известно, что его исходящие разговоры составят m часов в месяц, из которых n часов составят разговоры в стационарной сети, k часов в сетях БелСел, МТС, БеСТ и t часов в рамках закрытой абонентской группы (корпорации), т.е. m=n+k+t. Тарифы за одну минуту исходящих соединений тарифных планов "Корпоративный" и " Социальный " приведены в таблице.
Стационарная сеть БелСел, МТС, БеСТ Внутри корпорации
Корпоративный Социальный Корпоративный Социальный
220 руб. 290 руб. 255 руб. 290 руб. 28 руб.
Кроме того, тарифный план "Корпоративный" предоставляет 2,5 часа бесплатных разговоров, а тарифный план "Социальный " только один час бесплатных разговоров. Абонентская плата составляет 5250 руб. и 4500 руб. для "Корпоративного" и "Социального" планов, соответственно.
На какой тарифный план компании VELCOM выгоднее подключиться?
- Для заданных значений зарплаты и стажа рабочего некоторого предприятия определить надбавку к зарплате за стаж работы и сумму к выдаче (Зарплата + Надбавка). Надбавка составляет 40%, 25% или 15% от оклада, если стаж работы свыше 15, 10 или 5 лет, соответственно.
Задания 4.8: Написать программу и составить блок-схему
- 1,16 Переменной t присвоить значение true если тройка m,d,y – образует правильную дату иначе t=false (m-месяц, d-день, y-год.)
- 2,17 Переменной t присвоить значение true , если дата m,d,y предшествует дате m1,d1,y1, иначе t=false. (m -месяц d-день y-год )
- 3,18 Даны координаты квадрата. Определить принадлежит ли начало координат квадрату.
- 4,19 Напечатать слово “СТЕПЬ» в падеже P. Например, если Р=ТВОРИТЕЛЬНЫЙ то надо напечатать слово «СТЕПЬЮ».
- 5,20 По дате d,m,y определить дату следующего дня d1,m1,y1( d-день , m-месяц, y-год)
- 6,21 Для натурального числа k напечатать фразу «Мы нашли к грибов». Согласовать окончание слова гриб с числом к.
- 7,22 Определить к- порядковый номер того дня года, который приходится на дату D-день, M-месяц.
- 8,23 Для целого числа k от 1….99 напечатать фразу. «Мне к лет». Учитывая при этом , что при некоторых значения к слово лет надо заменять на «год» или «года».
- 9,24 Даны координаты прямоугольника . Определить является ли он квадратом.
- 10,25 Даны координаты точки . Определить принадлежит ли она прямоугольнику ABCD с координатами вершин (x1,y1), (x2,y2), (x3,y3), (x4,y4).
- 11,26 Даны действительные положительные числа a,b,c,d. Выяснить можно ли прямоугольник со сторонами а,b уместить внутри прямоугольника со сторонами с,d так чтобы каждая из сторон одного прямоугольника была параллельна или перпендикулярна каждой стороне второго прямоугольника.
- 12,27 Даны действительные числа a,b,c,x,y. Выяснить пройдет ли кирпич с ребрами a,b,c в отверстие со сторонами x,y. Просовывать кирпич в отверстие разрешается только так, чтобы каждое из его ребер было параллельно или перпендикулярно каждой из сторон отверстия.
- 13,28 Если сумма трех попарно различных чисел x,y,z меньше 1 то наименьшее из этих чисел заменить полусуммой двух других , в противном случае заменить меньшее из x,y полусуммой двух оставшихся.
- 14,29 Даны действительные числа x1,x2,x3,y1,y2,y3 Принадлежит ли начало координат треугольнику с вершинами (x1,y1) (x2,y2) (x3,y3)
- 15,30 Даны действительные числа x,y. Если x,y отрицательны, то каждое значение заменить его модулем , если отрицательно только одно из них , то оба значения увеличить на 0.5 , если оба значения неотрицательны и ни одно из них не принадлежит отрезку /0.5…2.0/, то оба значения уменьшить в 10 раз , в остальных случаях x,y оставить без изменения
Задания 4.9
- 1,16 Введите четырехзначное число. Верно ли что оно содержит 3 одинаковые цифры.
- 2,17 Введите четырехзначное число. Является ли оно полиндромом.
2222, 6116, 0440. и т.д.
- 3,18 Введите четырехзначное число. Проверьте, больше ли 10 сумма его цифр.
- 4,19 Введите четырехзначное число. Проверьте, что больше: сумма первых 2 или последних 2 цифр.
- 5,20 Введите четырехзначное число. Верно ли, что все цифры числа различны.
- 6,21 Введите четырехзначное число. Найдите последнюю цифру числа. Проверьте, не равна ли она 0.
- 7,22 Введите четырехзначное число. Проверьте, есть ли 2 одинаковые цифры в числе.
- 8,23 Введите четырехзначное число. Проверьте, равны ли первая и последняя цифра.
- 9,24 Введите четырехзначное число. Проверьте, равен ли остаток от деления первой цифры на вторую, остатку от деления третьей цифры на четвертую.
- 10, 25 Введите четырехзначное число. Проверьте, равна ли целая часть от деления первой цифры на вторую, целой части от деления третьей цифры на четвертую.
- 11, 26 Введите четырехзначное число. Проверьте, являются ли все цифры четными.
- 12, 27 Введите четырехзначное число. Проверьте, являются ли четными сумма первых двух и последних двух цифр.
- 13, 28 Введите четырехзначное число. Что больше сумма первых двух цифр или произведение вторых 2 цифр.
- 14, 29 Введите четырехзначное число. Является ли последняя цифра числа нечетной.
- 15, 30 Введите четырехзначное число. Является ли остаток от деления первой цифры на последнюю четным.
Задания 4.10
Даны действительные числа x, y. Определить, принадлежит ли точка с координатами x, y заштрихованной части плоскости.
Контрольные вопросы
- Какое выражение называется логическим?
- Какой алгоритм называется разветвляющимся?
- Как называются команды, использующиеся в разветвляющихся алгоритмах?
- Изобразите графически команду ветвления в полной форме.
- Изобразите графически команду ветвления в сокращенной форме.
- Какие операторы языка используются для программирования ветвлений?
- Какие операторы языка используются для программирования выбора?
- Какое выражение называется логическим?
- Какие значения может принимать логическое выражение?
- Перечислите операции отношения.
- Перечислите логические операции.
- Приведите таблицы результатов выполнения логических операций.
- Сокращенная форма записи оператора if?
- Полная форма записи оператора if?
- Как выполняется оператор if в сокращенной форме?
- Как выполняется оператор if в полной форме?
- Как производится проверка правильности разветвляющегося алгоритма и программы?
- Общий вид оператора выбора?
- Структура команды выбора, соответствующая оператору switch с оператором break после каждого case?
- Сформулируйте правило выполнения оператора switch.