Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
task1.doc
Скачиваний:
4
Добавлен:
25.11.2018
Размер:
65.02 Кб
Скачать

Тема 3. Алгебра

01. Напечатать биномиальные коэффициенты C(i,N) при данном N<=60

02. Вычислить четность произвольной перестановки чисел 1, 2, ..., n, заданной массивом, за время O(n)

03. Вычислить обратную перестановку, не пользуясь дополнительным массивом.

!! В задачах 04-08 требуется представлять комплексные числа парами действительных чисел вида float c1[2], float c2[2] и т.д. Первый элемент пары - вещественная, а второй - мнимая часть комплексного числа.

04. Написать программы сложения, вычитания, умножения, деления двух комплексных чисел.

05. Написать программы умножения комплексного числа на действительное, проверки равенства двух комплексных чисел.

06. Написать программы вычисления модуля, аргумента, корня квадратного числа. Проверить на ЭВМ правило сложения аргументов при умножении комплексных чисел.

07. Найти комплексные корни квадратного уравнения с комплексными коэффициентами

08. Напечатать все комплексные корни уравнения ZN = C, где C - произвольное комплексное число.

09. Найти наибольший общий делитель двух (необязательно положительных) целых чисел, не равных одновременно нулю.

10. Для натуральных чисел М и N найти целые числа х,у,НОД, удовлетворяющие условиям х*М+у*N=НОД, х<=N, у<=М, НОД=НОД(М,N)

!! Элементы кольца Z/nZ будем представлять целыми числами от 0 до n-1. При таком представлении кольца вычетов операция x%n, сопоставляющая каждому целому положительному числу х его остаток от деления на n, задает естественную проекцию Z --> Z/nZ.

11. Написать программу поиска обратного элемента в кольце Z/nZ.

12. Найти все делители нуля кольца Z/nZ (n<=1000).

13. Для любого N=0,1,2,... найти в поле Z/pZ количество различных решений уравнения xN=1 .

14. Определить ранг матрицы с коэффициентами из поля Z/pZ.

15. Определить ранг целочисленной матрицы.

16. Написать программу приведения вещественной матрицы к ступенчатому виду методом Гаусса с выбором наибольшего по модулю элемента в столбце.

17. Написать программу умножения многочленов P и Q

18. Написать программу вычисления коэффициентов P(Q(x))

19. Написать программу, которая выводит первые 50 простых чисел.

20. Написать программу, которая выводит разложение на простые множители натурального числа n=<1000000.

!! Частным и остатком от деления многочлена P на многочлен Q называются такие многочлены R,S, что P=Q*S+R, deg(R)<deg(Q)

21. Написать программу деления с остатком двух многочленов, заданных своими коэффициентами

22. Напечатать все порождающие элементы мультипликативной группы поля Z/pZ (p < 128).

23. Определить, есть ли у заданного многочлена с целыми коэффициентами кратные корни.

Тема 4. Дополнительные задачи

01. Записать в файл все способы расстановки скобок в неассоциативном произведении n сомножителей.

02. Вычислить число возможных разбиений множества 1..N на K частей (число Стирлинга).

03. Записать в файл все возможные разбиения множества 1..N на K частей.

04. Вычислить число возможных разбиений числа N на слагаемые.

05. Записать в файл все возможные разбиения числа N на К слагаемых.

06. Записать в файл все последовательности цифр 0,1,2 длины n, в которые ни одна группа цифр не входит два раза подряд

07. Записать в файл все перестановки чисел от 1 до n а) в лексикографическом порядке б) так, чтобы любые две соседние перестановки отличались одной транспозицией.

08. Корабли на поле для морского боя заданы массивом NxN из нулей и единиц. Определить число кораблей.

09. Отношение на множестве из N элементов задано массивом NxN из нулей и единиц. Получить транзитивное замыкание этого отношения.

10. Массив NxN содержит длины ребер графа с N вершинами ( -1 в случае отсутствия ребра). Найти один из кратчайших путей между вершинами графа.

11. Переставить элементы массива из N элементов так, чтобы они не убывали, сделав О(N*log(N)) сравнений. Дополнительным массивом не пользоваться.

12. Даны n точек на плоскости. Построить их выпуклую оболочку (список вершин в порядке обхода) за время O(n*log(n)).

13. Найти а) объединение б) пересечение трех неубывающих числовых последовательностей (последовательности записаны в файлах и в память могут не поместиться).

14. В очень большой прямоугольной сетке из одинаковых сопротивлений к концам одного из них присоединили батарейку напряжением 1В. Найти распределение напряжений в окрестности этого сопротивления.

15. Вычислить интеграл x­n *exp(x-1) на отрезке 0..1 для n=1..15.

16. Алгоритмы p(x) и q(x) вычисляют значения двух многочленов в точке x. Составить алгоритм, который выдавал бы коэффициенты частного p/q, когда p делится на q без остатка, и ответ "не делится" в ином случае. Разность степеней p и q известна, сами степени – нет.

17. Найти число неприводимых многочленов степени M над Z/pZ.

18. Найти все неприводимые многочлены степени M над Z/pZ.

19. (Китайская теорема об остатках). Дано k взаимно простых чисел m[i]. Найти число, меньшее произведения m[i], если известны остатки от деления его на все m[i].

20. Найти число неизоморфных полугрупп из 2,3 и 4 элементов.

21. Теорема Ван дер Вардена утверждает, что при любой раскраске целочисленной оси координат в два цвета существуют одноцветные арифметические прогрессии любой длины. Для небольших K найти наименьшее N такое, что при любой раскраске отрезка длины N сушествует одноцветная арифметическая прогрессия длины K.

!! Число m называется кармайкловым, если оно не простое, и для всех b, взаимно простых с m, выполняется (bm–1–1)%m==0 (т.е. число ведет себя как простое в малой теореме Ферма).

22. Найти все кармайкловы числа в диапазоне 1..32767

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]