İntegral ve kayan nokta sayılarını işleme
Bu öğreticide, tarayıcınızı kullanarak C# dilindeki sayısal türleri etkileşimli olarak öğreneceksiniz. C# yazacak ve kodunuzu derleyip çalıştırmanın sonuçlarını göreceksiniz. C# dilinde işlemleri ve matematik işlemlerini inceleyen bir dizi ders bu hızlı başlangıca dahildir. Bu dersler size C# dilinin temel özelliklerini öğretir.
İpucu
Odak moduna bir kod parçacığı yapıştırmak için klavye kısayolunuzu (Ctrl + v veya cmd + v) kullanmanız gerekir.
Tamsayı matematiğini inceleme
Etkileşimli pencerede aşağıdaki kodu çalıştırın. Odak moduna gir düğmesini seçin. Ardından, etkileşimli pencereye aşağıdaki kod bloğunu yazın ve Çalıştır'ı seçin:
int a = 18;
int b = 6;
int c = a + b;
Console.WriteLine(c);
Ortamınız üzerinde çalışıyorsanız, bunun yerine yerel sürümle ilgili yönergeleri izlemeniz gerekir.
Tamsayılar içeren temel matematik işlemlerinden birini gördünüz. int
türü pozitif veya negatif bir tamsayıyı ifade eder. Toplama için +
sembolünü kullanırsınız. Tamsayılar için sıklıkla kullanılan diğer matematiksel işlemler şunlardır:
- çıkarma için
-
- çarpma için
*
- bölme için
/
İpucu
Bu etkileşimli öğretici boyunca, etkileşimli pencerede yazdığınız kodu değiştirerek kendi başınıza keşfedebilirsiniz. Bu öğreticide, her adımda deneyebileceğiniz örnekler sağlanır.
Bu farklı işlemleri keşfederek başlayın. Bu işlemlerden her birini denemek için üçüncü satırı değiştirin. Her düzenlemeden sonra Çalıştır düğmesini seçin.
Subtraction (Çıkarma):
int c = a - b;
Multiplication (Çarpma):
int c = a * b;
Division (Bölme):
int c = a / b;
İsterseniz aynı satıra birden çok matematik işlemi yazarak da denemeler yapabilirsiniz.
İpucu
C# dilini (veya herhangi bir programlama dilini) keşfederken, kod yazdığınızda hatalar yapacaksınız. Derleyici bu hataları bulup size bildirir. Çıkış, hata iletileri içerdiğinde neyin düzeltilmesi gerektiğini görmek için örnek koda ve etkileşimli penceredeki koda yakından bakın. Bu alıştırma, C# kodunun yapısını öğrenmenize yardımcı olur.
İşlem sırasını inceleme
C# dili, farklı matematik işlemlerinin önceliğini matematikte öğrendiğiniz kurallarla tutarlı bir şekilde tanımlar. Çarpma ve bölme işlemleri, toplama ve çıkarma işlemlerinden önce gelir. Etkileşimli pencerede aşağıdaki kodu çalıştırarak bunu keşfedin:
int a = 5;
int b = 4;
int c = 2;
int d = a + b * c;
Console.WriteLine(d);
Çıkış, çarpma işleminin toplama işleminden önce gerçekleştiğini gösterir.
İlk gerçekleştirmek istediğiniz işlemin veya işlemlerin etrafına ayraç ekleyerek farklı bir işlem sırası uygulayabilirsiniz:
int a = 5;
int b = 4;
int c = 2;
int d = (a + b) * c;
Console.WriteLine(d);
Birçok farklı işlemi birleştirerek daha fazlasını keşfedin. Yukarıdaki dördüncü satırı şunun gibi bir şeyle değiştirin:
int d = (a + b) - 6 * c + (12 * 4) / 3 + 12;
Tamsayılar için farklı bir davranışla karşılaşmış olabilirsiniz. Sonucun ondalık veya kesir bölümü içermesini bekliyor olsanız da tamsayı bölme işlemi her zaman tamsayı sonucu verir.
Bu davranışı görmediyseniz aşağıdaki kodu deneyin:
int a = 7;
int b = 4;
int c = 3;
int d = (a + b) / c;
Console.WriteLine(d);
Sonuçları görmek için yeniden Çalıştır'ı seçin.
Tamsayı duyarlığını ve sınırlarını inceleme
Son örnek, tamsayı bölme işleminin sonucu kestiğini size göstermiştir.
Kalan işlecini %
( karakteri) kullanarak geri kalanı alabilirsiniz:
int a = 7;
int b = 4;
int c = 3;
int d = (a + b) / c;
int e = (a + b) % c;
Console.WriteLine($"quotient: {d}");
Console.WriteLine($"remainder: {e}");
C# tamsayı türü diğer bir özelliğiyle matematiksel tamsayılardan farklıdır: int
türünün alt ve üst sınırları vardır. Bu sınırları görmek için etkileşimli pencerede şu kodu çalıştırın:
int max = int.MaxValue;
int min = int.MinValue;
Console.WriteLine($"The range of integers is {min} to {max}");
Bir hesaplama, bu sınırları aşan bir değer veriyorsa bu, aşağı taşma veya taşma koşulunuzun olduğu anlamına gelir. Yanıtın bir sınırdan diğerine kaydığı görülüyor. Bir örnek görmek için şu iki satırı etkileşimli pencereye ekleyin:
int what = max + 3;
Console.WriteLine($"An example of overflow: {what}");
Yanıtın tam sayı alt sınırına (negatif) oldukça yakın olduğuna dikkat edin. Bu, min + 2
ile aynıdır.
Toplama işlemi, tamsayılar için izin verilen değerleri aşmıştır.
Taşma durumu en büyük olası tamsayı değerinden en küçük olana "kaydığından" yanıt oldukça büyük bir negatif sayıdır.
int
türü, gereksinimlerinizi karşılamadığında kullanabileceğiniz farklı sınırlar ve duyarlık içeren başka sayısal türler de mevcuttur. Şimdi bu sayı türlerini inceleyelim.
Çift tür ile çalışma
double
sayısal türü, çift duyarlıklı kayan noktalı bir sayıyı ifade eder. Bu terimler sizin için yeni olabilir. Kayan noktalı sayı, büyüklük açısından oldukça büyük veya küçük olabilen, tamsayı olmayan değerleri ifade etmek için kullanılır. Çift duyarlık , değeri depolamak için kullanılan ikili basamakların sayısını açıklayan göreli bir terimdir. Çift duyarlıklı sayılar, tek duyarlıklı olarak ikili basamak sayısının iki katıdır. Modern bilgisayarlarda çift duyarlıklı sayı kullanımı, tek duyarlıklı sayılara göre daha yaygındır. Tek duyarlıklı sayılar anahtar sözcüğü kullanılarak float
bildirilir.
İnceleyelim mi? Etkileşimli pencerede şu kodu deneyin ve sonuca bakın:
double a = 5;
double b = 4;
double c = 2;
double d = (a + b) / c;
Console.WriteLine(d);
Yanıtın, bölümün ondalık kısmını içerdiğine dikkat edin. Çift değerlerle biraz daha karmaşık bir ifadeyi deneyin:
double a = 19;
double b = 23;
double c = 8;
double d = (a + b) / c;
Console.WriteLine(d);
Çift değerin aralığı, tamsayı değerlerinden çok daha büyüktür. Etkileşimli pencerede aşağıdaki kodu deneyin:
double max = double.MaxValue;
double min = double.MinValue;
Console.WriteLine($"The range of double is {min} to {max}");
Bu değerler bilimsel gösterimde yazdırılır. E
değerinin sol tarafındaki sayı katsayıdır. Sağ taraftaki sayı 10’un bir kuvveti olarak üstür.
Matematikteki ondalık sayılar gibi C# dilindeki çift değerlerde de yuvarlama hataları olabilir. Şu kodu deneyin:
double third = 1.0 / 3.0;
Console.WriteLine(third);
Bunun ile tam olarak aynı 1/3
olmadığını biliyorsun.0.3
3/10
Benzer şekilde, 0.33
şeklindedir 33/100
. Bu, 'a 1/3
daha yakın ama yine de tam olarak değil.
Görev
Türünü kullanarak double
büyük sayılar, küçük sayılar, çarpma ve bölme içeren diğer hesaplamaları deneyin. Daha karmaşık hesaplamalar deneyin.
Ondalık türleriyle çalışma
C# dilinde temel sayısal türleri gördünüz: tamsayılar ve çiftler. Öğrenebileceğiniz bir tür daha vardır: decimal
türü. decimal
türü, double
türünden daha küçük bir aralığa ancak daha fazla duyarlığa sahiptir. Şimdi buna bir göz atalım:
decimal min = decimal.MinValue;
decimal max = decimal.MaxValue;
Console.WriteLine($"The range of the decimal type is {min} to {max}");
Aralığın double
türünden daha küçük olduğuna dikkat edin. Aşağıdaki kodu deneyerek ondalık türünde daha fazla duyarlık olduğunu görebilirsiniz:
double a = 1.0;
double b = 3.0;
Console.WriteLine(a / b);
decimal c = 1.0M;
decimal d = 3.0M;
Console.WriteLine(c / d);
Ondalık türünün kullanıldığı matematikte, ondalık ayırıcının sağ tarafında daha fazla basamak bulunduğunu görebilirsiniz.
Sayılardaki M
sonekiyle, bir sabit sayının decimal
türünü nasıl kullanması gerektiğini belirtirsiniz. Aksi takdirde, derleyici türü varsayar double
.
Not
HarfM
, ve decimal
anahtar sözcükleri arasında double
görsel olarak en belirgin harf olarak seçilmiştir.
Görev
Farklı sayısal türleri gördüğünüze göre yarı çapı 2,50 santimetre olan bir dairenin alanını hesaplayan kodu yazın. Bir dairenin alanının, yarı çapın karesinin PI sayısı ile çarpımından elde edildiğini unutmayın. İpucu: .NET, PI sayısı için kullanabileceğiniz Math.PI sabit değerini içerir. Math.PI, ad alanında System.Math
bildirilen tüm sabitler gibi bir double
değerdir. Bu nedenle, bu sınama için değerler yerine decimal
kullanmanız double
gerekir.
19 ile 20 arasında bir yanıt almanız gerekir.
Görevi tamamlama
Şunun gibi bir şeyle karşılaştınız mı?
double radius = 2.50;
double area = Math.PI * radius * radius;
Console.WriteLine(area);
Dilerseniz diğer formüllerden de deneme yapabilirsiniz.
Tebrikler!
"C# dilinde sayılar" etkileşimli öğreticisini tamamladınız. Sonraki etkileşimli öğreticiyi başlatmak için aşağıdaki Dallar ve Döngüler bağlantısını seçebilir veya .NET SDK'sını indirmek, makinenizde bir proje oluşturmak ve kodlamaya devam etmek için .NET sitesini ziyaret edebilirsiniz. "Sonraki adımlar" bölümü sizi bu öğreticilere geri getirir.
C# dilindeki sayılar hakkında daha fazla bilgiyi aşağıdaki makalelerde bulabilirsiniz:
Bu bölümle ilgili bir sorununuz mu var? Öyleyse bu bölümü iyileştirebilmemiz için lütfen geri bildirimde bulunun.