строке 8 в совокупности составляют заголовок функции. значение факториала будет печататься на экране.
рекурсивный вызов вернёт значение 5!.
Строки 9 — 14 составляют тело функции faktorial(). Внутри тела в строке 10 объявлена переменная rezult, которая будет хранить результат нахождения n! После чего, в строках 11-12 Объявлен оператор цикла for для нахождения факториала. В строке 13 объявлен оператор cout, с помощью которого
Теперь, когда функция объявлена можно воспользоваться ею. В строке 21 запускается функция faktorial(digit), внутри скобочек функции передаётся аргумент, т. е. значение, содержащееся в переменной digit. Результат работы программы
Практическая часть.
Линейные алгоритмы.
Задача 1.
Напишите программу для расчета по двум формулам. Предварительно подготовьте тестовые примеры по второй формуле с помощью калькулятора (результат вычисления по первой формуле должен совпадать со второй). Список математических функций:
z1 = sin2a + sin5a – sin3a / cosa- cos3a + cos5a.
z2 = tg3a.Для их использования необходимо подключить к программе заголовочный файл .
Решение: Рис.1.
Рис 1. Код программы задачи: 1.
Проверка программы задачи: 1, с разными входными данными. Рис. 2,3.
Рис 2. Рис 3.
Условные алгоритмы.
Задача 1.
Поезд прибывает на станцию в a часов в b минут и оправляется в с часов в d минут. Пассажир пришел на платформу в n часов в m минут. Будет ли поезд стоять на платформе? Числа:а,b,с,d,n,m- целые, 0<а<23, 0 Решение: Рис.1.
Рис 1. Код программы задачи: 1.
Для получения нужного результата мы можем перевести вводимые данные в единое значение. И если сумма значений присутствия пассажира находиться между значениями прибытия и отправления поезда. Чтобы проверить это нам нужен всего лишь один оператор условия “if”, который будет проверять на истинность два условия вместе, и если условие равно истине, то поезд будет на платформе, в противном случае поезда не будет.
Проверка программы задачи: 1, с разными исходными данными. Рис. 2,3.
Рис 2. Рис. 3.
Задача 2.
Даны 6 входных данных. Три из которых дата рождения первого человека, следующие три дата рождения второго человека. Программа должна определить кто из них старше и вывести ответ на экран.
Решение: Рис.4.
Рис 4. Код программы задачи: 2.
Для выполнения задачи перевести вводимые значения в одно средние значение, средние значение дней в меяце – 30, средние значение дней в году – 365 дней.
Проверка программы задачи: 2, с разными входными данными. Рис. 5,6.
Рис.5. Рис. 6.
Циклы.
Задача 1. В этой задаче нужно вывести значение «Z1» в соответвие исходных данных.
Начиная с 0 до 5, с шагом 0.5.
Формула: z1 = sin2a + sin5a – sin3a / cosa- cos3a + cos5a.
Рис 1. Код программы задачи 1.
Рис. 1.
Рис. 2. Результат программы:
Рис. 2.
Одномерные массивы.
Задача 1.
В массиве из 10 вещественных чисел элементов, вычислить
1) Сумму элементов массива с нечетными номерами.
2) Сумму элементов массива расположенных между первым и последними отрицательными числами (включая их самих).
Рис 1. Код программы задачи 1.
Рис. 1.
Рис. 2. Результат программы:
Рис. 2.
Задача 2.
Ввести ФИО как одно данное строчного типа. Определить длину строки и количество букв «а» в ней. Вывести длины фамилии и имени.
Рис 3. Код программы задачи 2.
Рис. 3.
Двумерные массивы.
Задача 1.
Дана матрица. Вывести на экран первую и последнюю строки. На вход дается размерность массива, и все его элементы.
Для выполнения данной задачи нам надо использовать вложенные циклы. И вывести первую строчку, с индексом «0» и последнюю у которой, индекс будет равен «n-1».
Рис 1. Код программы задачи 1.
Рис. 1.
Рис. 2. Результат программы:
Рис. 2.