C++'da numara

C Da Numara



“isnumber()”, C++ dili tarafından sağlanan ve girilen verinin sayı içerip içermediğini kontrol etmeye yardımcı olan işlevdir. Ne yazık ki, bu “isnumber()” işlevi yalnızca Mac veya Apple kullanıcıları içindir. Ancak C++ dili aynı zamanda “isnumber()” fonksiyonuyla aynı işlevi gören “isdigit()” fonksiyonuyla da işimizi kolaylaştırıyor. Her iki işlev de girilen verilerdeki sayıyı bulmaya yardımcı olur. Ayrıca “isdigit()”in “isnumber()” fonksiyonunun alternatifi olduğunu da söyleyebiliriz. Burada, Mac'imiz olmadığı için “isdigit()” fonksiyonunu inceleyeceğiz ve her iki fonksiyon da benzer.

Örnek 1:







Bu kodda “iosream” başlık dosyasına ihtiyacımız var. “cin\cout” fonksiyonunun fonksiyon tanımlarını içerdiği için buraya dahil ettik. Bunun altına standart ad alanı “std” eklenir. Sürücü kodu olan “main()” metodunu çağırıyoruz. Şimdi öncelikle “cout” yardımıyla bir satır yazdırıyoruz. Daha sonra aşağıdaki “cout”ta parametre olarak “2”yi geçtiğimiz “isdigit()” fonksiyonunu kullanıyoruz. Şimdi bu “isdigit()” fonksiyonu “2”nin rakam olup olmadığını kontrol ediyor. “2” rakam ise “1” değerini döndürür. Değilse bu fonksiyonun sonucu “0”dır.



Kod 1:



#include
ad alanı std'sini kullanma;
int ana ( ) {
cout << 'Değer rakamlı mı değil mi: ' ;
cout << eşit ( '2' ) ;
geri dönmek 0 ;
}





Çıktı:

Bu sonuç “1” sonucunu verir, bu da daha önce girdiğimiz verinin rakam veya sayı olduğu anlamına gelir. Yani bu “isdigit()” fonksiyonu “1” değerini döndürmektedir.



Örnek 2:

Tanımlanan işlevleri kullanmamız gerektiğinden bu örneğe üç başlık dosyası dahil edilmiştir. “Cctype” ve “iostream” ile “cstring” başlık dosyasını içe aktarıyoruz. Karakter testi ve manipülasyon fonksiyonlarını sunduğu için “cctype” başlık dosyası dahil edilmiştir. “iostream” başlık dosyası giriş ve çıkış fonksiyonlarını sunduğu için, “cstring” ise kodumuzdaki stringlere uyguladığımız fonksiyonu sunduğu için dahil edilmiştir.

Şimdi “std” ve “main()” yöntemleri çağrılıyor. Daha sonra, sayılar da dahil olmak üzere dize verilerini girdiğimiz yerde karakter dizisi başlatılır. “strDigit[]” buradaki “char” dizisidir. Daha sonra bunun altında “int” veri tipinin “sonuç”unu bildiriyoruz. “cout” verilen metni işler. Daha sonra buraya stringin karakterlerinin tek tek iletildiği “for” döngüsünü yerleştiriyoruz. Daha sonra bundan sonra kullanacağımız “isdigit()” fonksiyonu stringin karakterinin rakam olup olmadığını kontrol eder. Eğer rakam ise “isdigit()” fonksiyonu ile bu “result” değişkenini başlattığımızda “result” değişkenine kaydedilir. Daha sonra “if”i yerleştirip “sonucu” argüman olarak aktarıyoruz ve ardından “cout” yardımıyla sayıyı görüntülüyoruz.

Kod 2:

#include
#include
#include
ad alanı std'sini kullanma;
int ana ( ) {
karakter strDigit [ ] = 'azz2@mp;1p8$.;qr' ;
sonuç;
cout << 'Dize aşağıdaki rakamları içerir:' << sonunda;
için ( int a = 0 ; A < strlen ( strDigit ) ; a++ ) {
sonuç = rakam ( strDigit [ A ] ) ;
eğer ( sonuç )
cout << strDigit [ A ] << sonunda;
}

geri dönmek 0 ;
}

Çıktı:

Daha önce eklediğimiz dize burada gösterilen üç sayıyı içeriyor. Bu sayıları “isdigit()” fonksiyonu yardımıyla dizeden aldık.

Örnek 3:

Sağlanan işlevleri kullanmamız gerektiğinden bu durumda üç başlık dosyası dahil edilmiştir. Burada “cctype”, “iostream” ve “cstring” başlık dosyalarını içe aktarıyoruz. 'Std' ad alanı eklendi ve artık 'main()' işlevi çağrıldı. Daha sonra string verisini eklediğimiz karakter dizisi başlatılıyor. Buna tamsayılar da dahildir. Bu durumda “char” dizisine “s[]” adı verilir. Altına “int” veri tipinin “rakamlarını” tanımlıyoruz.

Belirtilen metin 'cout' tarafından oluşturulur ve daha sonra dizenin karakterlerinin ayrı ayrı beslendiği 'for' döngüsü eklenir. Daha sonra dizedeki karakterlerin rakam olup olmadığını belirlemek için “isdigit()” işlevi kullanılır. “digits” değişkenini “isdigit()” fonksiyonunu kullanarak başlattığımız için eğer rakam ise “digits” değişkeninin içerisine kaydedilir. Daha sonra 'if' ifadesini ekliyoruz, 'rakamları' argüman olarak iletiyoruz ve sayıyı görüntülemek için 'cout'u kullanıyoruz.

