Вычисление площади прямоугольника - C#

Узнай цену своей работы

Формулировка задачи:

Задание: Написать программу, которая определяет площадь прямоугольника со сторонами a и b. Если пользователь вводит некорректные значения (отрицательные или ноль), должно выдаваться сообщение об ошибке. Возможность ввода пользователем строки вида «абвгд» или нецелых чисел игнорировать.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace task_1
{
    class Program
    {
        static void Main()
        {
            double result = 0;
            
            go: Console.Write("A= ");
            int a = int.Parse(Console.ReadLine());
            // double a = char.Parse(Console.ReadLine());
            Console.Write("B= ");
            // double b = char.Parse(Console.ReadLine());            
            int b = int.Parse(Console.ReadLine());
 
            while (a>0 && b>0)
            {
                result = a * b;
                Console.WriteLine("Д: {0}, Ш: {1}, Площадь: {2}", a, b, result);
                
                goto end;
            }
           
                Console.WriteLine("Ошибка, попробовать еще раз? Y/N");
                char retry = char.Parse(Console.ReadLine());
                switch (retry)
                {
                    case 'y': goto go;
                    case 'n': goto end;
                }

        end: Console.ReadLine();
        }
 
    }
}
Ввожу буквенное значение - выдаёт сообщение об ошибке. Как быть?

Решение задачи: «Вычисление площади прямоугольника»

textual
Листинг программы
        static void Main()
        {
            int a = 0;
            int b = 0;
            bool repeat = true;
            while (repeat)
            {
                do
                {
                    Console.Write("A = ");
                }
                while (!int.TryParse(Console.ReadLine(), out a));
                do
                {
                    Console.Write("B = ");
                }
                while (!int.TryParse(Console.ReadLine(), out b));
                if (a <= 0 || b <= 0)
                {
                    Console.WriteLine("Ошибка, попробовать еще раз? Y/N");
                    var ki = Console.ReadKey(true);
                    if (ki.Key != ConsoleKey.Y) 
                        repeat = false;
                    continue;
                }
                Console.WriteLine("Д: {0}, Ш: {1}, Площадь: {2}", a, b, a * b);
                repeat = false;
                Console.ReadKey();
            }
        }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 4.154 из 5
Похожие ответы