МЕТОДИЧЕСКИЕ УКАЗАНИЯ
ПО выполнениЮ ПРАКТИЧЕСКИХ И ЛАБОРАТОРНЫХ РАБОТ
ОП.08. ТЕОРИЯ АЛГОРИТМОВ
по специальности 09.02.03 Программирование в компьютерных системах
2017 г.
Содержание
Введение 5
Цели и задачи дисциплины – требования к результатам освоения дисциплины 6
Лабораторная работа № 1 «Разработка и построение блок-схем алгоритмов линейной структуры » 7
Лабораторная работа № 2 «Разработка и построение блок-схем алгоритмов разветляющейся структуры» 9
Лабораторная работа № 3 «Разработка и построение блок-схем алгоритмов с использованием одномерных массивов» 11
Лабораторная работа № 4 «Разработка и построение блок-схем алгоритмов с использованием одномерных массивов» 13
Лабораторная работа № 5 «Разработка и построение блок-схем алгоритмов с использованием двумерных массивов» 15
Лабораторная работа № 6 «Разработка и построение блок-схем алгоритмов с использованием двумерных массивов» 17
Лабораторная работа № 7 «Разработка и построение блок-схем алгоритмов с монолитным изменением параметров» 19
Практическая работа № 1 «Алгоритмы вычислительной геометрии» 21
Практическая работа № 2 «Анализ алгоритма решения задачи» 23
Практическая работа № 3 «Анализ рексурсивного алгоритма» 25
Заключение 27
Введение
Данные методические рекомендации предназначены для студентов по выполнению практических и лабораторных работ по ОП.08. Теория алгоритмов
Целью лабораторно-практического практикума является формирование практических при составлении блок-схем алгоритмов для решения различного рода задач.
Практикум явился результатом практических и лабораторных занятий, проводимых по специальности 09.02.03 Программирование в компьютерных системах по ОП.08. Теория алгоритмов в течение последних нескольких лет.
Данные методические указания составлены в помощь преподавателям и обучающимся. Методическая разработка содержит указания по выполнению практических и лабораторных работ по дисциплине.
Цели и задачи дисциплины – требования к результатам освоения
дисциплины
В результате освоения дисциплины обучающийся должен
уметь:
В результате освоения дисциплины обучающийся должен уметь:
В результате освоения дисциплины обучающийся должен знать:
основные модели алгоритмов;
методы построения алгоритмов;
методы вычисления сложности работы алгоритмов.
| Профессиональные компетенции |
ПК1.1 | Выполнять разработку спецификаций отдельных компонент |
ПК1.2 | Осуществлять разработку кода программного продукта на основе готовых спецификаций на уровне модуля |
| Общие компетенции |
ОК1 | Понимать сущность и социальную значимость своей будущей профессии, проявлять к ней устойчивый интерес. |
ОК2 | Организовывать собственную деятельность, выбирать типовые методы и способы выполнения профессиональных задач, оценивать их эффективность и качество. |
ОК3 | Принимать решения в стандартных и нестандартных ситуациях и нести за них ответственность. |
ОК4 | Осуществлять поиск и использование информации, необходимой для эффективного выполнения профессиональных задач, профессионального и личностного развития. |
ОК5 | Использовать информационно-коммуникационные технологии в профессиональной деятельности. |
ОК6 | Работать в коллективе и в команде, эффективно общаться с коллегами, руководством, потребителями. |
ОК7 | Брать на себя ответственность за работу членов команды (подчиненных), за результат выполнения заданий. |
ОК8 | Самостоятельно определять задачи профессионального и личностного развития, заниматься самообразованием, осознанно планировать повышение квалификации. |
ОК9 | Ориентироваться в условиях частой смены технологий в профессиональной деятельности. |
Лабораторная работа № 1
«Разработка и построение блок-схем алгоритмов линейной структуры »
Цель работы: приобретение навыков работы с одномерными массивами.
Содержание отчёта:
1) Постановка задачи для конкретного варианта.
2) Разработка блок-схемы программы.
3) Анализ допущенных ошибок.
4) Распечатка программы с результатами.
Методические указания:
При выполнении этой работы следует помнить, что:
1) Исходные данные должны включать положительные, отрицательные числа и нули.
2) Программа должна работать с любым допустимым набором данных.

