Ввод данных с консоли в C#. Математические операции.

На предыдущем уроке было рассмотрены варианты вывода данных на консоль, при этом данные были инициализированы в самой программе. В этом уроке рассмотрим примеры ввода данных с консоли и основные математические действия. И в этом нам снова поможет сайт https://metanit.com/. . Так же указываю прямую ссылку на данный материал https://metanit.com/sharp/tutorial/2.15.php   

Данные для обработки мы будем получать с консоли. В паскале для этого  были команды Read и Readln. В C# они также присутствуют. Рассмотрим самый простой пример ввода данных на вводе символьных переменных (строк).  

using System;

class MainClass {
public static void Main () {
  Console.Write("Введите свое имя: ");
  string name = Console.ReadLine();
  Console.WriteLine($"Привет {name}");
  Console.Write("В каком городе ты живешь?");
  string town = Console.ReadLine();
  Console.WriteLine($"Город {town} очень хорош");
  Console.WriteLine($"Пока {name}, который проживает в городе {town}");
  Console.ReadKey();
}
}

Этот же вариант программы, но с другим форматом вывода данных.

using System;

class MainClass {
  public static void Main () {
    Console.Write("Введите свое имя: ");
            string name = Console.ReadLine();
            Console.WriteLine("Привет {0}",name);
 Console.Write("В каком городе ты живешь?");
            string town = Console.ReadLine();
            Console.WriteLine("Город {0} очень хорош",town);
						Console.WriteLine("Пока {0}, который проживает в городе {1}", name, town);
            Console.ReadKey();
  }
}

Итак, думаю со строками понятно… Теперь перейдём к числам… Тут также есть несколько вариантов…Я предлагаю то, что мне понятнее с опыта Паскаля/Делфи. На этапе ввода данных число воспринимается как символ (буква), поэтому нам надо указать что это именно число. Для этого используется метод для конвертации в целое число Convert.ToInt32(параметр). Рассмотрим другие параметры конвертации для разных типов числовых переменных…

// convert string → float  
float value = Convert.ToSingle("234"); 
// convert string → double  
double value = Convert.ToDouble("234"); 
 // convert string → short  
short value = Convert.ToInt16("234"); 
 // convert string → int  
int value = Convert.ToInt32("234"); 
 // convert string → long  
long value = Convert.ToInt64("234"); 
 // convert string → ushort  
ushort value = Convert.ToUInt16("234"); 
 // convert string → uint  
uint value = Convert.ToUInt32("234"); 
 // convert string → ulong  
ulong value = Convert.ToUInt64("234"); 
 

А теперь пример работы программы с выполнением арифметических операций

 using System;

class MainClass {
  public static void Main () {
          
  // Запрашиваем у пользователя входные данные.
	Console.Write("Enter First number: ");
  int first = Convert.ToInt32(Console.ReadLine());
	Console.Write("Enter Second number: ");
  int second = Convert.ToInt32(Console.ReadLine()); ;

  // Сумма.
  int sum = first + second;
  Console.WriteLine($"Результат сложения {first} и {second} равен {sum}.");

  // Разность.
  int sub = first - second;
  Console.WriteLine($"Результат вычитания {first} и {second} равен {sub}.");

  // Умножение.
  int mul = first * second;
  Console.WriteLine($"Результат умножения {first} и {second} равен {mul}.");

  // Дробное деление. Приведение переменных
  double devd = (double)first / second;
  Console.WriteLine($"Результат деления дробного {first} и {second} равен {devd}.");

  // Остаток от деления.
  int mod = first % second;
  Console.WriteLine($"Результат остатка от деления {first} и {second} равен {mod}.");

	// Деление на цело.
  int dev = first / second;
  Console.WriteLine($"Результат деления на цело {first} и {second} равен {dev}.");

//Число А + B в кубе
  int res = Math.Pow(sum, 3);
  Console.WriteLine($"({first} + {second}) ^ {3} = {res}");

  //Корень квадратный из сумы чисел без форматирования
  double _sqrt = (double)Math.Sqrt(first + second);
  Console.WriteLine($"Результат квадратного корня из {first} + {second} равен {_sqrt}.");
						
	//Округляем корень квадратный из сумы чисел до 3 числа
  double res = Math.Round(_sqrt, 3);
  Console.WriteLine($"Результат округления квадратного корня из {first} + {second} до 3 цифры равен {res}.");	
	        
	//Отбрасываем дробную часть из корня из числа. Приведение переменных.
	double res1 = (int)Math.Truncate(_sqrt);
 Console.WriteLine($"Результат квадратного корня из {first} + {second} без дробной части равен {res1}.");	

  //Форматируем вывод для десятичной дроби, указывая количество знаков после запятой f2
	string res1_out = String.Format("{0:f2}", _sqrt);
  Console.WriteLine($"Результат квадратного корня из {first} + {second} с двумя знаками после запятой ={res1_out}.");	
  Console.WriteLine($"Результат квадратного корня из {first} + {second} с двумя знаками после запятой ={_sqrt:f2}.");						
  // Ожидаем ввода пользователя.
	Console.Write("Press any key to Exit...: ");
  Console.ReadLine();
        
  }
}

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

0 0 vote
Article Rating
Подписаться
Уведомление о
guest
0 Комментарий
Inline Feedbacks
View all comments