Синтаксис языка С# Комментарии // Однострочный комментарий /* Можно комментировать много строк */ /// Это однострочный комментарий для документации ///

Презентация:



Advertisements
Похожие презентации
©ρŧą Базовые конструкции языка.
Advertisements

Переменные и операторы УРОК 2. Переменные ПЕРЕМЕННАЯ – ?... контейнер для хранения данных. Переменная имеет имя – это….? последовательность букв, цифр.
Глава 6. УПРАВЛЯЮЩИЕ СТРУКТУРЫ Оператор присваивания Простой и составной операторы Условный оператор Оператор множественного выбора Оператор цикла с предусловием.
Идентификаторами в языке Си являются последовательности букв и цифр, начинающиеся с буквы, причем символ подчеркивания рассматривается компилятором как.
Лекция 4 Программирование на Паскале. Элементы языка Турбо Паскаль 7.0. Типы данных. Управляющие конструкции.
Практическое программирование на Java к.ф.-м.н. Козлов Дмитрий Дмитриевич Кафедра АСВК, Лаборатория Вычислительных комплексов.
Синтаксис языка Java. Символы и синтаксис Перевод строчки эквивалентен пробелу Регистр в именах различается.
Операции Условная операция ? : Если истинно, то результатом будет, иначе. Например, int x = a < b ? a : b вычисляет минимум из a и b.
b5_java_s4
Инструкции C++ Условная инструкция Формат: if (условие) оператор; else оператор; Пример: if (i!=0) { if (j) j++; if(k) k++; else if(p) k--; } else i--;
Министерство образования Республики Беларусь Белорусский государственный университет Управляющие структуры языков программирования.
Тип, имя и значение переменной. В объектно-ориентированных языках программирования переменные играют такую же важную роль, как и в процедурных языках.
Теоретические основы программирования на JavaScript.
Лекция 8 Область видимости Время жизни. Область видимости Область видимости – характеристика именованного объекта Область видимости - часть текста программы,
Тема: Управление потоком в PHP Изучить возможности языка PHP при решении задач, требующих использования условного оператора. Рассмотреть примеры управления.
Алфавит и синтаксис языка программирования Visual Basic.
Функции Функция – именованная последовательность описаний и операторов, выполняющая некоторое действие. Может иметь параметры и возвращать значение. Функция.
Язык программирования Delphi. Алфавит языка 53 буквы латинского алфавита и символ подчеркивания Цифры от 0 до 9 23 спец.символа
Тип, имя и значение переменной.. Переменные. В объектно-ориентированных языках программирования, и в частности в языке Visual Basic, переменные играют.
Транксрипт:

Синтаксис языка С# Комментарии // Однострочный комментарий /* Можно комментировать много строк */ /// Это однострочный комментарий для документации /// /// Это однострочный комментарий /// /** Документация * *А это * многострочный * */

Литералы В С# существует четыре типа литералов: целочисленный литерал (8-й, 16-й и 10-й системе счисления); вещественный литерал; символьный литерал; строковый литерал.

Константы Литеральные константы х = 100; // литеральная константа Символические константы Объявляются с дополнительным спецификатором const. Требуют непосредственной инициализации. const dbl_pi = ; Перечисления enum Sizes: unint { Small=1, Middle, Large = 10 }; Строковые константы string strMessage = "Здравствуй Мир!";

Арифметические операции + – * / % Логические (boolean и побитовые) & | ^ ! ~ && || Строковые (конкатенаторы) + Increment, decrement ++ – – Сдвига >> = Member access. Индексации [ ] Cast (приведение типа) ( ) Оператор условия (трехоперандная) ?: Delegate concatenation and removal + – Создание объекта new( ) Информация о типе is as sizeof typeof Overflow exception control (управление исключениями) checked unchecked Indirection and Address (неуправляемый код) * –> [ ] &

Приоритет КатегорияОперации 0Первичные f(x) a[x] x++ x-- -> checked unchecked new; typeof default(T) delegate sizeof 1Унарные + - ! ~ ++x --x (T)x await &x *x 2Мультипликативные (Умножение) * / % 3Аддитивные (Сложение) + - 4Сдвиг > 5Отношения, проверка типов = is as 6Эквивалентность == != 7Логическое И & 8Логическое исключающее XOR ^ 9Логическое ИЛИ (OR) | 10Условное И && 11Условное ИЛИ || 12Условное выражение ? : 13Присваивание и лямбда-выражение = *= /= %= += -= >= &= ^= |= =>

Объявление переменных. Область видимости и время жизни Любая переменная используемая в программе вводится объявлением. Кроме переменных объявлению подлежат: классы и структуры. Класс (структура) может содержать вложенные объявления других классов и структур; перечисления; объекты – переменные и константы, представляющие классы и структуры. Корректное объявление объекта предполагает, что информация, содержащая характеристики объявляемого объекта, доступна транслятору; элементы перечислений – объекты, представляющие перечисления; конструкторы классов и методы (функции) – члены классов (в том числе и специальные). Конфликта имен (проблемы с обращением к одноименным объектам) позволяет избежать принятая в языке дисциплина именования. В каждом языке программирования она своя