Kod 3:

#include
#include
#include
ad alanı std'sini kullanma;
int ana ( ) {
karakter [ ] = '3 erkek kardeşim, 4 kız kardeşim, 7 amcam, 9 teyzem var' ;
int rakamlar;
cout << 'Bu cümle rakam içeriyor :' << sonunda;
için ( int ben = 0 ; Ben < strlen ( S ) ; i++ ) {
rakamlar = isdigit ( S [ Ben ] ) ;
eğer ( rakamlar )
cout << S [ Ben ] << sonunda;
}
geri dönmek 0 ;
}

Çıktı:

Daha önce eklediğimiz string içindeki dört hane aşağıda görüntülenmektedir. “isdigit()” yöntemi, sayıları dizeden çıkarmamızı sağlar.

Örnek 4:

Bu kodda bu başlık dosyaları gerekli olduğundan “cctype” ve “iostream” eklenmiştir. Daha sonra standart “std” namespace’ini buraya yerleştiriyoruz. Şimdi “main()” yöntemini çağırıyoruz. Daha sonra “char” veri türünden “character_1”, “character_2”, “character_3” ve “character_4” isimli dört değişkene “z”, “2”, “5” ve “character_4” değerlerini başlatıyoruz. '&', sırasıyla.

Daha sonra “isdigit()” fonksiyonu yardımıyla tüm karakterleri kontrol edip “cout”u da ekledikten sonra bu değişkenleri ayrı ayrı bu fonksiyona yerleştiriyoruz. Verilen karakter bir sayı ise orada “1” değerini verir. Aksi durumda “0” değerini verir. Karakter veya alfabe girdiğimizde “isdigit()” fonksiyonunun sonucu “0” olur.

Kod 4:

#include
#include
ad alanı std'sini kullanma;
int ana ( )
{
karakter karakteri_1 = 'İle' ;
karakter karakter_2 = '2' ;
karakter karakter_3 = '5' ;
karakter karakter_4 = '&' ;
cout << karakter_1 << ' bir rakamdır: ' << eşit ( karakter_1 ) << sonunda;
cout << karakter_2 << ' bir rakamdır: ' << eşit ( karakter_2 ) << sonunda;
cout << karakter_3 << ' bir rakamdır: ' << eşit ( karakter_3 ) << sonunda;
cout << karakter_4 << ' bir rakamdır: ' << eşit ( karakter_4 ) << sonunda;
geri dönmek 0 ;
}

Çıktı:

Şimdi bu sonuç, aşağıda gösterildiği gibi “isdigit()” fonksiyonunun sayıyı bulduğu yerde “1”, özel karakter veya alfabeyi bulduğu yerde “0” değerini verir:

Örnek 5:

Burada “karakter” değişkenini bildiriyoruz ve ardından kullanıcıya veri girmesini söyleyen bir satır görüntülüyoruz. Bunun altına kullanıcının girişini kabul eden “cin”i yerleştirip “character” değişkenine kaydediyoruz.

Bunun altına “isdigit()” fonksiyonunu yerleştirip, girilen karakterin rakam olup olmadığını kontrol eden bu fonksiyona “character” değişkenini aktarıyoruz. Daha sonra buraya yazdığımız ilk “cout” ifadesini render ediyoruz. Rakam değilse ikinci “cout” ifadesi görüntülenir. Burada kullanıcının girişini alıyoruz ve ardından kullanıcının giriş verilerine “isdigit()” fonksiyonunu uyguluyoruz.

Kod 5:

#include
#include
ad alanı std'sini kullanma;
int ana ( )
{
karakter karakteri;
cout << 'Kontrol etmek istediğiniz verileri buraya girin' <> karakter;
eşit ( karakter ) ? cout << 'Bu bir rakam.'
: cout << 'Bu bir rakam değil' ;
geri dönmek 0 ;
}

Çıktı:

“p” olan alfabeye girdiğimizde “isdigit()” fonksiyonunun sonucu olarak “Bu bir rakam değildir” diyen ikinci ifadeyi görüntüler.

Şimdi önceki kodu tekrar çalıştırıyoruz. Bu sefer buraya “9” yazıp “Enter”a basıyoruz. Daha sonra “isdigit()” fonksiyonunun sonucu olarak “Bu bir rakamdır” diyen ilk ifadeyi verir.

Önceki kodu bir kez daha çalıştırıyoruz ama bu sefer “@” ekleyip “Enter”a basıyoruz. Sonuç olarak, 'isdigit()' işlevi nedeniyle ikinci ifade olan 'Bu bir rakam değil' görünür.

Çözüm

Bu yazımızda “isnumber()” ve “isdigit()” fonksiyonlarının C++ programlamada aynı fonksiyonlar olduğunu tanımlamıştık. Aradaki fark, “isnumber()”ın mac kullanıcıları için olmasıdır, bu nedenle C++ programlamada “isnumber()” fonksiyonu yerine “isdigit()” fonksiyonunu kullanırız. Bu işlevin, girilen verilerdeki sayıyı kontrol etmeye ve sonucu buna göre oluşturmaya yardımcı olduğunu kapsamlı bir şekilde araştırdık.