Лабораторная работа № 2
«Разработка и построение блок-схем алгоритмов разветляющейся структуры»
Цель работы: приобретение навыков работы с одномерными массивами.
Содержание отчёта:
1) Постановка задачи для конкретного варианта.
2) Разработка блок-схемы программы.
3) Анализ допущенных ошибок.
4) Распечатка программы с результатами.
Методические указания:
При выполнении этой работы следует помнить, что:
1) Исходные данные должны включать положительные, отрицательные числа и нули.
2) Программа должна работать с любым допустимым набором данных.
 |  |
 -
|  -
|

-
|   |

-
|
-
|
 |
Определить, попадает ли точка а с координатами x и y внутрь круга с радиусом r. Центр круга совпадает с началом координат. |
Определить, принадлежит ли точка k с координатами x и y прямоугольнику ABCD. A(a,b), B(a,c), C(d, c), D(d, b). | -
|
Даны два числа x и y. Выяснить, верно ли, что 0xyxy. Если верно, то на печать должна быть выведена 1, в противном случае – 0. | Даны числа x, y, z. Найти min (x2+y2, y2+z2, x2). |
-
| -
|
Лабораторная работа № 3
«Разработка и построение блок-схем алгоритмов с использованием одномерных массивов»
Цель работы: приобретение навыков работы с одномерными массивами.
Содержание отчёта:
1) Постановка задачи для конкретного варианта.
2) Разработка блок-схемы программы.
3) Анализ допущенных ошибок.
4) Распечатка программы с результатами.
Методические указания:
При выполнении этой работы следует помнить, что:
1) Исходные данные должны включать положительные, отрицательные числа и нули.
2) Программа должна работать с любым допустимым набором данных.
В массиве из 20 целых чисел найти наибольший элемент и поменять его местами с первым элементом.
Дан целый массив X[15]. Получить количество и сумму компонент, принадлежащих отрезку [1;5], а элементы массива, меньшие 20, заменить на 0.
В вещественном векторе a[20], отрицательные компоненты увеличить на 0.5, а положительные заменить на 0.1. Подсчитать сумму компонент, принадлежащих отрезку [-1;2].
Все компоненты вещественного вектора Y(Y0, Y1, . . . , Yn), предшествующие первой отрицательной компоненте (или весь вектор, если в нем таких компонент нет) уменьшить на f.
Дан вещественный вектор X(X0, X1, . . . , Xn). Выяснить, какой элемент (минимальный или максимальный) встретится в векторе раньше.
Дан вещественный вектор X(X0, X1, . . . , X29). Подсчитать число и сумму компонент, принадлежащих отрезку [D,G], а все XiR заменить на нули .
Дан массив X(X0, X1, . . . X19). Получить сумму первых 10 элементов и из нее вычесть произведение оставшихся членов.
Дан вещественный вектор X(X0, X1,. . . . , Xn). Найти минимальный элемент этого вектора. Все компоненты вектора, не большие модуля этого минимального элемента уменьшить в 20 раз.
Даны действительные числа A1 . . . . , An. Если в результате замены отрицательных членов последовательности их квадратами, члены будут образовывать неубывающую последовательность, то получить сумму членов исходной последовательности, в противном случае – произведение.
Даны целое m и вещественные массивы X[M], Y[M], Z[M]. Получить k – число компонент вектора X, принадлежащих отрезку [0;0.5], l – число компонент вектора Y, принадлежащих отрезку [-2;2], p – число компонент вектора Z, принадлежащих отрезку [1;5].
Даны две последовательности A(10), B(10). Найти произведение элементов, принадлежащих отрезку от K до H.
Подсчитать для массива X(X1, X2, . . . , X100) количество элементов, ближайшим целым числом для которого является 1.
Дана последовательность A(n). Среди членов, для которых выполняется неравенство IA(I)I+1. Найти max, найти произведение этих членов.
Векторы M(10) и B(10) целочисленные. Построить по ним вектор G, в котором элементами были бы суммы соответствующих M и B. Найти max всех трех векторов.
В массиве из 10 вещественных чисел найти наименьший элемент и поменять его местом с последним элементом.
Даны два вектора. Определить: у какого вектора наибольшее количество положительных элементов; у какого из них максимальный элемент встречается раньше
Лабораторная работа № 4
«Разработка и построение блок-схем алгоритмов с использованием одномерных массивов»
Цель работы: приобретение навыков работы с одномерными массивами.
Содержание отчёта:
1) Постановка задачи для конкретного варианта.
2) Разработка блок-схемы программы.
3) Анализ допущенных ошибок.
4) Распечатка программы с результатами.
Методические указания:
При выполнении этой работы следует помнить, что:
1) Исходные данные должны включать положительные, отрицательные числа и нули.
2) Программа должна работать с любым допустимым набором данных.
Даны натуральное число n, действительные числа A1, . . . , An. Выяснить, является ли последовательность упорядоченной по убыванию; если да, то получить сумму членов последовательности с четными номерами.
Если в данной последовательности действительных чисел A1, . . . , An есть хотя бы один член, меньший, чем число K, то все отрицательные члены заменить их квадратами, оставив остальные без изменения; в противном случае домножить все члены на число L.
Даны целые A1, . . . ., An. Из членов данной последовательности выбрать наибольший. Получить новую последовательность из N целых чисел (0 и 1), заменяя ai нулем, если ai не совпадает с выбранным значением и заменяя ai единицей, если совпадает.
У вещественного вектора X[20] подсчитать количество отрицательных компонент и количество компонент, принадлежащих отрезку [0;5.2].
Дан вещественный вектор X[10]. Составить программу, которая обеспечит выбор и печать минимального и максимального значения элемента данного массива по убыванию.
Дан целый вектор Z(15). Найти количество и сумму тех членов вектора, которые делятся на 5 и не делятся на 7.
Если у вектора A(10) есть компонента со значением равным B, то все положительные компоненты заменить их квадратами.
Найти максимальный элемент матрицы A(n*m), номер строки и столбца, на пересечении которых он находится.
Дан вещественный вектор X(X0, X1, . . . , X30). Подсчитать количество нулевых, сумму и количество положительных и отрицательных элементов вектора.
Дан вещественный вектор Y(Y0, Y1, . . Y25). Все отрицательные компоненты с четными номерами заменить их квадратами.
Дан вещественный вектор. Все его элементы, большие 0, умножить на 10, остальные оставить без изменения и упорядочить полученный вектор по возрастанию.
Дана последовательность A1, . . . , An. Какое число встретится раньше в последовательности: положительное или отрицательное. Если все члены последовательности равны 0, сообщить об этом.
Дан вещественный вектор X(X0, X1, . . . , Xn). Найти минимальный элемент этого вектора. Все компоненты вектора, не большие модуля этого минимального элемента уменьшить в 20 раз.
Элементы вектора X[15] упорядочить по возрастанию, присвоить переменной k номер элемента вектора, равного числу y, или нулю, если такого элемента нет.
Найти три наибольших и два наименьших элементов массива Y(Y0,Y1, . . . ,Yn).
Дан вещественный вектор X(X0, X1, . . . ,X29). Подсчитать число и сумму компонент, принадлежащих отрезку [d, g], а все xi
Лабораторная работа № 5
«Разработка и построение блок-схем алгоритмов с использованием двумерных массивов»
Цель работы: приобретение навыков работы с одномерными массивами.
Содержание отчёта:
1) Постановка задачи для конкретного варианта.
2) Разработка блок-схемы программы.
3) Анализ допущенных ошибок.
4) Распечатка программы с результатами.
Методические указания:
При выполнении этой работы следует помнить, что:
Исходные данные должны включать положительные, отрицательные числа и нули.
Программа должна работать с любым допустимым набором данных.
Дана вещественная матрица B(m*m). Вычислить произведение суммы всех элементов данной матрицы на их разность. |
Дана матрица В (6, 6). Найти сумму каждого столбца матрицы. |
Определить, является ли матрица C(n*n) единичной и вывести сообщение об этом. |
Найти произведение каждой четной строки матрицы B(n*m). Среди найденных произведений найти минимальное значение. |
Определить количество элементов каждого столбца матрицы A(n*n), принадлежащих отрезку ( 3, 7] и запомнить их в массиве Y. |
Дана вещественная матрица В(n*m). Упорядочить массив по возрастанию элементов каждого столбца. |
Найти среднее арифметическое элементов каждого столбца матрицы B(n*m) и запомнить их в массиве Y. |
Дана матрица A(n*m). Все отрицательные элементы данной матрицы возвести в квадрат, а положительные – в куб. |
Дана действительная квадратная матрица B(n*n). Найти сумму элементов каждого четного столбца матрицы. |
Найти максимальный элемент среди всех элементов тех строк заданной матрицы, которые упорядочены по возрастанию. |
Найти наибольшие элементы каждой строки матрицы A(n*m) и записать их в массив Y. |
Дана действительная квадратная матрица А(n*m). Преобразовать матрицу по правилу: поэлементно вычесть последнюю строку из всех строк, кроме последней. |
Написать программу, которая проверяет, находится ли введенное с клавиатуры число в матрице A(n*n). |
Дана действительная квадратная матрица порядка 4. Заменить нулями все ее элементы, расположенные на главной диагонали и выше ее. |
Дана действительная квадратная матрица C(n*m). Найти сумму элементов каждой нечетной строки матрицы. |
Дана вещественная матрица A(n*m). Получить: k – число компонент матрицы A, принадлежащих отрезку [3; 5]; s – сумму компонент, не принадлежащих отрезку [7; 10]. |
Лабораторная работа № 6
«Разработка и построение блок-схем алгоритмов с использованием двумерных массивов»
Цель работы: приобретение навыков работы с одномерными массивами.
Содержание отчёта:
1) Постановка задачи для конкретного варианта.
2) Разработка блок-схемы программы.
3) Анализ допущенных ошибок.
4) Распечатка программы с результатами.
Методические указания:
При выполнении этой работы следует помнить, что:
1) Исходные данные должны включать положительные, отрицательные числа и нули.
2) Программа должна работать с любым допустимым набором данных.
Дана действительная матрица A(n*n). Найти номера строк, все элементы которых больше 10. |
Дана действительная квадратная матрица порядка n, все элементы которой различны. Найти наибольший и наименьший элементы матрицы и поменять их местами. |
Дана вещественная матрица A(n*m). Логической переменной log присвоить значение True, если число отрицательных элементов этой матрицы не меньше числа положительных ее элементов. В противном случае переменной log присвоить значение False. |
Дана матрица порядка 5. Удалить из нее все отрицательные элементы, заменяя их нулями. |
Написать программу, которая вычисляет, сколько раз введенное с клавиатуры число встречается в матрице B(n*m). |
Дана действительная матрица A(n*m). Найти среднее геометрическое каждой строки матрицы и запомнить их в массиве Y. |
Дана матрица X. Если максимальный элемент главной диагонали больше 20, то вычислить сумму элементов матрицы, расположенных выше главной диагонали. Иначе – сумму элементов матрицы, расположенных ниже главной диагонали. |
Дана действительная квадратная матрица A порядка n. Найти сумму элементов, расположенных на главной диагонали. |
По вещественной квадратной матрице A(5, 5) построить вектор B(5) по правилу: Вi присвоить значение 0, если в строке с номером i матрицы есть хотя бы один отрицательный элемент, и значение 1 в противном случае. |
Определить количество положительных элементов каждого столбца матрицы A(n*n) и запомнить их в массиве Y. |
По заданной квадратной матрице M(5*5) построить вектор, состоящий из положительных элементов матрицы. |
Дана целочисленная матрица С(n*m). Поменять местами первый и последний столбцы. |
Дана вещественная матрица M(4; 3). Подсчитать число отрицательных и сумму положительных элементов данной матрицы. |
Найти среднее арифметическое элементов каждой строки матрицы M(n*n) и запомнить их в массиве Y. |
В вещественной матрице B(n*m) найти количество элементов, принадлежащих отрезку [2; 7]. |
Дана действительная матрица D(n*m). Найти номера столбцов, все элементы которых равны нулю. |
Лабораторная работа № 7
«Разработка и построение блок-схем алгоритмов с монолитным изменением параметров»
Цель работы: приобретение навыков работы с одномерными массивами.
Содержание отчёта:
1) Постановка задачи для конкретного варианта.
2) Разработка блок-схемы программы.
3) Анализ допущенных ошибок.
4) Распечатка программы с результатами.
Методические указания:
При выполнении этой работы следует помнить, что:
1) Исходные данные должны включать положительные, отрицательные числа и нули.
2) Программа должна работать с любым допустимым набором данных.
1 Даны две строки s1 и s2. Пусть w – первое из слов строки s1, которое есть и в строке s2. Найти слово, предшествующее первому вхождению w в s1.
2 Даны две строки. Получить строку, в которой чередуются слова первой и второй строки. Если в одной из строк число слов больше, чем в другой, то оставшиеся слова зтой строки должны быть дописаны в строку-результат.
3 Даны две строки. Пусть n1 – число слов в первой строке, а n2 – во второй(n1 n2). Добавить в конец первой строки, последние n2-n1 слов второй строки.
4 Удалить из данной строки слова, содержащие заданную последовательность символов.
5 Дан текст, заканчивающийся точкой. Соседние слова разделены запятыми. Определить количество слов-палиндромов, которые начинаются с буквы “а”.
6 Преобразовать строку, заменяя каждое слово “this” словом “the”.
7 Определить, упорядочены ли лексикографически слова данного предложения.
8 Вывести слова данного предложения, которые отличны от последнего слова.
9 Преобразовать строку таким образом, чтобы после каждого заданного символа sym1 был вставлен символ sym2, если sym2 не следует за sym1 в исходной строке.
10 Определить, входит ли в заданный текст каждая буква слова “key”.
11 Преобразовать строку таким образом, чтобы цифры каждого слова были перенесены в начало слова, изменив порядок следования цифр в слове на обратный.
12 Преобразовать строку, заменяя каждую цифру соответствующим ей числом пробелов.
13 Определить, есть ли в данной строке одинаковые слова.
14 Даны две строки. Определить последнее из слов первой строки, которое есть во второй строке.
15 Преобразовать строку, изменив порядок следования слов в строке на обратный.
16 Преобразовать строку таким образом, чтобы цифры каждого слова были перенесены в конец слова, изменив порядок следования их в слове на обратный.
Практическая работа № 1
«Алгоритмы вычислительной геометрии»
Цель работы: приобретение навыков работы в построении алгоритмов вычислительной геометрии.
Содержание отчёта:
1) Постановка задачи для конкретного варианта.
2) Разработка блок-схемы программы.
3) Анализ допущенных ошибок.
4) Распечатка программы с результатами.
Методические указания:
При выполнении этой работы следует помнить, что:
1) Исходные данные должны включать положительные, отрицательные числа и нули.
2) Программа должна работать с любым допустимым набором данных.
Построить триангуляцию с N вершинами эллиптической области, заданной неравенством {(x,y): Ax2 +2Bxy+cy2
Определить минимальное значение минимальных углов треугольников такой триангуляции.(ОК-1)- I.УВ, (ОПК-4)- I. УВ, (ПК-1)-I. УВ.
Пусть на плоскости задан многоугольник и точка внутри него. Найти сторону многоугольника наименее удаленную от этой точки.(ОК-1)-I.УВ, (ОПК-4)- I. УВ, (ПК-1)-I. УВ.
Определить площадь минимального многоугольника, содержащего заданные N точек на плоскости.(ОК-1)-I.УВ, (ОПК-4)- I. УВ, (ПК-1)-I. УВ
Задано N прямоугольников на плоскости со сторонами параллельными координатным осям. Найти площадь объединения этих прямоугольников.(ОК-1)-I.УВ, (ОПК-4)- I. УВ, (ПК-1)-I. УВ.
Дано N прямоугольников на плоскости. Требуется определить, на сколько частей эти прямоугольники разбивают плоскость.(ОК-1)-I.УВ, (ОПК-4)- I. УВ, (ПК-1)-I. УВ.
Определить количество целочисленных точек плоскости лежащих на сторонах заданного многоугольника с целочисленными координатами вершин.(ОК-1)-I.УВ, (ОПК-4)- I. УВ, (ПК-1)-I. УВ.
Найти центр тяжести многоугольника заданного целочисленными координатами своих N вершин.(ОК- 1)-I.УВ, (ОПК-4)- I. УВ, (ПК-1)-I. УВ.
На плоскости задано N прямых. Требуется определить число полученных отрезков с вершинами в точках пересечения прямых, не содержащих других вершин кроме концов (учесть и отрезки бесконечной длины).(ОК-1)-I.УВ, (ОПК-4)- I. УВ, (ПК-1)-I. УВ.
На плоскости задано N прямых. Требуется определить число полученных многоугольных кусков плоскостей с вершинами в точках пересечения прямых (учесть и неограниченные области).(ОК-1)- I.УВ, (ОПК-4)- I. УВ, (ПК-1)-I. УВ.
На сфере задан сферический треугольник. Определить попадает ли внутрь него заданная точка.(ОК-1)- I.УВ, (ОПК-4)- I. УВ, (ПК-1)-I. УВ.
В заданном наборе из N точек на плоскости найти тройку, образующую треугольник минимальной ненулевой площади.(ОК-1)-I.УВ, (ОПК-4)- I. УВ, (ПК-1)-I. УВ.
Для заданного набора отрезков на плоскости определить количество различных пар параллельных отрезков.(ОК-1)-I.УВ, (ОПК-4)- I. УВ, (ПК-1)-I. УВ.
Для заданного набора N точек на плоскости найти прямоугольник минимальной площади, содержащий все указанные точки. Стороны прямоугольника не обязаны быть параллельными координатным осям.(ОК-1)-I.УВ, (ОПК-4)- I. УВ, (ПК-1)-I. УВ.
Задано N кругов на плоскости. Определить является ли данная система кругов попарно не пересекающейся.(ОК-1)-I.УВ, (ОПК-4)- I. УВ, (ПК-1)-I. УВ.
Практическая работа № 2
«Анализ алгоритма решения задачи»
Цель работы: приобретение навыков работы в построении сложных алгоритмов.
Содержание отчёта:
1) Постановка задачи для конкретного варианта.
2) Разработка блок-схемы программы.
3) Анализ допущенных ошибок.
4) Распечатка программы с результатами.
Методические указания:
При выполнении этой работы следует помнить, что:
1) Исходные данные должны включать положительные, отрицательные числа и нули.
2) Программа должна работать с любым допустимым набором данных.
1 Составить алгоритм вычисления суммы кубов трех чисел.
2 Составить алгоритм вычисления среднего арифметического четырех чисел.
3 Составить алгоритм, позволяющий: вывести все элементы 3-х значного целого числа в обратном порядке.
4 Проверить, превышает ли 1000 произведение двух натуральных двузначных чисел, вводимых с клавиатуры.
5 Составить алгоритм, позволяющий: ввести целое число с клавиатуры, если оно положительное посчитать корень из него, иначе – возвести его в квадрат и вывести соответствующее сообщение на экран.
6 Составить алгоритм, позволяющий: ввести целое число с клавиатуры, если его значение меньше 200, - вывести на экран соответствующий числу - символ по кодам ACII.
7 Составить алгоритм, позволяющий: ввести два числа с клавиатуры и определить, какое из них больше их среднего арифметического.
8 Составить алгоритм программы, устанавливающей, одного ли знака два числа, вводимые с клавиатуры.
9 Составить алгоритм. Превышает ли площадь прямоугольника со сторонами a, b площадь круга радиуса r=(a+b)/4. Данные вводятся с клавиатуры.
10 Найти сумму десяти произвольных чисел. Результат обозначить через S.
11 Вычислить z=åI, где I меняется от m до n, m и n вводятся с клавиатуры.
12 Вычислить p=åi2 , где I меняется от m до n. N и m вводится с клавиатуры.
13 Каждое число вводить по очереди в переменную х. В цикле осуществлять ввод очередного значения х и выполнять операции сложения чисел и увеличения счетчика на 1.
14 Составить алгоритм, позволяющий: ввести n чисел с клавиатуры; из них найти минимальное; вывести соответствующее сообщение на экран.
Практическая работа № 3
«Анализ рексурсивного алгоритма»
Цель работы: приобретение навыков работы с одномерными массивами, двумернвыми массивами.
Содержание отчёта:
1) Постановка задачи для конкретного варианта.
2) Разработка блок-схемы программы.
3) Анализ допущенных ошибок.
4) Распечатка программы с результатами.
Методические указания:
При выполнении этой работы следует помнить, что:
1) Исходные данные должны включать положительные, отрицательные числа и нули.
2) Программа должна работать с любым допустимым набором данных.
Дано натуральное число n. Выведите все числа от 1 до n.
Даны два целых числа A и В (каждое в отдельной строке). Выведите все числа от A до B включительно, в порядке возрастания, если A B, или в порядке убывания в противном случае.
В теории вычислимости важную роль играет функция Аккермана A(m,n), определенная следующим образом:
Даны два целых неотрицательных числа m и n, каждое в отдельной строке. Выведите A(m,n).
Дано натуральное число N. Выведите слово YES, если число N является точной степенью двойки, или слово NO в противном случае.
Дано натуральное число N. Вычислите сумму его цифр.
Дано натуральное число N. Выведите все его цифры по одной, в обратном порядке, разделяя их пробелами или новыми строками.
Дано натуральное число N. Выведите все его цифры по одной, в обычном порядке, разделяя их пробелами или новыми строками.
Дано натуральное число n1. Проверьте, является ли оно простым. Программа должна вывести слово YES, если число простое и NO, если число составное.
Дано натуральное число n1. Выведите все простые множители этого числа в порядке неубывания с учетом кратности.
Дано слово, состоящее только из строчных латинских букв. Проверьте, является ли это слово палиндромом. Выведите YES или NO.
Дана последовательность натуральных чисел (одно число в строке), завершающаяся числом 0. Выведите все нечетные числа из этой последовательности, сохраняя их порядок.
Дана последовательность натуральных чисел (одно число в строке), завершающаяся числом 0. Выведите первое, третье, пятое и т.д. из введенных чисел. Завершающий ноль выводить не надо.
Дана последовательность натуральных чисел (одно число в строке), завершающаяся числом 0. Определите наибольшее значение числа в этой последовательности.
Даны натуральные числа k и s. Определите, сколько существует k-значных натуральных чисел, сумма цифр которых равна d. Запись натурального числа не может начинаться с цифры 0.
Даны числа a и b. Определите, сколько существует последовательностей из a нулей и b единиц, в которых никакие два нуля не стоят рядом.
Дано число n, десятичная запись которого не содержит нулей. Получите число, записанное теми же цифрами, но в противоположном порядке.
Заключение
Методические указания для студентов по выполнению практических и работ содержат цели, задания, методические указания к заданиям, по учебной дисциплине ОП.08.Теория алгоритмов.
Данные методические указания составлены в соответствии с ФГОС СПО по специальности 09.02.03 Программирование в компьютерных системах (базовый уровень).
ОТЧЕТ по каждой практической и лабораторной работам составляется на отдельных листах формата А4 или в тетради по следующему образцу:
Отчет по практической работе
Цель:
Задание (номер варианта, условие каждого задания, выполненное в виде постановки задачи, математическая модель задачи, алгоритм решения задачи, данные для тестирования задачи).