Избежать конфликта имен в C# позволяет такая синтаксическая конструкция, как блок операторов. Блок – это множество предложений (возможно пустое), заключенное в фигурные скобки. Переменные можно объявлять в любом месте блока. Точка объявления переменной в буквальном смысле соответствует месту ее создания. Обращение к объявляемой переменной или константе "выше" точки ее объявления лишено смысла.

Управляющие операторы Управляющие операторы определяют последовательность выполнения операторов в программе и являются основным средством реализации алгоритмов. Различаются следующие категории управляющих операторов: Операторы выбора. Вводятся ключевыми словами if, if... else..., switch. Операторы цикла. Вводятся ключевыми словами while, do... while, for, foreach. Операторы перехода. Вводятся ключевыми словами goto, break, continue, return.

Операторы выбора if, if... else... После ключевого слова if располагается взятое в круглые скобки условное выражение (булево выражение), следом за которым располагается оператор (блок операторов) Далее в операторе if... else... после ключевого слова else размещается еще один оператор отсутствуют предопределенные алгоритмы преобразования значений к булевскому типу В силу того, что в C# отсутствуют предопределенные алгоритмы преобразования значений к булевскому типу, условное выражение должно быть выражением типа bool – переменной, константой или выражением на основе операций сравнения и логических операций.

Замечание: невозможно построить оператор if... else... на основе одиночного оператора объявления: if (true) int XXX = 125; if (true) int XXX = 125; else int ZZZ = 10; Такие конструкции воспринимаются как ошибочные. Ставить в зависимость от условия (пусть даже всегда истинного) создание объекта не принято. Совсем другое дело – при работе с блоками if (true) {int XXX = 125;} if (true) {int XXX = 125;} else {int ZZZ = 10;} Даже в таких примитивных блоках определена своя область видимости, и создаваемые в них объекты, никому не мешая, существуют по своим собственным правилам

switch switch оператор имеет следующий вид: int val; :::::::::: switch (val) { case 0: … break; case 100: … break; default: break; // Список операторов пуст. } Списки операторов в case элементах не могут включать операторы объявления. Каждый case элемент в обязательном порядке завершается оператором- терминатором break, goto, return

сlass MyClass { static void Main (string[] args) { string user; user = Console.ReadLine(); switch (user) { case "user1": Console.WriteLine("Здравствуйте user1 "); break; case "user2": Console.WriteLine ("Здравствуйте user2 ") ; break; case "user3": Console. WriteLine ("Здравствуйте user3 ") ; break; default: Console.WriteLine("Здравствуйте новый пользователь"); break; }

Операторы цикла while while ( … ) { }; Оператор while (true) int XXX = 0; с самого первого момента своего существования (еще до начала трансляции!) сопровождается предупреждением: Embedded statement cannot be a declaration or labeled statement

String Name; while (true) { Console.Write ("Введите ваш имя " ); Name = Console.ReadLine(); if(Name == ) break; Console.WriteLine("Здравствуйте {0}", Name); }

do... while Разница с ранее рассмотренным оператором цикла состоит в том, что здесь сначала выполняется оператор (блок операторов), а затем проверяется условие продолжения оператора string password; do { password=Console.ReadLine(); } while(password!=Admin");

for Оператор for также невозможно построить на основе одиночного оператора объявления

foreach Этим оператором обеспечивается повторение множества операторов, составляющих тело цикла, для каждого элемента массива или коллекции. После перебора ВСЕХ элементов массива или коллекции и применения множества операторов для каждого элемента массива или коллекции, управление передается следующему за оператором foreach оператору. int[ ] array = new int[10]; // Объявили и определили массив … foreach (int i in array) { /*:::::*/ }; // Для каждого элемента массива надо сделать... Специализированный оператор, приспособленный для работы с массивами и коллекциями. Конструкция экзотическая и негибкая. Предполагает выполнение примитивных последовательностей действий над массивами и коллекциями (начальная инициализация или просмотр ФИКСИРОВАННОГО количества элементов). Действия, связанные с изменениями размеров и содержимого коллекций, в рамках этого оператора могут привести к непредсказуемым результатам

Класс Math и его функции public void MathFunctions(){ double a, b,t,t0,dt,y; string NameFunction; Console.WriteLine("Введите имя исследуемой функции a*F(b*t)" + " (sin, cos, tan, cotan)"); NameFunction = Console.ReadLine(); Console.WriteLine("Введите параметр a (double)"); a= double.Parse(Console.ReadLine()); Console.WriteLine("Введите параметр b (double)"); b= double.Parse(Console.ReadLine()); Console.WriteLine("Введите начальное время t0(double)"); t0= double.Parse(Console.ReadLine()); const int points = 10; dt = 0.2; for(int i = 1; i

Класс Random и его функции Конструкторы: public Random() public Random (int) public int Next( ) - метод без параметров выдает целые положительные числа во всем положительном диапазоне типа int ; public int Next(int max) - выдает целые положительные числа в диапазоне [0,max]; public int Next(int min, int max) - выдает целые положительные числа в диапазоне [min,max]. public double NextDouble( ) - выдается новое случайное число, равномерно распределенное в интервале [0-1). public void NextBytes(byte[ ] buffer) - генерирует случайные числа в диапазоне [0, 255] и заполняет массив байт.

public void Rand() { Random realRnd = new Random(); Random repeatRnd = new Random(100); // случайные числа в диапазоне [0,1) Console.WriteLine("случайные числа в диапазоне[0,1)"); for(int i =1; i