meraba arkadaşlar c# da örneğin dışarıdan girilen iki sayınıntoplama işlemini yaptığımızı düşünelim fakat girenkişi sayı değil gıcıklık olsun diye harf ,? gibi değerler girdiğinde hatayı nasıl düzeltirim yardımlarınız için şimdiden teşekkürler...
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
int birinciSayi, ikinciSayi;
geri:
Console.Write("1.sayıyı giriniz=");
try
{
birinciSayi = int.Parse(Console.ReadLine());
Console.Write("2.sayıyı giriniz=");
ikinciSayi = int.Parse(Console.ReadLine());
}
catch
{
goto geri;
}
int toplam = birinciSayi + ikinciSayi;
Console.WriteLine("Sonuc={0}", toplam.ToString());
}
}
}
bu sorunu halletmede sayı dışında veri girdiğinde hata vermesi ni yapamazmıyız try ve catch kullanmadan
Bende çok merak ediyorum c# i, Gifted.ib nerden başlamak lazım
yardımların için teşekkürler gifted.ib kardeş şimdi daha iyi anladım
ilerleyen zamanlarda cok sorum olur yeniyiz nede olsa yardımının devamını beklerimufakta olsa yardımım dokunduysa ne mutlu bana
Gifted.ib bu try catch çok güzel işe yarıyor ,,, try ve catch kullanmadan hata engellemesi yapamaz mıyız bi yardımcı olsan kabul etmedi hoca try ve catch i öğrenmek için uğraş adam kabul etmesin ne yapacan başka çare varmı başka yolu öğrenmem gerekbildiğim birşey olursa tabi ki...
Kullanıcı int tanımlanmış bir bölüme string girip onayladığı zaman siz try ile yakalamasanızda sistem kendi hata olarak yakalar ve hata verip programı durdurur.
Console ekranlarında kullanıcı giriş yaparken veriyi düzeltme şansı yok.Zaten onayladıktan sonra farklı girmiş ise ya siz hata verdirir,düzeltirsiniz.Yada sistem otomatik olarak kendi hatasını üretir.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("1. Değer");
string FirstValue = Console.ReadLine();
Console.WriteLine("2. Değer");
string SecondValue = Console.ReadLine();
int ParsedFirstValue;
int ParsedSecondValue;
if (int.TryParse(FirstValue, out ParsedFirstValue) && int.TryParse(SecondValue, out ParsedSecondValue))
{
Console.Write("Toplam : ");
Console.WriteLine((ParsedFirstValue + ParsedSecondValue).ToString());
}
else {
Console.WriteLine("Lütfen sayısal değerler giriniz.");
}
Console.ReadLine();
}
}
}