C#

Простая программа на C#: ввод, расчет и вывод результата

Простая программа на C# для новичка — это не большой проект, а маленький сценарий: пользователь вводит данные, программа проверяет ввод, считает результат и выводит ответ. Например, сделаем расчет стоимости заказа: цена, количество, скидка и итог. Такой пример сразу показывает Console.ReadLine, переменные, условие, метод и запуск через dotnet run

Создайте проект

В терминале:

dotnet new console -n SimpleOrderApp
cd SimpleOrderApp
dotnet run

Откройте Program.cs. В современных шаблонах C# можно писать код прямо в файле, без явного класса Program. Это нормально для первых уроков

Первый вариант программы

Console.Write("Цена товара: ");
decimal price = decimal.Parse(Console.ReadLine() ?? "0");

Console.Write("Количество: ");
int count = int.Parse(Console.ReadLine() ?? "0");

decimal total = price * count;

if (total >= 5000)
{
    total *= 0.9m;
}

Console.WriteLine($"Итого к оплате: {total}");

Программа спрашивает цену и количество, считает итог, применяет скидку 10% от 5000 рублей и выводит результат. Суффикс m у числа 0.9m означает decimal, это удобный тип для денежных расчетов

Улучшаем проверку ввода

decimal.Parse и int.Parse могут уронить программу, если пользователь введет текст. Для нормального учебного примера лучше использовать TryParse

Console.Write("Цена товара: ");
if (!decimal.TryParse(Console.ReadLine(), out decimal price))
{
    Console.WriteLine("Ошибка: цена должна быть числом");
    return;
}

Console.Write("Количество: ");
if (!int.TryParse(Console.ReadLine(), out int count))
{
    Console.WriteLine("Ошибка: количество должно быть целым числом");
    return;
}

Теперь программа не падает, а объясняет, что исправить

Выносим расчет в метод

Когда логика начинает расти, расчет лучше вынести отдельно:

static decimal CalculateTotal(decimal price, int count)
{
    decimal total = price * count;

    if (total >= 5000)
    {
        total *= 0.9m;
    }

    return total;
}

Вызов:

decimal total = CalculateTotal(price, count);
Console.WriteLine($"Итого к оплате: {total}");

Так код становится понятнее: ввод отдельно, расчет отдельно, вывод отдельно

Полезная привычка для первой программы — читать код как сценарий пользователя. Сначала человек видит понятный вопрос, потом вводит значение, потом получает ответ. Если между этими шагами спрятать сложные вычисления, новичку труднее найти ошибку. Поэтому даже в маленьком примере удобно держать порядок: ввод, проверка, расчет, вывод. Такой стиль потом переносится в формы, API и обработчики кнопок

Как проверить результат

Запустите программу и введите 1000 и 3. Итог должен быть 3000, скидки нет. Потом введите 2000 и 3. До скидки получается 6000, после скидки — 5400

Проверка руками важна: вы не просто смотрите на код, а убеждаетесь, что программа решает задачу

Еще проверьте граничные случаи: количество 0, отрицательную цену, пустую строку вместо числа. Для настоящей программы такие значения нужно запрещать отдельными условиями. В учебном примере достаточно увидеть, где именно должна стоять проверка, чтобы программа не принимала бессмысленный заказ

Частые ошибки

Первая ошибка — забыть, что ввод из консоли приходит строкой. Вторая — использовать double для денег без причины, хотя для цен чаще подходит decimal. Третья — писать весь код одним полотном и не выносить расчет в метод. Четвертая — не проверять неправильный ввод

Мини-задача: добавьте стоимость доставки. Если итог после скидки меньше 3000 рублей, доставка стоит 350 рублей. Если 3000 или больше — доставка бесплатная

Что почитать дальше по C#

Что почитать дальше по C#

Если нужен общий маршрут по теме, откройте рубрику C#. Для соседних задач пригодятся эти разборы:

Подписаться
Уведомить о
guest
0 комментариев
Старые
Новые Популярные

Настройки cookie

0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x