Линейные алгоритмы
1. Ввести с клавиатуры два целых ненулевых числа. Найти их сумму, разность, произведение и частное.
2. Ввести с клавиатуры два действительных числа. Найти среднее арифметическое их квадратов и среднее арифметическое их модулей.
3. Ввести с клавиатуры длины катетов a и b прямоугольного треугольника. Найти его периметр и площадь.
4. Дана длина ребра куба. Найти площадь грани, площадь полной поверхности и объем этого куба.
5. Найти длину окружности и площадь круга заданного радиуса R. В качестве значения Pi использовать 3.14.
6. Найти площадь кольца, внутренний радиус которого равен R1, а внешний радиус равен R2 (R1 < R2). В качестве значения Pi использовать 3.14.
7. Дана сторона равностороннего треугольника. Найти площадь этого треугольника и радиусы вписанной и описанной окружностей.
8. Дана длина окружности. Найти площадь круга, ограниченного этой окружностью. В качестве значения Pi использовать 3.14.
9. Найти расстояние между двумя точками с заданными координатами (x1, y1) и (x2, y2).
10. Ввести с клавиатуры координаты трех вершин треугольника (x1, y1), (x2, y2), (x3, y3). Найти его периметр и площадь.
11. Найти действительные корни квадратного уравнения A·x2 + B·x + C = 0, заданного своими коэффициентами A, B, C (коэффициент A не равен 0), если известно, что уравнение имеет ровно два корня.
12. Дано целое четырехзначное число. Используя операции деления / и нахождения остатка от деления %, найти сумму и произведение его цифр.
13. Скорость лодки в стоячей воде V км/ч, скорость течения реки U км/ч (U < V). Время движения лодки по озеру T1 ч, а по реке (против течения) — T2 ч. Определить путь S, пройденный лодкой.
14. Скорость первого автомобиля V1 км/ч, второго — V2 км/ч, расстояние между ними S км. Определить расстояние между ними через T часов, если автомобили удаляются друг от друга.
15. Скорость первого автомобиля V1 км/ч, второго — V2 км/ч, расстояние между ними S км. Определить расстояние между ними через T часов, если автомобили первоначально движутся навстречу друг другу.
16. Дана площадь круга. Найти длину окружности, ограничивающей этот круг. В качестве значения Pi использовать 3.14.
17. Найти периметр и площадь равнобедренной трапеции с основаниями a и b (a > b) и углом alpha при большем основании (угол дан в радианах).
18. Найти периметр и площадь прямоугольной трапеции с основаниями a и b (a > b) и острым углом alpha (угол дан в радианах).
19. Найти решение системы уравнений вида A1·x + B1·y = C1, A2·x + B2·y = C2, заданной своими коэффициентами A1, B1, C1, A2, B2, C2, если известно, что данная система имеет единственное решение.
Условные операторы
20. Даны три целых числа. Возвести в квадрат отрицательные числа и в третью степень — положительные (число 0 не изменять).
21. Из трех данных чисел выбрать наименьшее.
22. Из трех данных чисел выбрать наибольшее.
23. Из трех данных чисел выбрать наименьшее и наибольшее.
24. Перераспределить значения переменных X и Y так, чтобы в X оказалось меньшее из этих значений, а в Y — большее.
25. Значения переменных X, Y, Z поменять местами так, чтобы они оказались упорядоченными по возрастанию.
26. Значения переменных X, Y, Z поменять местами так, чтобы они оказались упорядоченными по убыванию.
27. Даны две переменные целого типа: A и B. Если их значения не равны, то присвоить каждой переменной сумму этих значений, а если равны, то присвоить переменным нулевые значения.
28. Даны две переменные целого типа: A и B. Если их значения не равны, то присвоить каждой переменной максимальное из этих значений, а если равны, то присвоить переменным нулевые значения.
29. Даны три переменные: X, Y, Z. Если их значения упорядочены по убыванию, то удвоить их; в противном случае заменить значение каждой переменной на противоположное.
30. Даны три переменные: X, Y, Z. Если их значения упорядочены по возрастанию или убыванию, то удвоить их; в противном случае заменить значение каждой переменной на противоположное.
31. Даны целочисленные координаты точки на плоскости. Если точка не лежит на координатных осях, то вывести 0. Если точка совпадает с началом координат, то вывести 1. Если точка не совпадает с началом координат, но лежит на оси OX или OY, то вывести соответственно 2 или 3.
32. Даны вещественные координаты точки, не лежащей на координатных осях OX и OY. Вывести номер координатной четверти, в которой находится данная точка.
33. На числовой оси расположены три точки: A, B, C. Определить, какая из двух последних точек (B или C) расположена ближе к A, и вывести эту точку и ее расстояние от точки A.
34. Даны четыре целых числа, одно из которых отлично от трех других, равных между собой. Вывести порядковый номер этого числа.
35. Дан номер некоторого года (положительное целое число). Вывести соответствующий ему номер столетия, учитывая, что, к примеру, началом 20 столетия был 1901 год.
36. Дан номер некоторого года (положительное целое число). Вывести число дней в этом году, учитывая, что обычный год насчитывает 365 дней, а високосный — 366 дней. Високосным считается год, делящийся на 4, за исключением тех годов, которые делятся на 100 и не делятся на 400 (например, годы 300, 1300 и 1900 не являются високосными, а 1200 и 2000 — являются).
37. Для данного x вычислить значение следующей функции f, принимающей значения целого типа: 0, если x < 0, f(x) = 1, если x принадлежит [0,1) или [2,3), f(x) = –1 в остальных случаях.
38. Найти действительные корни квадратного уравнения A·x2 + B·x + C = 0, заданного своими коэффициентами A, B, C (коэффициент A не равен 0), или вывести сообщение, что действительных корней нет.
39. Дано целое число, лежащее в диапазоне от –999 до 999. Вывести строку — словесное описание данного числа вида "отрицательное двузначное число", "нулевое число", "положительное однозначное число" и т.д.
40. Дано целое число, лежащее в диапазоне от 1 до 9999. Вывести строку — словесное описание данного числа вида "четное двузначное число", "нечетное четырехзначное число" и т.д.
Операторы цикла
41. Даны два целых числа A и B (A < B). Вывести все целые числа, расположенные между данными числами (включая сами эти числа), в порядке их возрастания, а также количество N этих чисел.
42. Даны два целых числа A и B (A < B). Вывести все целые числа, расположенные между данными числами (не включая сами эти числа), в порядке их убывания, а также количество N этих чисел.
43. Дано вещественное число A и целое число N (> 0). Вывести A в степени N: AN = A·A·...·A (числа A перемножаются N раз).
44. Дано вещественное число A и целое число N (> 0). Вывести все целые степени числа A от 1 до N.
45. Дано вещественное число A и целое число N > 0. Вывести 1 + A + A*2 + A*3 + ... + A*N.
46. Дано вещественное число A и целое число N > 0. Вывести 1 – A + A*2 – A*3 + ... + (–1)NA*N.
47. Дано целое число N (> 1). Вывести наименьшее целое K, при котором выполняется неравенство 3K > N, и само значение 3K.
48. Дано целое число N (> 1). Вывести наибольшее целое K, при котором выполняется неравенство 3K < N, и само значение 3K.
49. Дано вещественное число A (> 1). Вывести наименьшее из целых чисел N, для которых сумма 1 + 1/2 + ... + 1/N будет больше A, и саму эту сумму.
50. Дано вещественное число A (> 1). Вывести наибольшее из целых чисел N, для которых сумма 1 + 1/2 + ... + 1/N будет меньше A, и саму эту сумму.
51. Дано целое число N (> 0). Вывести произведение 1·2·...·N. Чтобы избежать целочисленного переполнения, вычислять это произведение с помощью вещественной переменной и выводить его как вещественное число.
52. Дано целое число N (> 0). Если N — нечетное, то вывести произведение 1·3·...·N; если N — четное, то вывести произведение 2·4·...·N. Чтобы избежать целочисленного переполнения, вычислять это произведение с помощью вещественной переменной и выводить его как вещественное число.
53. Дано целое число N (> 0). Вывести сумму 2 + 1/(2!) + 1/(3!) + ... + 1/(N!) (выражение N! — "N факториал" — обозначает произведение всех целых чисел от 1 до N: N! = 1·2·...·N). Полученное число является приближенным значением константы e = exp(1) (= 2.71828183...).
54. Дано вещественное число X и целое число N (> 0). Вывести 1 + X + X2/2! + ... + XN/N! (N! = 1·2·...·N). Полученное число является приближенным значением функции exp в точке X.
55. Дано вещественное число X и целое число N (> 0). Вывести X – X3/3! + X5/5! – ... + (–1)NX2N+1/(2N+1)! (N! = 1·2·...·N). Полученное число является приближенным значением функции sin в точке X.
56. Дано вещественное число X и целое число N (> 0). Вывести 1 – X2/2! + X4/4! – ... + (–1)NX2N/(2N)! (N! = 1·2·...·N). Полученное число является приближенным значением функции cos в точке X.
57. Дано вещественное число X (|X| < 1) и целое число N (> 0). Вывести X – X2/2 + X3/3 – ... + (–1)N–1XN/N. Полученное число является приближенным значением функции ln в точке 1+X.
58. Дано вещественное число X (|X| < 1) и целое число N (> 0). Вывести X – X3/3 + X5/5 – ... + (–1)NX2N+1/(2N+1). Полученное число является приближенным значением функции arctg в точке X.
59. Дано целое число N (> 2) и две вещественные точки на числовой оси: A, B (A < B). Отрезок [A, B] разбит на равные отрезки длины H с концами в N точках вида A, A + H, A + 2H, A + 3H, ..., B. Вывести значение H и набор из N точек, образующий разбиение отрезка [A, B].
60. Дано целое число N (> 2) и две вещественные точки на числовой оси: A, B (A < B). Функция F(X) задана формулой F(X) = 1 – sin(X). Вывести значения функции F в N равноотстоящих точках, образующих разбиение отрезка [A, B]: F(A), F(A + H), F(A + 2H), ..., F(B).
61. Дано число D (> 0). Последовательность чисел AN определяется следующим образом: A1 = 2, AN = 2 + 1/AN–1, N = 2, 3, ... Найти первый из номеров K, для которых выполняется условие |AK – AK–1| < D, и вывести этот номер, а также числа AK–1 и AK.
62. Дано число D (> 0). Последовательность чисел AN определяется следующим образом: A1 = 1, A2 = 2, AN = (AN–2+ AN–1)/2, N = 3, 4, ... Найти первый из номеров K, для которых выполняется условие |AK AK–1| < D, и вывести этот номер, а также числа AK–1 и AK.
Одномерные массивы
63. Дан массив размера N. Вывести его элементы в обратном порядке.
64. Дан массив размера N. Вывести вначале его элементы с четными индексами, а затем — с нечетными.
65. Дан целочисленный массив A размера 10. Вывести номер первого из тех его элементов A[i], которые удовлетворяют двойному неравенству: A[1] < A[i] < A[10]. Если таких элементов нет, то вывести 0.
66. Дан целочисленный массив размера N. Преобразовать его, прибавив к нечетным числам последний элемент. Первый и последний элементы массива не изменять.
67. Дан целочисленный массив размера N. Вывести вначале все его нечетные элементы, а затем — четные.
68. Поменять местами минимальный и максимальный элементы массива размера 10.
69. Заменить все отрицательные элементы целочисленного массива размера 10 на значение максимального.
70. Дан массив размера 10. Переставить в обратном порядке элементы массива, расположенные между его минимальным и максимальным элементами.
71. Дан массив размера N. Осуществить циклический сдвиг элементов массива влево на одну позицию.
72. Дан массив размера N и число k (0 < k < 5, k < N). Осуществить циклический сдвиг элементов массива вправо на k позиций.
73. Проверить, образуют ли элементы целочисленного массива размера N арифметическую прогрессию. Если да, то вывести разность прогрессии, если нет — вывести 0.
74. Дан массив ненулевых целых чисел размера N. Проверить, чередуются ли в нем [четные и нечетные]1|[положительные и отрицательные]2 числа. Если чередуются, то вывести 0, если нет, то вывести номер первого элемента, нарушающего закономерность.
75. Дан массив размера N. Найти количество его локальных минимумов1|максимумов2.
76. Дан массив размера N. Найти максимальный1|минимальный2 из его локальных минимумов1|максимумов2.
77. Дан массив размера N. Определить количество участков, на которых его элементы монотонно возрастают1|убывают2.
78. Дан массив размера N. Определить количество его промежутков монотонности (то есть участков, на которых его элементы возрастают или убывают).
79. Дано вещественное число R и массив размера N. Найти элемент массива, который наиболее близок к данному числу.
80. Дано вещественное число R и массив размера N. Найти два элемента массива, сумма которых наиболее1|наименее2 близка к данному числу.
81. Дан массив размера N. Найти номера двух ближайших чисел из этого массива.
82. Дан целочисленный массив размера N. Определить максимальное количество его одинаковых элементов.
83. Дан целочисленный массив размера N. Удалить из массива все элементы, встречающиеся [менее двух раз]1|[более двух раз]2|[ровно два раза]3|[ровно три раза]4.
84. Дан целочисленный массив размера N. Если он является перестановкой, то есть содержит все числа от 1 до N, то вывести 0, в противном случае вывести номер первого недопустимого элемента.
85. Дан массив размера N. Преобразовать его, вставив после каждого отрицательного элемента нулевой элемент.
86. Дан целочисленный массив размера N. Назовем серией группу подряд идущих одинаковых элементов, а длиной серии — количество этих элементов (длина серии может быть равна 1). Вывести массив, содержащий длины всех серий исходного массива.
87. Дан целочисленный массив размера N. Преобразовать массив, увеличив1|уменьшив2 каждую его серию на один элемент.
88. Дан целочисленный массив размера N. Преобразовать массив, увеличив первую1|последнюю2|все3 серии наибольшей длины на один элемент.
89. Дан целочисленный массив размера N. Вставить перед1|после2 каждой серии нулевой элемент.
90. Дано число k и целочисленный массив размера N. Поменять местами первую1|последнюю2 и k-ю серии массива. Если серий в массиве меньше k, то вывести массив без изменений.
Двумерные массивы
91. Найти минимальные значения столбцов таблицы.
92. Найти средние арифметические значения элементов строк двумерного массива.
93. Вычислить сумму элементов главной диагонали квадратной матрицы.
94. В таблице найти строку с наибольшей и наименьшей суммой элементов. Вывести на экран найденные строки.
95. Дана таблица, состоящая из натуральных чисел. Определить количество «особых» элементов массива, считая его элемент особым, если он больше суммы остальных элементов его столбца.
Символы и строки
96. Написать программу подсчета количества появлений конкретного символа в заданном фрагменте текста.
97. Написать программу подсчета количества слов в тексте.
98. Определить, является ли текст, вводимый с клавиатуры палиндромом. При этом пробелы не учитывались бы.
99. Подсчитать количество цифр среди вводимых с клавиатуры символов.
100. Преобразовать во вводимой с клавиатуры строке строчные латинские буквы в прописные.
Подпрограммы
101. Дано простое число. Найти следующее за ним простое число.
102. Для заданного натурального числа n найти наименьший нечётный натуральный делитель k (k<>1).
103. Два натуральных числа называются близнецами, если они отличаются друг от друга на 2 (например, 41 и 43). Напечатать все пары близнецов из отрезка [n, 2n], где n - заданное натуральное число, большее 2.
104. Натуральное число, в записи которого n цифр, называется числом Армстронга, если сумма его цифр, возведённая в степень n, равна самому числу. Найти все числа Армстронга от 1 до k.
105. Дано чётное число n>2. Проверить для него гипотезу Гольдбаха: каждое чётное n представляется в виде суммы двух простых чисел.