• 1399/05/14

چگونگی نوشتن کد برای رفع مشکل :

سلام استاد این کد ماشین حساب بنده هسن می خواستم بدونم که اگر بخواهم کدی را بنویسیم که وقتی کاربر در قسمت وارد کردن عدد اشتباهی حرفی هم مینویسه اروری به اون بده ولی من نمیدونم چه شکل اگر بفرمایید ممنون میشم 

 

using System;

namespace mycalculator2
{
    class Program
    {
        static void Main(string[] args)
        {
            
            Console.ForegroundColor = ConsoleColor.DarkGreen;
            Console.WriteLine("IN THE NAME OF GOD");
            Console.ForegroundColor = ConsoleColor.White;
            Console.WriteLine("please write your name :");
            Console.ForegroundColor = ConsoleColor.Blue;
            string user1 = (Console.ReadLine());
            Console.ForegroundColor = ConsoleColor.White;
            Console.WriteLine("hello" + " " + user1);
            Console.ForegroundColor = ConsoleColor.White;
            Console.WriteLine(user1 + ", please write your first number :");
            Console.ForegroundColor = ConsoleColor.Blue;
            double numuser = Convert.ToDouble(Console.ReadLine());
            Console.ForegroundColor = ConsoleColor.White;
            Console.WriteLine("ok " + user1 + ".please write your second number :");
            Console.ForegroundColor = ConsoleColor.Blue;
            double numuser2 = Convert.ToDouble((Console.ReadLine()));
            Console.ForegroundColor = ConsoleColor.White;
            Console.WriteLine("ok " + user1 + ".please select your operation(/ or * or + or -) :");
            Console.ForegroundColor = ConsoleColor.Blue;
            string user3 = (Console.ReadLine());
            double zarb = numuser * numuser2;
            double taghsim = numuser / numuser2;
            double gam = numuser + numuser2;
            double menha = numuser - numuser2;

            switch (user3)
            {
                case "/":
                    {
                        Console.ForegroundColor = ConsoleColor.Green;
                        Console.WriteLine("your result is : " + taghsim);
                        break;
                    }
                case "*":
                    {
                        Console.ForegroundColor = ConsoleColor.Green;
                        Console.WriteLine("your result is : " + zarb);
                        break;
                    }
                case "+":
                    {
                        Console.ForegroundColor = ConsoleColor.Green;
                        Console.WriteLine("your result is : " + gam);
                        break;
                    }
                case "-":
                    {
                        Console.ForegroundColor = ConsoleColor.Green;
                        Console.WriteLine("your result is : " + menha);
                        break;
                    }
                default:
                    {
                        Console.ForegroundColor = ConsoleColor.Red;
                        Console.WriteLine("that is wrong in your writing . please check...");
                        break;
                    }
            }
            Console.ForegroundColor = ConsoleColor.Yellow;
            Console.WriteLine("thank you for using this app");
            Console.ResetColor();

        } 
    }
}
  • 1399/05/20
  • ساعت 10:21

سلام 

می تونید از try استفاده کنید


  • 1399/05/20
  • ساعت 10:24

به طور مثال :

double num1 = Console.ReadLine();
try 
{
	num1 = Convert.ToInt32(num1);
}
catch 
{
	Console.WriteLine("Your Value Is Not Valid ... ");
}

الان اگه در تبدیل num1 به فرمت عددی به مشکلی بر بخوره ، catch فراخوانی میشه


  • 1399/05/21
  • ساعت 23:09

اهان خیلی خیلی ممنونم

 


logo-samandehi