
- •Общие сведения о программировании Понятие алгоритма и его свойства
- •Константы
- •Класс «Math»
- •Линейные алгоритмы
- •Разветвляющиеся алгоритмы Ветвление и условный оператор
- •Условная операция
- •Оператор переключатель
- •Циклические алгоритмы
- •Циклы со счётчиком
- •Цикл с предусловием
- •Цикл с постусловием
- •Генератор случайных чисел
- •Работа с массивами Пузырьковая сортировка
- •Составные типы данных: структуры
- •Подпрограммы в языке c#. Работа с функциями
- •Работа с файлами
Константы
Константы делятся на 5 групп:
Целые константы, могут быть десятичными, шестнадцатеричными;
Вещественные константы: с десятичной точкой или в экспоненциальной форме;
Перечисление – это множество именованных целочисленных констант enum имя {список_перечисления} enum color {red, green, blue, yellow=10, white} доступ к элементам перечисления осуществляется через имя типа и операцию «точка» (int) color.blue = 2;
Символьные (литерные) константы – заключаются в апострофы ‘1’ escape-последовательности начинаются с «\». \n –переход строки, \t – горизонтальная табуляция, \v – вертикальная табуляция, \\- вывести «\», \0- ноль символ.
Строка или строковая константа – это последовательность символов заключенная в кавычки “строка_символов”. Также существуют буквальные строковые константы, они начинаются с «@». @”c:\data\123.cs”- такая строка воспринимается без модификаций.
Описание пользовательских констант:
const float pi=3.14;
const int n=10;
Основные знаки операций
Знаки операций обеспечивают формирование и последующее вычисление выражений. При вычислении выражений учитывается приоритет операций.
Арифметические операции:
Унарные:
+
–
++
--
Бинарные
+
–
*
/. 10/3=3; 10.0/3=3.3333
% - остаток от деления. 10%3=1
Операции сравнения
«<»
«>»
«<=»
«>=»
«==» равно
«!=» -не равно
Логические операции
! – не
&& - и
|| - или
Поразрядные операции
~ - побитовое не
& - и
| - или
^ - исключающее или
<< - сдвиг влево
>> - сдвиг вправо
Операции присваивания
=
+=
-=
/=
%=
Операторы
Оператор – это основная единица программы, которая выполняет определенные действия над данными, отделяются друг от друга «;». Операторы делятся на простые (не содержат в себе других операторов) и составные (включают в себя простые).
Ввод/вывод осуществляется с помощью механизмов потока, т.е. информация вводится и выводится в виде потока байтов символ за символом. Для ввода с клавиатуры применяется тип «CONSOLE». Вывод с помощью «write», «writeline». Ввод «read», «readline». Если нужно ввести данные других типов, то используют преобразование типов.
Float a;
string s;
s=console.readline();
a=Single/Parse(s);
a=convert.to Single(s);
Класс «Math»
Для выполнения математических вычислений используется специальный класс «Math» - в котором описаны константы и символы.
Основные функции:
Abs(x) – модуль
Sin(x)
Cos(x)
Tan(x)
Exp(x)
Log(x) – натуральный логарифм
Log (x,y) - log_yx
Log10(x) – lg(x)
Pow(x,y) – степень
Sqrt(x) – корень
Линейные алгоритмы
Пример:
Ввести 3х-значное число и найти сумму его цифр.
Using System; //подключение пространства имён
Class Example; //
{ public static void Main() //главная функция программы, точка ввода
{ int x;
String s;
Console.Write(“Введите число”);
S=console.readline();
X = cnvert.toint32(s);
Int c1= x/10;
Int c2 = x/10%10;
Int c3 = x%10;
Int sum = c1+c2c+c3;
}}Console.Writeline(‘сумму = ’ + sum);
Разветвляющиеся алгоритмы Ветвление и условный оператор
Разветвляющийся алгоритм предполагает выполнение вычислений по одному из возможных направлений в зависимости от исходных данных или промежуточных результатов. Ветвление таких алгоритмов производится при проверки некоторых условий.
Для этой цели используется условный оператор If
Блок-схема алгоритма
Формат записи на C#
If (условие)
Оператор1;
Else
Оператор2;
Часть со служебной словом Else может отсутствовать.
Пример:
If (x>0) k++;
Если с помощью оператора if необходимо управлять группой операторов, то эта группа заключается в фигурные скобки.
If (a<b)
{
c=a;
a=b;
b=c;
}
Операторы могут быть любым, в том числе и условными, т.е. разрешена вложенность операторов If друг в друга на любую глубину.
If (x>y)
If (x>z)
Max = x;
Else
Max= z;
Else
If (y>z)
Max= y;
Else
Max= z;
В общем случаи служебное слово else связывается с ближайшем if, которое ещё не связанно с else.
Условия могут быть сложными:
If (x>y && x>z) Max = x;