Задача № 1.
1. Создать приложение Windows Forms в среде C#.
2. Создать исходные и результирующие контейнеры с элементами, являющимися целыми числами (создать 1 -2 исходных контейнера и 1-2 – результирующих).
3. Написать метод для ввода исходных данных и заполнения исходных контейнеров начальными значениями, заданными пользователем. В случае ввода некорректных значений необходимо, чтобы программа не завершалась аварийно.
4. Имеется двусвязный список, очередь и число D. Найти в двусвязном списке первое попавшееся число D, и занести перед ним элементы из очереди до тех пор, пока первым элементом очереди не станет число D. Если в очереди нет числа равного D, то перенести из очереди все элементы. На экран вывести количество первый элемент очереди. Если очередь пуста, то вывести «null».
5. В случае невозможности выполнения необходимых действий выдать соответствующее сообщение.
6. Вывести содержимое результирующих контейнеров и данные на форму.
Задача № 2.
Дано натуральное число n > 1. Проверьте, является ли оно простым. Программа должна вывести слово YES, если число простое и NO, если число составное. Алгоритм должен иметь сложность O (log n). Понятно, что задача сама по себе нерекурсивна, т.к. проверка числа n на простоту никак не сводится к проверке на простоту меньших чисел. Поэтому нужно добавить еще один параметр рекурсии: делиттель числа, и именно по этому параметру делать рекурсию.