Типы переменных:
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); - тангенс угла.
Ввод и вывод:
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));
Пример программы на 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);
Логические операции:
> < больше, меньше
>= <= больше или равно,
меньше или равно
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;
}
Вариант №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
Вариант №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);
}
}
Вариант №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);
}
}
Вариант №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");
}
}
Тема: C# - консольный режим
Вид программы:
using System; // использование всех необходимых модулей
namespace ConsoleApp2 {
class Program {
static void Main(string[] args) //основная программа (функция Main)
{
// команды программы
}
}
}