Содержание
- 2. ©Павловская Т.А. (НИУ ИТМО) Основы языка С#
- 3. ©Павловская Т.А. (НИУ ИТМО) Состав языка Символы: буквы: A-Z, a-z, _, буквы нац. алфавитов цифры: 0-9,
- 4. ©Павловская Т.А. (НИУ ИТМО) Вид Примеры Булевские true false Целые десятич. 8 199226 0Lu 16-ричн. 0xA
- 5. ©Павловская Т.А. (НИУ ИТМО) внутреннее представление данных => множество их возможных значений допустимые действия над данными
- 6. ©Павловская Т.А. (НИУ ИТМО) Основная классификация типов C#
- 7. ©Павловская Т.А. (НИУ ИТМО) Хранение в памяти величин значимого и ссылочного типа
- 8. ©Павловская Т.А. (НИУ ИТМО) Логический (булевский) и целые
- 9. ©Павловская Т.А. (НИУ ИТМО) Остальные
- 10. ©Павловская Т.А. (НИУ ИТМО) using System; namespace A { class Class1 { static void Main() {
- 11. ©Павловская Т.А. (НИУ ИТМО) Переменные Переменная — это величина, которая во время работы программы может изменять
- 12. ©Павловская Т.А. (НИУ ИТМО) Общая структура программы на С# пространство имен Класс А Класс В Метод
- 13. ©Павловская Т.А. (НИУ ИТМО) Область действия и время жизни переменных Переменные описываются внутри какого-л. блока: 1)
- 14. ©Павловская Т.А. (НИУ ИТМО) Инициализация переменных При объявлении можно присвоить переменной начальное значение (инициализировать). int number
- 15. ©Павловская Т.А. (НИУ ИТМО) Тип результата выражения Если входящие в выражение операнды одного типа и операция
- 16. ©Павловская Т.А. (НИУ ИТМО) Явное преобразование типа Автоматическое (неявное) преобразование возможно не всегда, а только если
- 17. ©Павловская Т.А. (НИУ ИТМО) Неявные арифметические преобразования типов в C# при отсутствии линии возникает ошибка компиляции
- 18. ©Павловская Т.А. (НИУ ИТМО) using System; namespace A { class Class1 { static void Main() {
- 19. ©Павловская Т.А. (НИУ ИТМО) using System; namespace A { class Class1 { static void Main() {
- 20. ©Павловская Т.А. (НИУ ИТМО) using System; namespace A { class Class1 { static void Main() {
- 21. ©Павловская Т.А. (НИУ ИТМО) using System; namespace A { class Class1 { static void Main() {
- 22. ©Павловская Т.А. (НИУ ИТМО) using System; namespace CA1 { class Class1 { static void Main() {
- 23. ©Павловская Т.А. (НИУ ИТМО) Управляющие операторы языка высокого уровня: следование ветвление цикл передача управления Реализуют логику
- 24. ©Павловская Т.А. (НИУ ИТМО) Блок (составной оператор) Блок — последовательность операторов, заключенная в операторные скобки: begin
- 25. ©Павловская Т.А. (НИУ ИТМО) Условный оператор if if ( a if ( a d || a
- 26. ©Павловская Т.А. (НИУ ИТМО) Оператор выбора switch switch ( выражение ){ case константное_выражение_1: [ список_операторов_1 ]
- 27. ©Павловская Т.А. (НИУ ИТМО) Пример: Калькулятор на четыре действия using System; namespace ConsoleApplication1 { class Class1
- 28. ©Павловская Т.А. (НИУ ИТМО) Операторы цикла: с предусловием - while с постусловием - do с параметром
- 29. ©Павловская Т.А. (НИУ ИТМО) Цикл с предусловием while ( выражение ) оператор using System; namespace ConsoleApplication1
- 30. ©Павловская Т.А. (НИУ ИТМО) Цикл с постусловием do оператор while выражение; using System; namespace ConsoleApplication1 {
- 31. ©Павловская Т.А. (НИУ ИТМО) using System; namespace ConsoleApplication1 { class Class1 { static void Main() {
- 32. ©Павловская Т.А. (НИУ ИТМО) Передача управления оператор break — завершает выполнение цикла, внутри которого записан оператор
- 33. ©Павловская Т.А. (НИУ ИТМО) using System; namespace ConsoleApplication1 { class Class1 { static void Main() {
- 34. Простая проверка ввода ©Павловская Т.А. (НИУ ИТМО) // пример проверки формата вводимого значения: double a; if
- 35. Проверка ввода с помощью цикла do-while using System; namespace ConsoleApplication1 { class Program { static void
- 36. Рекомендуемая структура обработки ошибок исходных данных ©Павловская Т.А. (НИУ ИТМО) ошибка 1? ввод данных сообщение 1
- 37. ©Павловская Т.А. (НИУ ИТМО) Понятие «исключительная ситуация» При вычислении выражений могут возникнуть ошибки (переполнение, деление на
- 38. ©Павловская Т.А. (НИУ ИТМО) Механизм обработки исключений Функция или операция, в которой возникла ошибка, генерируют исключение;
- 39. ©Павловская Т.А. (НИУ ИТМО) Пример 1: try { // Контролируемый блок } catch ( OverflowException e
- 40. ©Павловская Т.А. (НИУ ИТМО) Пример 2: проверка ввода static void Main() { try { Console.WriteLine( "Введите
- 41. ©Павловская Т.А. (НИУ ИТМО) Рекомендации по программированию – 1/2 Главная цель, к которой нужно стремиться, —
- 42. ©Павловская Т.А. (НИУ ИТМО) Рекомендации по программированию – 2/2 В программе необходимо предусматривать реакцию на неверные
- 43. ©Павловская Т.А. (НИУ ИТМО) Основы ООП
- 44. ©Павловская Т.А. (СПбГУ ИТМО) Достоинства ООП использование при программировании понятий, близких к предметной области; возможность успешно
- 45. ©Павловская Т.А. (СПбГУ ИТМО) Недостатки ООП идеи ООП не просты для понимания и в особенности для
- 46. ©Павловская Т.А. (СПбГУ ИТМО) Абстрагирование и инкапсуляция При представлении реального объекта с помощью программного необходимо выделить
- 47. ©Павловская Т.А. (СПбГУ ИТМО) Наследование Наследование (inheritance) - это процесс, посредством которого один объект может приобретать
- 48. ©Павловская Т.А. (СПбГУ ИТМО) Полиморфизм ООП позволяет писать гибкие, расширяемые и читабельные программы. Во многом это
- 49. ©Павловская Т.А. (СПбГУ ИТМО) Понятие класса Класс является типом данных, определяемым пользователем. Он должен представлять собой
- 50. ©Павловская Т.А. (СПбГУ ИТМО) Описание класса [ атрибуты ] [ спецификаторы ] class имя_класса [ :
- 51. ©Павловская Т.А. (СПбГУ ИТМО) Элементы класса
- 52. ©Павловская Т.А. (СПбГУ ИТМО) Описание объекта (экземпляра) Класс является обобщенным понятием, определяющим характеристики и поведение множества
- 53. ©Павловская Т.А. (СПбГУ ИТМО) Данные: поля и константы Данные, содержащиеся в классе, могут быть переменными или
- 54. ©Павловская Т.А. (СПбГУ ИТМО) Методы Метод — функциональный элемент класса, реализующий вычисления или другие действия. Методы
- 55. Синтаксис метода [ атрибуты ] [ спецификаторы ] тип имя_метода ( [ параметры ] ) тело_метода
- 56. ©Павловская Т.А. (СПбГУ ИТМО) Параметры методов Параметры определяют множество значений аргументов, которые можно передавать в метод.
- 57. ©Павловская Т.А. (СПбГУ ИТМО) Вызов метода Вычисляются выражения, стоящие на месте аргументов. Выделяется память под параметры
- 58. Способы передачи аргументов в метод При передаче по значению метод получает копии значений аргументов, и операторы
- 59. ©Павловская Т.А. (СПбГУ ИТМО) Типы параметров В С# четыре типа параметров: параметры-значения - для исходных данных
- 60. Передача аргумента по значению код метода область параметров аргумент копия аргумента При вызове метода на месте
- 61. Передача аргумента по ссылке (ref, out) код метода область параметров аргумент адрес аргумента При вызове метода
- 62. ©Павловская Т.А. (СПбГУ ИТМО) Пример: параметры-значения и ссылки ref using System; namespace ConsoleApplication1 { class Class1
- 63. ©Павловская Т.А. (СПбГУ ИТМО) Пример: выходные параметры out using System; namespace ConsoleApplication1 { class Class1 {
- 64. ©Павловская Т.А. (СПбГУ ИТМО) Summary: Правила применения параметров Для параметров-значений используется передача по значению. Этот способ
- 65. ©Павловская Т.А. (СПбГУ ИТМО) Ключевое слово this Чтобы обеспечить работу метода с полями того объекта, для
- 66. ©Павловская Т.А. (СПбГУ ИТМО) Использование явного this В явном виде параметр this применяется: 1) чтобы возвратить
- 67. Конструкторы Конструктор – особый вид метода, предназначенный для инициализации объекта (конструктор экземпляра) или класса (статический конструктор).
- 68. ©Павловская Т.А. (СПбГУ ИТМО) Конструкторы экземпляра Конструктор вызывается автоматически при создании объекта класса с помощью операции
- 69. ©Павловская Т.А. (СПбГУ ИТМО) Сквозной пример класса class Monster { public Monster() // конструктор { name
- 70. ©Павловская Т.А. (СПбГУ ИТМО) Свойства Свойства служат для организации доступа к полям класса. Как правило, свойство
- 71. Пример: счетчик (свойства) class Counter { public Counter() { } public Counter( int n ) {
- 72. ©Павловская Т.А. (СПбГУ ИТМО) Сквозной пример класса: свойства class Monster { public Monster() // конструктор {
- 73. ©Павловская Т.А. (СПбГУ ИТМО) Перегрузка методов Использование нескольких методов с одним и тем же именем, но
- 74. ©Павловская Т.А. (СПбГУ ИТМО) Операции класса В С# можно переопределить для своих классов действие большинства операций.
- 75. Пример: счетчик (операция ++) class Counter { public Counter() { } public Counter( int n )
- 76. Пример: счетчик (операция +) class Counter { ... public static Counter operator +(Counter param, int delta)
- 77. ©Павловская Т.А. (НИУ ИТМО) Проектирование класса Summary
- 78. ©Павловская Т.А. (СПбГУ ИТМО) Интерфейс класса При создании класса следует хорошо продумать его интерфейс — средства
- 79. ©Павловская Т.А. (СПбГУ ИТМО) Состав класса Как правило, класс как тип, определенный пользователем, должен содержать скрытые
- 80. ©Павловская Т.А. (СПбГУ ИТМО) Элементы класса Методы определяют поведение класса. Каждый метод класса должен решать только
- 81. ©Павловская Т.А. (НИУ ИТМО) Типы и структуры данных
- 82. Перечислимый тип данных Перечисление — отдельный тип-значение, содержащий совокупность именованных констант. Пример: enum Color : long
- 83. ©Павловская Т.А. (НИУ ИТМО) Массив — ограниченная совокупность однотипных величин Элементы массива имеют одно и то
- 84. ©Павловская Т.А. (НИУ ИТМО) Создание массива Массив относится к ссылочным типам данных (располагается в хипе), поэтому
- 85. ©Павловская Т.А. (НИУ ИТМО) Одномерные массивы Варианты описания массива: тип[] имя; тип[] имя = new тип
- 86. ©Павловская Т.А. (НИУ ИТМО) Оператор foreach (упрощенно) Применяется для перебора элементов массива. Синтаксис: foreach ( тип
- 87. ©Павловская Т.А. (НИУ ИТМО) Программа в true style ☺ class Mas_1 // класс для работы с
- 88. public int NumOtr() // кол-во отрицательных элементов { int num_otr = 0; foreach (int elem in
- 89. class Program // класс-клиент { static void Main(string[] args) { Mas_1 mas = new Mas_1(); mas.PrintMas();
- 90. Пример анализа задания Найти среднее арифметическое элементов, расположенных между минимумом и максимумом Варианты результата: выводится среднее
- 91. ©Павловская Т.А. (НИУ ИТМО) Использование методов класса Array static void Main() { int[] a = {
- 92. Что вы должны уметь найти в массиве: минимум/максимум [по модулю] номер минимума/максимума [по модулю] номер первого/второго/последнего
- 93. ©Павловская Т.А. (НИУ ИТМО) Прямоугольные массивы Прямоугольный массив имеет более одного измерения. Чаще всего в программах
- 94. ©Павловская Т.А. (НИУ ИТМО) Пример Программа определяет: среднее арифметическое всех элементов; количество положительных элементов в каждой
- 95. ©Павловская Т.А. (НИУ ИТМО) const int m = 3, n = 4; int[,] a = new
- 96. ©Павловская Т.А. (НИУ ИТМО) int nPosEl; for ( int i = 0; i { nPosEl =
- 97. ©Павловская Т.А. (СПбГУ ИТМО) Строки типа string Тип string предназначен для работы со строками символов в
- 98. ©Павловская Т.А. (СПбГУ ИТМО) Операции для строк присваивание (=); проверка на равенство (==); проверка на неравенство
- 99. ©Павловская Т.А. (СПбГУ ИТМО) Пример: разбиение текста на слова StreamReader inputFile = new StreamReader("example.txt"); string text
- 100. ©Павловская Т.А. (СПбГУ ИТМО) Регулярные выражения Регулярное выражение — шаблон (образец), по которому выполняется поиск соответствующего
- 101. ©Павловская Т.А. (СПбГУ ИТМО) Язык описания регулярных выражений Язык описания регулярных выражений состоит из символов двух
- 102. ©Павловская Т.А. (СПбГУ ИТМО) Метасимволы - классы символов
- 103. ©Павловская Т.А. (СПбГУ ИТМО) продолжение таблицы
- 104. ©Павловская Т.А. (СПбГУ ИТМО) Повторители
- 105. ©Павловская Т.А. (СПбГУ ИТМО) Примеры простых регулярных выражений целое число (возможно, со знаком): [-+]?\d+ вещественное число
- 106. Поддержка регулярных выражений в .NET Для поддержки регулярных выражений в библиотеку .NET включены классы, объединенные в
- 107. Методы класса Regex позволяют выполнять следующие действия: Определить, встречается ли во входном тексте шаблон регулярного выражения
- 108. using System; using System.Text.RegularExpressions; public class Example { public static void Main() { string[] values =
- 109. ©Павловская Т.А. (СПбГУ ИТМО) Абстрактные структуры данных Массив конечная совокупность однотипных величин. Занимает непрерывную область памяти
- 110. ©Павловская Т.А. (СПбГУ ИТМО) Контейнеры http://msdn.microsoft.com/ru-ru/library/ybcx56wz.aspx?ppud=4 Контейнер (коллекция) - стандартный класс, реализующий абстрактную структуру данных. Для
- 111. ©Павловская Т.А. (СПбГУ ИТМО) Параметризованные коллекции (классы-прототипы, generics) - классы, имеющие типы данных в качестве параметров
- 112. Повторение: контейнеры и файлы ©Павловская Т.А. (СПбГУ ИТМО) Queue Stack LinkedList ArrayList StringCollection List HashTable SortedList
- 113. ©Павловская Т.А. (СПбГУ ИТМО) Пример использования класса List using System; using System.Collections.Generic; namespace ConsoleApplication1{ class Program
- 114. ©Павловская Т.А. (СПбГУ ИТМО) Общие принципы работы с файлами Чтение (ввод) — передача данных с внешнего
- 115. ©Павловская Т.А. (СПбГУ ИТМО) Уровни обмена с внешними устройствами Выполнять обмен с внешними устройствами можно на
- 116. ©Павловская Т.А. (СПбГУ ИТМО) Доступ к файлам Доступ к файлам может быть: последовательным - очередной элемент
- 117. ©Павловская Т.А. (СПбГУ ИТМО) Пример чтения из текстового файла static void Main() // весь файл ->
- 118. ©Павловская Т.А. (СПбГУ ИТМО) Построчное чтение текстового файла StreamReader f = new StreamReader( "text.txt" ); string
- 119. ©Павловская Т.А. (СПбГУ ИТМО) Чтение чисел из текстового файла – вар. 1 try { List list_int
- 120. ©Павловская Т.А. (СПбГУ ИТМО) Чтение чисел из текстового файла – вар. 2 try { StreamReader file_in
- 122. Скачать презентацию