- •Лекция 1
- •14 Ч. Лекции
- •58 Ч. Лабораторные работы
- •1.0 Основы алгоритмизации задач
- •1.1. Методы подготовки решения задачи на эвм
- •1.2. Алгоритмы и его свойства
- •1.3. Способы описания алгоритмов:
- •1.4. Стандартные блок-схемы
- •1.5. Базовые алгоритмические структуры
- •1.6. Методы алгоритмизации задач
- •2. Основы программирования
- •2.1. Машинный код процессора
- •2.2. Программа на языке программирования
- •2.3. Трансляторы
- •2.4. Классификация языков программирования
- •2.5. Языки низкого уровня
- •2.6. Языки высокого уровня
- •Лекция 2
- •3.0. Интегрированная среда разработки (иср) Visual c# 2010 Express
- •3.1. Основные характеристики.
- •3.2. Консольное приложение
- •3.3. Сохранение проекта
- •3.3. Структура папок при сохранении консольного приложения
- •3.5. Компиляция
- •4.2. Словарь языка
- •4.3. Комментарии
- •4.4. Идентификаторы (имена)
- •4.5. Ключевые слова
- •4.6. Числа
- •4.7. Переменные и константы
- •5.0. Структура программы консольного приложения на c#
- •Лекция 3
- •6.0. Типы данных
- •6.1. Типы значений
- •6.2. Ссылочные типы
- •6.3. Задание типов в объявлениях переменных
- •6.4. Встроенные базовые типы
- •6.5. Типы чисел Типы целых чисел
- •Типы чисел с плавающей запятой
- •Значения типов по умолчанию
- •6.6. Преобразования типов
- •6.7. Стандартное форматирование чисел
- •6.8. Символы char
- •7. Инструкции, команды
- •7.1. Выражения
- •7.2. Разделители
- •7.3. Математические операции
- •7.4. Приоритеты операций
- •Лекция 4
- •7.0. Операторы
- •7.2. Унарные операторы
- •7.3. Мультипликативные операторы
- •7.4. Аддитивные операторы (типа сложения)
- •7.5. Операторы отношений
- •7.6. Операторы присвоения
- •8.0. Инструкции
- •8.1. Безусловный переход вызовом функций
- •8.2. Оператор перехода goto
- •Лекция 5
- •9.0. Условные операторы.
- •9.1. Сложные условия
- •9.2. Инструкция if
- •9.3. Инструкции выбора switch, case
- •Лекция 6
- •10.0. Операторы цикла
- •10.1. Инструкция goto
- •10.2. Инструкция for
- •10.3. Использование нескольких управляющих переменных цикла
- •10.4. Использование переменных цикла c любым шагом их изменения
- •10.5. Инструкция while . . Цикл с предусловием
- •10.6. Инструкция do - while Цикл с постусловием
- •10.7. Накопление сумм и произведений
- •10.8. Безусловные переходы
- •Лекция 7
- •11.0. Массивы
- •11.1. Операции с массивами
- •Вывод массива
- •Ввод массива
- •Поиск максимального ( или минимального ) элемента массива
- •Поиск заданного элемента массива
- •Сортировка массива
- •11.2. Расчет статистических показателей
- •11.3. Использование генератора случайных чисел
- •11.4. Массивы строк
- •Лекция 8
- •12.0. Введение в классы, объекты и методы
- •12.1. Синтаксис класса
- •13.0. Подпрограммы
- •13.1. Основные понятия
- •13.2. Сравнение вариантов
- •13.3. Описание методов (процедур и функций)
- •13.4. Аргументы и параметры
- •13.5. Области действия имен
- •13.6. Тело метода (процедуры и функции)
- •13.7. Вызов метода. Синтаксис.
- •13.8. Функция
- •13.9. Процедура
- •14.1. Виды исключений:
- •14.2. Существуют два типа блоков:
- •Лекция 9
- •14. Исключительные ситуации
- •Лекция 10
- •15. Объектно-ориентированное программирование (ооп)
- •15.1. Классы в с#
- •15.2. Основные принципы ооп
- •Конструкторы
- •Деструкторы
- •15.3. Графическая структура понятий оо Подхода
- •15.4. Преимущества ооп:
- •Лекция 11
- •16.0. Приложение под ос Windows
- •16.1. Основные характеристики
- •16.2. Основной экран среды:
- •16.3. Окно Конструктора формы
- •16.4. Окно Редактора кода
- •16.6. Характеристика проекта
- •16.7. Сохранение проекта – приложения под Windows
- •16.8. Запуск и компиляция приложения
- •16.9. Шаблон кода:
- •16.10. Разработка приложения
- •16.11. Простейшее приложение
- •16.12. Создание интерфейса приложения
- •16.13. Определение функциональности приложения
- •16.14. Отладка
- •Лекция 12
- •17.0. Ввод и вывод данных в Windows-Приложениях
- •17.1 Ввод из поля редактирования и вывод в метку, и окно сообщения
- •17.2 Окно сообщения
- •18.0 Процедуры и функции
- •18.1 Структура процедуры
- •18.2 Структура функции
- •19. Модули
- •19.1 Свойства модуля
- •19.1. Структура модуля
- •Лекция 13
- •20.0. Массивы в Windows Forms Application
- •20.1 Операции с массивами в Windows-приложениях
- •21.0. Графика в c#
- •21.1. Рисованные изображения
- •Объект Graphics
- •Перо (Pen) или карандаш
- •Кисть (Brush) или заливка
- •Шрифты и текст
- •21.2. Методы рисования
- •21.3. Методы заливки
- •21.4. Рисование с помощью примитивов
- •21.5. Рисование графика функции
- •21.6. Растровая графика
11.1. Операции с массивами
Типовые операции при работе с массивами:
Вывод элементов массива;
Ввод элементов массива;
Поиск максимального/минимального элемента массива;
Поиск заданного элемента массива;
Сортировка массива.
Часто используемые операции: накопление суммы элементов массива, расчет среднего арифметического значения элементов массива.
Вывод массива
Под выводом массива понимается вывод на экран монитора, значений элементов заданного / сформированного массива.
При выводе всех элементов массива удобно использовать оператор цикла for или foreach, при этом переменная счетчик может быть использована в качестве индекса элементов массива.
Пример вывода одномерного массива Team:
static void Main(string[] args)
{
string[] Team = { "Zenit ", "Dynamo ", "Sparta ", "Rotor ", "CSK " };
foreach (string i in (string[])Team)
{
Console.Write("{0} ", i); //вывод элементов массива Team
}
Console.ReadKey();
}
Ввод массива
Под вводом массива понимается процесс получения от пользователя во время работы программы, значений элементов массива.
При вводе элементов массива удобно использовать оператор цикла for или foreach, при этом переменная счетчик может быть использована в качестве индекса элементов массива.
Иногда в качестве элементов массива используют случайные числа, которые можно получить с помощью функции Random() - случайное число в диапазоне 0..1.
Программа помещает в массив A числа от 0 до 9.
static void Main(string[] args)
{
int[] A = new int[10]; // одномерный массив А из 10 целых чисел
for (int i=0; i<10; i++)
A[i] = i;
for (int i = 0; i < 10; i++)
Console.WriteLine("A[" + i + "]=" + A[i]);
Console.ReadKey();
}
Схематично элементы массива А в
оперативной памяти машины можно представить:
-
0
1
2
3
4
5
6
7
8
9
A[0]
A[1]
A[2]
A[3]
A[4]
A[5]
A[6]
A[7]
A[8]
A[9]
П
ример
заполнения двумерного массива Т[3x4]
числами от 1 до 12:
static void Main(string[] args)
{
int[ , ] T = new int[3,4];
Console.WriteLine("Сформированная матрица");
Console.WriteLine();
for (int i = 0; i < 3; ++i )
{
for (int j = 0; j < 4; ++j )
{
T[i, j] = (i * 4) + j + 1;
Console.Write("{0,2} ",T[i, j]);
}
Console.WriteLine();
}
Console.ReadKey();
}
В этом примере элемент массива Т[0,0] примет значение 1, Т[0,1] примет значение 2 … Т[2,3] примет значение 12. Схематично элементы массива Т можно представить:
-
i
индексы
, j0
1
2
3
0
1
2
3
4
1
5
6
7
8
2
9
10
11
1
T[2,3]
2
