lawang code

lawang Code


Tanyakan kode disini

Penanganan error ketika input karakter

ditanyakan oleh Nizar 2 tahun yang lalu

Mohon bantuannya untuk tugas kampus, saya pemula C# sedang ada masalah di source code saya, bagaimana menangani error pada program saya ini ketika suatu user menginput huruf (bukang angka) pada menu.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace calc
{
    class Program
    {
        static void Main(string[] args)
        {
            int a, b, input;
        menu:
            Console.WriteLine("============== MENU ==============");
            Console.WriteLine("1. Penjumlahan");
            Console.WriteLine("2. Pengurangan");
            Console.WriteLine("==================================");

            input = Int32.Parse(Console.ReadLine());

            switch (input)
            {
                case 1:
                    try
                    {
                        Console.Clear();
                        Console.Write("Masukkan angka pertama : ");
                        a = Int32.Parse(Console.ReadLine());
                        Console.Write("Masukkan angka kedua : ");
                        b = Int32.Parse(Console.ReadLine());
                        Console.Write("Hasilnya adalah : " + (a + b));
                        Console.ReadKey();
                        Console.Clear();
                        goto menu;
                    }
                    catch 
                    {
                        Console.WriteLine("Salah input angka !!!");
                        Console.ReadKey();
                        goto case 1;
                    }

                case 2:
                    try
                    {
                        Console.Clear();
                        Console.Write("Masukkan angka pertama : ");
                        a = Int32.Parse(Console.ReadLine());
                        Console.Write("Masukkan angka kedua : ");
                        b = Int32.Parse(Console.ReadLine());
                        Console.Write("Hasilnya adalah : " + (a - b));
                        Console.ReadKey();
                        Console.Clear();
                        goto menu;
                    }
                    catch
                    {
                        Console.WriteLine("Salah input angka !!!");
                        Console.ReadKey();
                        goto case 2;
                    }

                default :
                    Console.WriteLine("Masukkan angka 1 atau 2");
                    Console.ReadKey();
                    Console.Clear();
                    goto menu;
            }
            Console.ReadKey();
        }
    }
}

Terima kasih.

Menampilkan 1-3 dari 3 hasil
handita okviyanto menjawab 2 tahun yang lalu :

Ini gan coba aja...

 class Program
    {
        static void Main(string[] args)
        {
            int a, b, input;
        menu:
            Console.WriteLine("============== MENU ==============");
            Console.WriteLine("1. Penjumlahan");
            Console.WriteLine("2. Pengurangan");
            Console.WriteLine("==================================");

            string inputan = Console.ReadLine();
            char[] texts = inputan.ToArray();
            foreach (char c in texts)
            {
                if (!Char.IsDigit(c))
                {
                    Console.WriteLine("Anda harus memasukkan angka");
                    Console.ReadLine();
                    Console.Clear();
                    goto menu;
                }
            }
            input = Int32.Parse(inputan);

            switch (input)
            {
                case 1:
                    try
                    {
                        Console.Clear();
                        Console.Write("Masukkan angka pertama : ");
                        a = Int32.Parse(Console.ReadLine());
                        Console.Write("Masukkan angka kedua : ");
                        b = Int32.Parse(Console.ReadLine());
                        Console.Write("Hasilnya adalah : " + (a + b));
                        Console.ReadKey();
                        Console.Clear();
                        goto menu;
                    }
                    catch
                    {
                        Console.WriteLine("Salah input angka !!!");
                        Console.ReadKey();
                        goto case 1;
                    }

                case 2:
                    try
                    {
                        Console.Clear();
                        Console.Write("Masukkan angka pertama : ");
                        a = Int32.Parse(Console.ReadLine());
                        Console.Write("Masukkan angka kedua : ");
                        b = Int32.Parse(Console.ReadLine());
                        Console.Write("Hasilnya adalah : " + (a - b));
                        Console.ReadKey();
                        Console.Clear();
                        goto menu;
                    }
                    catch
                    {
                        Console.WriteLine("Salah input angka !!!");
                        Console.ReadKey();
                        goto case 2;
                    }

                default:
                    Console.WriteLine("Masukkan angka 1 atau 2");
                    Console.ReadKey();
                    Console.Clear();
                    goto menu;
            }
            Console.ReadKey();
        }
    }


Nizar menjawab 2 tahun yang lalu :

terima kasih mas handi, programnya sudah jalan. ternyata harus pakai foreach ya


handita okviyanto menjawab 2 tahun yang lalu :

Iyap.. sama sama :D


Anda harus login terlebih dahulu untuk memberikan komentar

Recent Tag

X 6
X 48
X 14
X 10
X 1
X 5
X 4
X 15
X 10

Bantuan

Help

Feedback

Help