- •Лабораторные работы. Сборник задач.
- •Оглавление
- •Часть 1. Лаборатоные работы
- •Работа со структурами и объединениями …………………………………….91
- •3 Задача
- •4 Задача
- •5 Задача
- •6 Задача
- •Дополнительное условие:использование цикла с предусловием.
- •1 Задача
- •2 Задача
- •Дополнительное условие: программа написана без использования функции.
- •Дополнительное условие: программа написана с использованием функций.
- •3 Задача
- •Дополнительное условие: программа написана без использования функции.
- •Дополнительное условие: программа написана с использованием функции.
- •4 Задача
- •Дополнительное условие: программа написана без использования функции
- •Дополнительное условие: программа написана с использованием функции.
- •Самостоятельная работа
- •Лабораторная работа №3
- •Самостоятельная работа
- •1 Задача
- •2 Задача
- •1 Задача
- •2 Задача
- •3 Задача
- •Лабораторная работа №6
- •1 Задача
- •1 Задача
- •2 Задача
- •3 Задача
- •1 Задача
- •1 Задача
- •2 Задача
- •3 Задача
- •4 Задача
- •Синтаксический анализатор
- •Самостоятельная работа
- •1 Задача
- •2 Задача
- •3 Задача
- •Работа с каталогами
- •Самостоятельная работа
- •1 Задача
- •2 Задача
- •1 Задача
- •2 Задача
- •3 Задача
- •1 Задача
- •2 Задача
- •1 Задача Реализовать очередь, состоящую из целых чисел
- •Комментарий:
- •2 Задача
- •1 Задача
- •Идеально-сбалансированные деревья
- •1 Задача
- •2 Задача
- •1 Задача
- •2 Задача
- •3 Задача
- •1 Задача
- •2 Задача
- •3 Задача
- •1 Задача
- •1 Задача
- •1 Уровень сложности
- •2 Уровень сложности
- •3 Уровень сложности
- •1 Уровень сложности.
- •2 Уровень сложности
- •3 Уровень сложности
- •1 Уровень сложности
- •Работа с несколькими массивами
- •Преобразование массива
- •Изменение элементов массива
- •2 Уровень сложности Формирование массива и вывод его элементов
- •Анализ элементов массива
- •Преобразование массива
- •Изменение элементов массива
- •Удаление и вставка элементов
- •Серии целых чисел
- •3 Уровень сложности Множества точек на плоскости
- •1 Уровень сложности
- •2 Уровень сложности
- •3 Уровень сложности
- •1 Уровень сложности
- •2 Уровень сложности
- •3 Уровень сложности
- •1 Уровень сложности
- •2 Уровень сложности
- •3 Уровень сложности
- •Not простое_логическое
- •(Простое_логическое знак_операции простое_логическое)
- •Построить синтаксический анализатор для понятия предложение.
- •1 Уровень сложности
- •2 Уровень сложности
- •1 Уровень сложности
- •Примеры:
- •Двусвязные списки
- •1 Уровень сложности
- •2 Уровень сложности
- •3 Уровень сложности
1 Уровень сложности
Функция f(n) определена для целых положительных чисел следующим образом:
Вычислить f(k) дляk=2,3,4,5,10
Описать рекурсивную функцию, которая подсчитывает количество цифр в тексте, заданном во входном файле (за текстом следует точка).
Дано nразличных натуральных чисел (n= 5). Напечатать все перестановки этих чисел.
Описать рекурсивную функцию вещественного типа, находящую значение N-й степени числаXпо формулам:
X 0= 1,X N= (X N/2)2причетныхN> 0,X N=X·X N–1принечетныхN> 0,X N= 1/X –NприN< 0
(X0 — вещественное число,N— целое; в формуле для четныхNдолжна использоваться операцияцелочисленного деления). С помощью этой функции найти значенияX Nдля данногоXпри пяти данных значенияхN.
Описать рекурсивную функцию целого типа, находящую C(N,K) —число сочетанийизNэлементов поK— с помощью рекуррентного соотношения:
C(N, 0) = C(N,N) = 1,C(N,K) =C(N– 1,K) +C(N– 1,K– 1) при 0 <K<N.
Параметры функции — целые числа; N> 0, 0KN. Дано числоNи пять различных значенийK. Вывести числаC(N,K) вместе с количеством рекурсивных вызовов функции, потребовавшихся для их нахождения.
Описать рекурсивную функцию вещественного типа, находящую приближенное значение корня K-й степени из числаXпо формуле:
Y0 = 1, YN+1 = YN – (YN – X/(YN)K–1)/K,
где YNобозначает при фиксированныхXиK. Параметры функции:X(> 0) — вещественное число,K(> 1) иN(> 0) — целые. С помощью функции найти для данного числаXприближенные значения его корняK-й степени при шести данных значенияхN.
Описать рекурсивную функцию NOD(A,B) целого типа, находящуюнаибольшийобщий делитель(НОД) двух целых положительных чиселAиB, используяалгоритм Евклида:
НОД(A, B) = НОД(B, A mod B), если B 0; НОД(A, 0) = A.
С помощью этой функции найти НОД(A,B), НОД(A,C), НОД(A,D), если даны числаA,B,C,D.
Описать рекурсивную функцию целого типа, которая находит сумму цифр целого числа K, не используя оператор цикла. С помощью этой функции найти суммы цифр для пяти данных целых чисел.
Описать рекурсивную функцию целого типа, которая находит количество цифр в строке S, не используя оператор цикла. С помощью этой функции найти количество цифр в каждой из пяти данных строк.
Описать рекурсивную функцию логического типа, возвращающую True, если строка Sявляетсяпалиндромом(то есть читается одинаково слева направо и справа налево), и False в противном случае. Оператор цикла в теле функции не использовать. Вывести значения функции для пяти данных строк.
Во входном файле задана непустая последовательность положительных вещественных чисел, за которой следует отрицательное число. Описать рекурсивную функцию для нахождения суммы этих положительных чисел.
Напечатать в обратном порядке заданный во входном файле текст (за текстом следует точка).
2 Уровень сложности
Функция Аккермана определена следующим образом:
Найти значение функции Аккермана при заданных n,x,y.
Вычислять при (малых!) целых неотрицательных значениях nиy.
Функция Маккарти определена следующим образом:
Маккарти(n)=
Найти значение функции Маккарти при заданном n.
Дана последовательность ненулевых целых чисел, за которой следует 0. Напечатать сначала все отрицательные числа этой последовательности, а затем – все положительные (в любом порядке).
Описать рекурсивную функцию целого типа, которая находит максимальный элемент целочисленного массива AразмераN(1N10), не используя оператор цикла. С помощью этой функции найти максимальные элементы массивовA,B,CразмераNA,NB,NCсоответственно.