1 of 11

Типы переменных:

int – целочисленный (long - длинное целое)

float - вещественный (дробные числа)

double - вещественный с двойной точностью.

char - символьный

bool - логический

string - строковый

Арифметические действия

+ - сложение, вычитание

* / умножение, деление

% остаток от деления

Основные арифметические операции (с использованием модуля Math):

int i = Math.Abs(x); - модуль числа (абсолютное значение)

double x = Math.Cos(1.04); - косинус угла

int x = Math.Max(10,20); - из 2-х чисел большее число (20)

int x = Math.Min(10,20); - из 2-х чисел меньшее число (10)

double pi = Math.PI; - число Пи.

double i = Math.Pow(a, x); - число возведенное в степень (a^x)

double p = Math.Sin(0.5); - синус угла.

double r = Math.Sqrt(7); - квадратный корень.

double p = Math.Tan(1.04); - тангенс угла.

2 of 11

Ввод и вывод:

Console.ReadLine() - ввод строки (если число, то использовать Convert или Parset для автоматического преобразования в нужный тип:)

Console.Write() - вывод в строке (где "\n" - переход на следующую строку)

Convert.ToInt32() (преобразует к типу int)

Convert.ToSingle() (преобразует к типу float)

Convert.ToDouble() (преобразует к типу double)

или

float.Parse(Console.ReadLine()); - (преобразует строку ввода к типу float)

Пример использования (вариант№1):

float a;

a = Convert.ToSingle(Console.ReadLine());

Console.Write(Math.Pow(2,a) + "\n");

Внимание! для запуска использовать Ctrl + F5 (чтоб окно не закрывалось)

вариант№2):

float a;

a = float.Parse(Console.ReadLine());

Console.WriteLine(Math.Pow(2,a));

3 of 11

Пример программы на C#: сумма двух целых значений (a и b) при вводе в одну строку: 23 34 ==> 57

int a,b,c;

string[] s = Console.ReadLine().Split(' ');

a = int.Parse(s[0]);

b = int.Parse(s[1]);

c = a + b;

Console.WriteLine(c);

Пример программы на C#: сумма двух целых значений (a и b) при вводе в колонку (каждая переменная в отдельной строке), например:

23

34

==> 57

int a, b, c;

a = int.Parse(Console.ReadLine());

b = int.Parse(Console.ReadLine());

c = a + b;

Console.WriteLine(c);

4 of 11

Логические операции:

> < больше, меньше

>= <= больше или равно,

меньше или равно

if ( a >= 25 && a <= 40 ) // сложное условие:

проверка, принадлежит ли а отрезку [25, 40]

Конструкция ветвления:

Краткая форма условного оператора IF:

if ( a > b ) m = a;

if ( a > b ) { m1=a; m2=b; }

Полная форма условного оператора IF:

if ( a > b ) m = a; else m = b;

if ( a > b ) {m1=a; m2=b;} else {m1=b; m2=a;}

каскад:

if ( a == 1 ) {b=10;}

else if (a==2) {b=100;}

else if (a==3) {b=1000;} else {b=0;}

not !

равно ==

неравно !=

and (и) &&

or (или) ||

xor ^ - ( исключающее или)

Оператор выбора.

переменная = значение;

switch (переменная)

{

case знач_1 : действие_1; break;

case знач_2 : действие_2; break;

...

case знач_n : действие_n; break;

default : действие_n+1; break;

}

5 of 11

Вариант №1 Задача №4:

Даны два целых числа (N1, N2). Выполнить следующие действия, используя каскад из операторов if - else:

- если N1>N2, то вывести 1;

- если N1<N2, то вывести 2;

- если N1=N2, то вывести 3;

using System;

public class MainClass {

public static void Main() {

int a,b;

string[] s = Console.ReadLine().Split(' ');

a = int.Parse(s[0]);

b = int.Parse(s[1]);

if (a>b) Console.Write(1);

else if (a<b) Console.Write(2);

else Console.Write(3);

}

}

Например:

77 31 == 1

43 43 == 3

51 66 == 2

6 of 11

Вариант №2 Задача №4:

Дни недели пронумерованы следующим образом: 1 - понедельник, 2 - вторник, ... , 6 - суббота, 7 - воскресенье. Дано целое число K, лежащее в диапазоне 1 - 365 (номер дня года). Определить день недели (понедельник или вторник или...) для K-го дня года, если известно, что в этом году 1 января было четвергом. Например:

9

=> пятница

using System;

public class MainClass {

public static void Main() {

int a,k; string s="";

a = int.Parse(Console.ReadLine());

k = (a + 3) % 7;

switch (k) {

case 1: s= "понедельник"; break;

case 2: s = "вторник"; break;

case 3: s = "среда"; break;

case 4: s = "четверг"; break;

case 5: s = "пятница"; break;

case 6: s = "суббота"; break;

case 0: s = "воскресенье"; break;

}

Console.Write(s);

}

}

7 of 11

Вариант №3 Задача №1:

Даны две переменные вещественного значения (a и b) из отрезка [10; 100]. Определить сумму двух вещественных значений. Ввод переменных производится в одну строку через пробел, вывод: три знака после запятой (с математическим округлением), например: 23.0096 34.0089 ==> 57.019

using System;

public class MainClass {

public static void Main() {

float a,b,c;

string[] s = Console.ReadLine().Split(' ');

a = float.Parse(s[0]);

b = float.Parse(s[1]);

c = a + b;

Console.WriteLine("{0:0.000}", c);

}

}

8 of 11

Вариант №4 Задача №3:

Дано трехзначное число (N1). Определить обратное число (N2). Вычислить, равны ли они (вывод: "yes" или "no") . Например:

219 ==> no

724 ==> no

313 ==> yes

using System;

public class MainClass {

public static void Main() {

int a,c1,c2,c3,b;

a = int.Parse(Console.ReadLine());

c1 = a / 100; c2 = a / 10 % 10; c3 = a % 10;

b = c3 * 100 + c2 * 10 + c1;

if (a == b) Console.Write("yes");

else Console.Write("no");

}

}

9 of 11

Тема: C# - консольный режим

Вид программы:

using System; // использование всех необходимых модулей

namespace ConsoleApp2 {

class Program {

static void Main(string[] args) //основная программа (функция Main)

{

// команды программы

}

}

}

10 of 11

11 of 11