18 Ocak 2014 Cumartesi

C Sharp Uygulamalar Girilen Karakterlerin Sayı Olup Olmadığını Kontrol Etme



KONU : C Sharp Uygulamaları : Konsol Uygulamalar Konsol ekranında girilen bir değerin sayı olup olmadığını kontrol eden kontrol metodu.




UYGULAMAYI İNDİR



using System;
using System.Collections.Generic;
using System.Text;

namespace C_Sharp_Konsol_Metot_Girilen_Deger_Sayi_Mi
{
    class Metot_Girilen_Deger_Sayi_Mi
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Bir sayi girininiz");
            
            // Girilen karakter veya karakterleri 'girilen' string değişkenine kaydet

            string girilen = Console.ReadLine();

            // bu metod ile 'girilen' değişkenindeki karakterler for döngüsü ile

            // teker teker dönülerek karakterin sayi olup olmadığını kontrol eder

            bool durum = sayiMi_for(girilen);

            if (durum)
                Console.WriteLine("\nGirilen değer bir sayıdır");
            else
                Console.WriteLine("\nGirilen değer bir sayı değildir");


            Console.WriteLine("\nBir sayi girininiz");

            // Girilen karakter veya karakterleri 'girilen' string değişkenine kaydet

            girilen = Console.ReadLine();


            // bu metod ile 'girilen' değişkenindeki karakterler int.parse() metodu ile

            // sayıya çevrilir. Eğer bu değer sayı ise hata vermes sonraki adıma devam eder

            // Eğer sayı değilse hata veri ve try - catch kontrolünün catch kısmına atlar 

            durum =  sayiMi_try(girilen);

            if (durum)
                Console.WriteLine("\nGirilen değer bir sayıdır");
            else
                Console.WriteLine("\nGirilen değer bir sayı değildir");


            Console.ReadKey();


            /*
             * Programın çıktısı:
             * 
            Bir sayi girininiz
            342143

            Girilen değer bir sayıdır

            Bir sayi girininiz
            32412r3

            Girilen değer bir sayı değildir
            */

        }
        static bool sayiMi_for(string a)
        { 
            bool sonuc=true;
            for (int i = 0; i < a.Length; i++)
                if (!char.IsDigit(a[i]))
                    sonuc = false;      //Eğer karakter sayı değilse false döner

            return sonuc;
        
        }

        static bool sayiMi_try(string deger)
        {
            try
            {
                int.Parse(deger);// deger değişkeni int tipine dönüştürür.
                // Dönüşüm başarılı ise aşağıdaki kodu tamamlayıp catch kısmına girmeden
                // try - catch bloğundan çıkar
                // Dönüştüremezse try ın catch kısmına atlar
                return true;  //Eğer deger sayı ise true döner

            }
            catch (Exception)
            {
                return false; //Eğer deger sayı değilse false döner
            }
        }
    }
}

UYGULAMAYI İNDİR

Hiç yorum yok :

Yorum Gönderme