
- •1. Тема: Переменные, выражения и оператор присваивания
- •2. Тема: Условный оператор
- •3. Тема: Цикл for
- •4. Тема: Цикл while
- •5. Тема: Функции
- •6. Тема: Рекурсивные функции
- •7. Тема: Некоторые полезные алгоритмы (на применение инструкций управления циклом break и continue)
- •8. Тема: Массивы
- •9. Тема: Массивы (передача массива в качестве параметра)
- •10. Тема: Двумерные массивы (матрицы)
- •11. Тема: Строки
- •Основные требования при создании программ (критерии качества программ)
3. Тема: Цикл for
По данному натуральному n вычислите сумму 12+22+...+n2. Проверьте, что эта сумма равна n(n+1)(2n+1)/6.
По данному числу n вычислите значение n!.
По данному действительному числу a и натуральному n вычислите величину an.
По данным натуральным n и k вычислите значение биномиального коэффициента Cnk=n!/(k!(n-k)!) (т.е. число сочетаний из n элементов по k).
По данному натуральному числу n вычислите следующую сумму 1+1/22+1/32+...+1/n2.
Найдите все двузначные натуральные числа, которые равны удвоенному произведению своих цифр. Указание: организуйте цикл, в котором переменная i принимает значения от 10 до 99, проверьте, равна ли i удвоенному произведению своих цифр.
По данному числу n вычислите сумму 4(1-1/3+1/5-1/7+...+(-1)n/(2n+1)).
4. Тема: Цикл while
Напечатайте все точные квадраты натуральных чисел, не превосходящие данного числа n (например, при вводе n=50 программа должна вывести 1 4 9 16 25 36 49).
Дано натуральное число n. Напишите программу, вычисляющую сумму цифр числа n.
Дано натуральное число n. Напишите программу, определяющую количество нулей среди всех цифр числа n.
Дано натуральное число n. Напишите программу, определяющую наибольшую и наименьшую цифры данного числа.
Назовем число палиндромом, если оно не меняется при перестановке его цифр в обратном порядке. Напишите программу, проверяющую по данному числу n, является ли оно палиндромом. Найдите с ее помощью количество всех шестизначных палиндромов.
По данному натуральному числу n найдите следующую сумму 1+1/1!+1/2!+1/3!+...+1/n!
Даны натуральные числа a и b. Напишите программу, вычисляющую произведение ab, используя в программе лишь операции +. -, =, (обозначение в С++: !=).
Дано натуральное число n. Напишите программу, определяющую количество нулей на конце числа n!
Даны два натуральных числа a и b. Напишите программу, вычисляющую НОД(a,b) – наибольший общий делитель этих двух чисел, используя для решения алгоритм Евклида.
5. Тема: Функции
Напишите функцию double min (double a, double b, double c, double d), находящее наименьшее из четырех данных чисел.
Напишите функцию double power (double a, int n), вычисляющую значение an.
Напишите функцию bool Xor (bool x, bool y), реализующую функцию «Исключающее ИЛИ» двух логических переменных x и y. Функция Xor должна возвращать true, если ровно один из ее аргументов x или y, но не оба одновременно равны true. Функция main в программе должна запрашивать значения переменных x и y, вызывать функцию Xor(x,y) и выводить результат на экран.
Напишите «функцию голосования» bool Election(bool x, bool y, bool z), которая возвращает то значение (true или false), которое среди значений ее аргументов x, y, z встречается чаще.
Напишите функцию bool isprime (int n), возвращающую true, если натуральное число n>1 простое, и false, если составное (Указание: число является составным, если оно имеет натуральный делитель, отличный от 1 до n. Программа должна проверить делимость числа n на все числа от 2 до n-1 и вернуть false при нахождении нетривиального делителя (т.е. не равного 1 или самому числу n). Для того, чтобы проверить, что число n делится на число d нацело, необходимо сравнить остаток от деления n на d с нулем).
Реализуйте алгоритм Евклида (из предыдущего задания в виде функции int GCD(int a, int b).
Напишите функцию double dist(double x1,double y1,double x2,double y2), вычисляющую кратчайшее расстояние между двумя точками (x1,y1) и (x2,y2) на координатной плоскости.
Напишите функцию bool Inter_Sect, принимающую значение true в том случае, если отрезки с концами в точках (x1,y1),(x2,y2) и (x3,y3),(x4,y4) пересекаются хотя бы в одной точке, и false в противном случае. Параметрами функции должны являться координаты концов отрезков (все координаты – действительные числа).
Дана точка с координатами (x1,y1) и круг, задаваемый координатами центра и радиусом. Напишите функцию bool Inside, принимающую значение true в том случае, если данная точка лежит внутри (в т.ч. и на границе) заданного круга, в противном случае результат работы функции равен false. Параметрами функции являются координаты точки и центра круга, а также его радиус (действительные числа).