Объявление и инициализация 1 int y = x + 2; int z = sqr(x); int x = 2;int x; x = 2; Какой способ лучше? int width = 1024; int heigth = 768; float aspect.

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



Advertisements
Похожие презентации
Объявление и инициализация 1 int x = 2;int x; x = 2; 2. Всегда совмещаем объявление и инициализацию int width = 1024; int heigth = 768; float aspect =
Advertisements

Перегрузка операторов x = a + b результат 1-й операнд2-й операнд оператор По количеству операндов операторы делятся на: унарные (один операнд) бинарные.
1 ©Павловская Т.А. Язык С# Курс «С#. Программирование на языке высокого уровня» Павловская Т.А.
©Павловская Т.А. Язык С# Курс «С#. Программирование на языке высокого уровня» Павловская Т.А.
Синтаксис языка Java. Символы и синтаксис Перевод строчки эквивалентен пробелу Регистр в именах различается.
Правила записи программы. Турбо Паскаль Язык программирования был разработан Никлаусом Виртом в годах как учебный язык для студентов. Современный.
Структуры и перечисления Лекция 9. Структуры Структура – это значимый тип данных, экземпляр структуры размещается в стеке, а не в динамической памяти.
Язык программирования Си Элементы языка, типы данных, переменные, программа Югов Иван Олегович МОУ Гимназия 10, г. Тверь.
Строки в Pascal
Операции Условная операция ? : Если истинно, то результатом будет, иначе. Например, int x = a < b ? a : b вычисляет минимум из a и b.
Система типов Значение выражения характеризуется типом. При разработке кода любой сложности знание правил кодирования, вычисления и преобразования значений.
Лекция 2 Введение в язык Си.
Date: File:System_VBSc_8.1 SIMATIC HMI Siemens AG All rights reserved. SITRAIN Training for Automation and Drives Гибкость.
Символы и строки 1. Содержание 8.1Введение 8.2Основы Строк и Символов 8.3Библиотека работы со строками 8.4Преобразование строк 8.5Стандартная библиотека.
Индексаторы и операции классов. Лекция 5. Индексаторы. Если в классе есть скрытое поле, представляющее собой набор элементов, например, массив, то в нем.
Программирование на языке высокого уровня Лекция 9. Символы. Кодировки. Строки. Массивы строк Кафедра АСОИУ ОмГТУ, 2012 Богатов Р.Н.
Перечисления и массивы 1 ©Павловская Т.А. (НИУ ИТМО)
Наследование Наследование – это отношение является между классами. class Person { string first_name; int birth_year;... } class Student : Person { float.
Практическое программирование на Java к.ф.-м.н. Козлов Дмитрий Дмитриевич Кафедра АСВК, Лаборатория Вычислительных комплексов.
Описание переменных Dim [WithEvents] имя переменной[([индексы])] [As [New] тип] [, [WithEvents] имя переменной[([индексы])] [As [New] тип]]... Private.
Транксрипт:

Объявление и инициализация 1 int y = x + 2; int z = sqr(x); int x = 2;int x; x = 2; Какой способ лучше? int width = 1024; int heigth = 768; float aspect = (float)width / heigth; int width = 1024; int heigth = 768; float aspect = (float)width / heigth; Какая запись понятнее? Типы данных

2 Целые Дробные Символы и строки byte, sbyte (8) short, ushort (16) int, uint (32) long, ulong (64) float (32) double (64) char (16) string Логический bool (8) Базовый: object Финансовый decimal (128) Пустой: void

3 Краткое имя.Класс.NETТипWidthДиапазон (бит) byte ByteЦелое число без знака8От 0 до 255 sbyte SByteЦелое число со знаком8От -128 до 127 int Int32Целое число со знаком32От до uint UInt32Целое число без знака32От 0 до short Int16Целое число со знаком16От до ushort UInt16Целое число без знака16От 0 до long Int64Целое число со знаком64От до ulong UInt64Целое число без знака64От 0 до float SingleЧисло одинарной точности с плавающей запятой 32От -3, e38 до 3, e38 double DoubleЧисло двойной точности с плавающей запятой 64От -1, e308 до 1, e308 char CharОдиночный знак Юникода16Знаки Юникода в тексте bool BooleanЛогический тип8true или false object ObjectБазовый тип для всех остальных типов string StringПоследовательность знаков decimal DecimalТочный дробный или целочисленный 128От ±1,0 Ч 10e28 до ±7,9 Ч 10e28

Литералы 4 Явное указание типа литерала: long l или L ulong ul или UL float f или F decimal m или M Шестнадцатиричный литерал: 0x… 1 – int long float phi = 1.618; // Ошибка компиляции! float phi = 1.618f; Численные int n = 42; переменная литерал

5 Символьные char c = r; Строковые string str = "Это текст.\n"; string str текст."; string path = c:\\games\\; string path

6 Immutable string strSrc = "_Привет"; string strCut = strSrc.Remove(0, 1);

7 Константы в теле методов const int bytesPerKbyte = 1024; const double g = 9.8; const char delimiter = '.'; const string header = "Заголовок";

Неявные приведения типов 8 int x = 5; long y = x; // Корректно long x = 5; int y = x; Cannot implicitly convert type 'long' to 'int'. int x = 5; double y = x; // С потерей точности double x = 5; int y = x; Cannot implicitly convert type double' to 'int'. Если операнды выражения разного типа, происходит приведение к большему. Происходит при: -присваивании -вызове функций …

9 FromTo intlong, float, double или decimal longfloat, double или decimal floatdouble..… Таблица неявных числовых преобразований (Справочник по C#):

Явные преобразования типов 10 double x = 5.5; int y = (int) x; // Потеря дробной части string str = "5.5"; int y = (int) str; Cannot convert type 'string' to 'int Таблица явных числовых преобразований (Справочник по C#):

11 // Конвертер стандартных типов int x = Convert.ToInt32(12.5); int z = Convert.ToInt32("12"); double y = Convert.ToDouble(12.0); Функции преобразования типа // Второй способ double value2 = Double.Parse("123,45");

12 // Классы стандартных типов содержат поля: double eps = Double.Epsilon; //double.Epsilon; double max = Double.MaxValue; // А также методы преобразования значения из строки: double value; // безопасный bool isOK = Double.TryParse("123,45", out value); // может выбросить исключение double value2 = Double.Parse("123,45"); // Подключение настроек локализации System.Globalization.CultureInfo ci = System.Globalization.CultureInfo.GetCultureInfo("en-US"); double value2 = Double.Parse("123.45", ci);

13 Console.WriteLine("x = {0}, y = {1}, z = {2}", x, y, z); Форматированный вывод: string text = Console.ReadLine(); double d = Double.Parse(text); Ввод/вывод Console.Write("Введите число: "); int x = Convert.ToInt32(Console.ReadLine()); Console.WriteLine("Вы ввели {0}", x); Console.ReadKey();

14 int i = 255; float f = 12.5f; double d = ; Console.WriteLine("{0:d4}", i); // 0255 Console.WriteLine("{0:f4}", d); // Console.WriteLine("{0:e}", f); // 1.25e+001 Console.WriteLine("{0:X}", i); // FF Console.WriteLine("{0:x}", i); // ff Console.WriteLine("{0:c}", d); // 3,14 р. / $3.14

15 Console.ForegroundColor = ConsoleColor.Yellow; Console.WriteLine("Yellow"); Console.ResetColor();

Массивы (arrays) int[] p; int[] p = {1, 2, 3, 4, 5}; int[] p = new int [5]; int[] p = new int [5] {1, 2, 3, 4, 5}; int[] p = new int [] {1, 2, 3, 4, 5}; Массивы – это ссылочный тип данных 16

int [,] table = new int [2, 3]; int [,] table = { {1,2,3}, {4,5,6} }; int [,] table = new int [2, 3] { {1,2,3}, {4,5,6} }; int [,] table = new int [,] { {1,2,3}, {4,5,6} }; Console.WriteLine( table[0, 2] ); Console.WriteLine(table.Length); 17 Многомерные массивы (multidimensional arrays)

тип [][] имя_массива = new тип [размер][]; int [][] array = new int [2][]; array[0] = new int [] {1,2,3}; array[1] = new int [5]; for (int i=0; i

19 Типы-значения и типы-ссылки int a = 144; 144 a value-type int[] a = {144, 112}; int[] b = a; 144 areference-type 112 0xA51E b Значение по умолчанию? Что копируется при присваивании? Где хранится?

Перечисления (enumerations) -удобный способ группировки целочисленных констант enum Colors { red, green, blue }; Colors useColor = Colors.green; Console.WriteLine(useColor); //green Console.WriteLine((int)useColor); //1 20

enum DaysOfWeek { Monday = 1, Tuesday, ….. }; enum DaysOfWeek : sbyte { Monday, Tuesday, ….. }; 21

22 public enum Operations { read, write }... public void Open(string fileName, Operations operation) { if (operation == Operations.read) { } else if (operation == Operations.write) { }... Open("file.txt", Operations.read);

23 Типы данных void value reference pointers Логический Целые Вещественные Символы enum struct +nullable string object Массивы Классы Интерфейсы Делегаты base user

object Является базовым для всех типов языка C# int val = 5; object p = val;// boxing int x = (int)p; // unboxing 24

nullable-типы int? x = null; x = 10; x = null; int y = x; if(x.HasValue) { int y = x.Value; } int y = x ?? 1; int z = x.GetValueOrDefault()