- •Лекция 1. Платформа Microsoft .Net Framework 2.0
- •Понятия приложения, проекта, решения
- •Среда разработки Visual Studio .Net
- •Создание первого проекта
- •Компиляция и выполнение программы в среде clr
- •1.2. Рекомендации по выполнению практикума
- •1.3. Рекомендации по самостоятельной работе
- •Лекция 2. Технология объектно-ориентированного программирования
- •Состав языка
- •Типы данных
- •Переменные и константы
- •Организация ввода-вывода данных. Форматирование
- •Вывод данных
- •Ввод данных
- •Практикум
- •Самостоятельная работа
- •Лекция 3. Операции
- •Выражения и преобразование типов
- •Практикум
- •Самостоятельная работа
- •Лекция 4. Операторы языка c#
- •Операторы следования
- •Операторы ветвления
- •Условный оператор if
- •Оператор выбора switch
- •Операторы цикла
- •Цикл с предусловием while
- •Цикл с постусловием do while
- •Цикл с параметром for
- •Вложенные циклы
- •Операторы безусловного перехода
- •Оператор безусловного перехода goto
- •Оператор выхода break
- •Оператор перехода к следующей итерации цикла continue
- •Практикум
- •Самостоятельная работа
- •Лекция 5. Методы: основные понятия
- •Методы: основные понятия. Перегрузка методов. Методы: основные понятия
- •Перегрузка методов
- •Практикум
- •Самостоятельная работа Теоретический материал
- •Практическое задание
- •Лекция 6. Рекурсивные методы
- •Практикум
- •Самостоятельная работа
- •Лекция 7. Обработка исключений
- •Оператор try
- •Операторы checked и unchecked
- •Генерация собственных исключений
- •Полезные совет
- •Практикум
- •Самостоятельная работа Теоретический материал Вычисление конечных сумм и произведений
- •Вычисление бесконечных сумм
- •Практическое задание
- •Лекция 8. Массивы
- •Одномерные массивы
- •Массивы и исключения
- •Массив как параметр
- •Массив как объект
- •Многомерные массивы
- •Ступенчатые массивы
- •Оператор foreach и его использование при работе с массивами
- •Практикум
- •Самостоятельная работа Теоретический материал Вставка и удаление элементов в массивах
- •Практические задания
- •Лекция 9. Символы и строки
- •Символы char
- •Неизменяемые строки string
- •Изменяемые строки
- •Практикум
- •Самостоятельная работа
- •Запуск программы из командной строки
- •Передача параметров в метод Main из командной строки
- •Практические задачи
- •Лекция 10. Регулярные выражения
- •Метасимволы в регулярных выражениях
- •Поиск в тексте по шаблону
- •Редактирование текста
- •Практикум
- •Самостоятельная работа Теоретический материал
- •Практическое задание
- •Лекция 11. Организация с#-системы ввода-вывода
- •Байтовый поток
- •Символьный поток
- •Двоичные потоки
- •Перенаправление стандартных потоков
- •Практикум
- •Самостоятельная работа
- •Лекция 12. Работа с файловой системой
- •12.1.Работа с файловой системой: классы Directory и Filе и классы DirectoryInfo и FileInfo Работа с файловой системой
- •Работа с каталогами Абстрактный класс FileSystemInfo
- •Класс DirectoryInfo
- •Класс Directory
- •Работа с файлами Класс Filelnfo
- •Класс File
- •12.2. Практикум
- •12.3. Самостоятельная работа
- •Данные: поля и константы
- •Конструкторы
- •Конструкторы экземпляра
- •Конструкторы класса
- •Свойства
- •"Один класс - один файл",
- •13.2. Практикум
- •13.3. Самостоятельная работа
- •13.4. Классы: деструкторы, индексаторы, операции класса, операции преобразования типов Деструкторы
- •Индексаторы
- •Операции класса
- •Унарные операции
- •Бинарные операции
- •Операции преобразования типов
- •13.5. Практикум (продолжение практикума 13)
- •13.6. Самостоятельная работа
- •Лекция 14. Иерархия классов
- •14.1 Иерархия
- •Наследование
- •Использование защищенного доступа
- •Наследование конструкторов
- •Многоуровневая иерархия
- •Переменные базового класса и производного класса
- •Виртуальные методы
- •Абстрактные методы и классы
- •Запрет наследования
- •14.2. Практикум
- •14.3. Самостоятельная работа
- •Лекция 15. Интерфейсы и структуры
- •15.1. Пользовательские и стандартные интерфейсы. Структуры Интерфейсы
- •Стандартные интерфейсы .Net
- •Структуры
- •15.2. Практикум
- •15.3. Самостоятельная работа Теоретический материал
- •Задание
- •Лекция 16. Коллекции
- •16.1. Классификация коллекций. Коллекции общего назначения: стек. Очередь, динамический массив, хеш-таблица Коллекции
- •Коллекции общего назначения
- •Класс Stack
- •Класс Queue
- •Класс ArrayList
- •Класс Hashtable
- •16.2. Практикум
- •16.3. Самостоятельная работа
- •Дополнения Дополнение. Операции с#
- •Дополнение. Математические функции языка с#
- •Литература
Практикум
Разработать рекурсивный метод (возвращающий значение):
для вычисления -го члена следующей последовательности.
для вычисления -го члена следующей последовательности
для нахождения наибольшего общего делителя методом Евклида:
для вычисления значения функции Аккермана для неотрицательных чисел и. Функция Аккермана определяется следующим образом:
для вычисления числа сочетаний где, используя следующие свойства
при .
вычисляющий число а, для которого выполняется неравенство , где– натуральное число. Для подсчета числа а использовать формулу:
для вычисления (–вещественное,, а–целое) по формуле:
. Вычислить значение для различныхи.
для вычисления , где– натуральное число. Для заданных натуральных чиселивычислить с помощью разработанного метода значение выражения.
для вычисления значения функции .
Найти ее значение при заданном натуральном .
для вычисления цепной дроби: . Найти значение данной дроби при заданном натуральном.
Разработка рекурсивных методов ( не возвращающих значений):
Даны первый член и разность арифметической прогрессии. Написать рекурсивный метод для нахождения -го члена и суммыпервых членов прогрессии.
Даны первый член и знаменатель геометрической прогрессии. Написать рекурсивный метод для нахождения n-го члена и суммы первых членов прогрессии.
Разработать рекурсивный метод, который по заданному натуральному числу() выведет на экран все натуральные числа не большев порядке возрастания. Например, для, на экран выводится.
Разработать рекурсивный метод, который по заданному натуральному числу () выведет на экран все натуральные числа не большев порядке убывания. Например, для, на экран выводится.
Разработать рекурсивный метод для вывода на экран стихотворения:
10 лунатиков жили на луне
10 лунатиков ворочались во сне
Один из лунатиков упал с луны во сне
9 лунатиков осталось на луне
9 лунатиков жили на луне
9 лунатиков ворочались во сне
Один из лунатиков упал с луны во сне
8 лунатиков осталось на луне
…...
И больше лунатиков не стало на луне
Дано натуральное число. Разработать рекурсивный метод для вывода на экран следующей последовательности чисел:
1
2
2
3
3
3
…
n
n
n
…
n
Дано натуральное число . Разработать рекурсивный метод для вывода на экран следующей последовательности чисел:
1
2
1
3
2
1
…
n
n-1
n-2
…
1
Разработать рекурсивный метод для вывода на экран цифр натурального числа в прямом порядке. Применить эту процедуру ко всем числам из интервала от до.
Разработать рекурсивный метод для перевода числа из десятичной системы счисления в двоичную.
Разработать рекурсивный метод для перевода числа из двоичной системы счисления в десятичную.
Разработать рекурсивный метод для вывода на экран всех делителей заданного натурального числа .
Дано натуральное четное число . Разработать рекурсивный метод для вывода на экран следующей картинки:
*********
(0 пробелов, n звездочек)
********
(1 пробел, n-1 звездочка)
*******
(2 пробела, n-2 звездочки)
…
*
(n-1 пробел, 1 звездочка)
Дано натуральное четное число . Разработать рекурсивный метод для вывода на экран следующей картинки:
* *
(n пробелов между звездочками)
** **
(n-2 пробела)
*** ***
(n-4 пробела)
…
…
***** *****
(2 пробела)
**********
(0 пробелов)
***** *****
(2 пробела)
…
…
*** ***
(n-4 пробела)
** **
(n-2 пробела)
* *
(n пробелов
Дано натуральное число . Разработать рекурсивный метод для вывода на экран следующей картинки:
1
(1 раз)
222
(3 раза)
33333
(5 раз)
…
(n раз)
33333
(5 раз)
222
(3 раза)
1
(1 раз)
Разработать рекурсивный метод для вывода на экран следующей картинки:
AAAAAAAAAA…AAAAAAAAAA |
(80 раз) |
BBBBBBBBB…BBBBBBBB |
(78 раз) |
СССССССС …СССССССС |
(76 раз) |
… |
… |
YYY…YYY |
(32 раза) |
ZZ...ZZ |
(30 раз) |
YYY…YYY |
(32 раза) |
… |
… |
СССССССС …СССССССС |
(76 раз) |
BBBBBBBBB…BBBBBBBB |
(78 раз) |
AAAAAAAAAA…AAAAAAAAAA |
(80 раз) |