Farklı sürümlerde hesap makinesinde 0 ^ 0 sonucunu kontrol ettim:
- iOS 10.3 => 1
- iOS 11.4 => Hata
- macOS 10.12.6 => 1
- macOS 10.13.5 => Sayı Değil
Farkın nedeni nedir?
Farklı sürümlerde hesap makinesinde 0 ^ 0 sonucunu kontrol ettim:
Farkın nedeni nedir?
Yanıtlar:
0⁰ genellikle tanımsız olsa da, bazı matematik dalları bunu açıkça 1 olarak tanımlar , çünkü görebileceğiniz gibi bu, y (x) = xˣ fonksiyonunun n = 0'da birleştiği değerdir.
Daha az resmi olarak, 0.5 0.5 = 0.707…; 0,2 0,2 = 0,725…; 0.1 0.1 = 0.794… ve 0.01 0.01 = 0.955…. 0'a yaklaştıkça sonuç 1'e yaklaşacaktır, bu da bazı durumlarda 0 ^ 0'ı 1 olarak tanımlamayı oldukça mantıklı ve kullanışlı hale getirir .
Bu nedenle, bu 3 sonucun hiçbiri kendi başına yanlış değildir ve bunun yerine hepsi bu tanımsız ifadenin değeri hakkındaki farklı kuralları yansıtmaktadır.
Sorunu açıklayan iyi bir Wikipedia makalesi var . Ayrıca bkz . Sıfır güce sıfır - 0⁰ = 1? .
Kayan nokta aritmetiğinin çoğu uygulaması, pow (0,0) değerinin 1 döndürdüğünü belirten IEEE 754-2008 standardını takip eder (bkz. §9.2.1).
Ancak, diğer iki işlevi de tanımlar: pown (0,0) = 1 ve powr (0,0) = NaN.
Wikipedia bunu şöyle özetliyor :
IEEE 754-2008 kayan nokta standardı, çoğu kayan nokta kitaplığının tasarımında kullanılır. Bir güç hesaplamak için bir dizi işlem yapılmasını önerir: [20]
pow 0 0'ı 1 olarak kabul eder . Eğer güç tam bir tamsayı ise sonuç pown ile aynıdır, aksi takdirde sonuç powr ile aynıdır (bazı istisnai durumlar hariç).
pown 0 0'ı 1 olarak kabul eder . Güç tam bir tamsayı olmalıdır. Değer negatif bazlar için tanımlanır; örneğin, pown (−3,5) −243'tür. powr 0 0'ı NaN (Sayı Değil - tanımsız) olarak kabul eder. Bazın sıfırdan küçük olduğu powr (−3,2) gibi durumlarda da değer NaN'dir. Değer epower × log (taban) ile tanımlanır.
Pow değişkeni, temel olarak uyumluluk için C99'daki pow işlevinden esinlenmiştir. [21] Çoğunlukla tek bir güç işlevine sahip diller için kullanışlıdır. Pown ve powr varyantları, güç işlevlerinin çakışan kullanımı ve farklı bakış açıları (yukarıda belirtildiği gibi) nedeniyle tanıtılmıştır. [22]
Elbette bunun doğru matematiksel sonucun ne olduğu üzerinde hiçbir etkisi yoktur: diğerlerinin de belirttiği gibi, birden fazla olası cevap vardır ve IEEE keyfi bir karar vermek zorunda kaldı.
Apple'dan biri 0 ^ 0'ın geçersiz bir işlem olduğunu anladı ve düzeltti.
Sıfırın gücüne sıfır bir çelişkidir
Bu gerektiğini bir hata oluşturabilir. Bir hatanın oluşturulmasını görmemenizin tek nedeni, söz konusu Hesap Makinesi sürümünün bu giriş hatasını yakalamamasından kaynaklanmaktadır.
(X, y) -> (0,0) değerinde bir süreksizliği olan x ^ y fonksiyonuna kadar kaybolan yaklaşık 0⁰ civarında bir yarı tartışma vardır. Bu bir yarı tartışmadır çünkü süreksizlikte bir değere sahip bir işlevi yasaklamak matematiksel saçmalıktır.
Tamsayılar, gerçekler üzerinde tanımlanan bir fonksiyon, gerçek fonksiyon integral değerleri her aldığında tamsayılarda tanımlanan fonksiyonla eşleşecek şekilde gerçeklere gömmek genel bir uygulamadır. Bu nedenle 0.0 ^ 0'ı 0.0 ^ 0.0'dan ayırmanın pek bir anlamı yoktur.
Şimdi ⁰ tamsayı olarak 0 tamsayı ile x'in tam sıfır faktörlerini içeren bir üründür. Değerinde x faktörü bulunmadığından, x'e bağlı olarak bir değer atamanın pek bir anlamı yoktur ve boş bir ürün olarak değeri açıkça çarpma için nötr bir unsur olan 1'dir.
Binom teoremini sıfırdan farklı değerlerle keyfi olarak sınırlamadığı için bu da mantıklıdır. Bir bakıma bu, x⁰ fonksiyonunu x = 0'da mantıklı bir şekilde tamamlamaya çalışarak her yerde tanımlanmış ve sürekli hale getirmeye dayanan bir argüman.
Bunu 0 ^ x işleviyle denersek, x = 0 + 'daki sınır 0 olabilir, ancak bu şekilde tanımlamak, işlev negatif x için tanımlanmadığı için temel süreksizliğin iyileştirilmesine yardımcı olmaz.
Şimdi hesap makineleri x ^ y değerini exp (y * ln (x)) olarak hesaplama eğilimindedir. Tabii ki bu x = 0 için kötü bir haber. Bu nedenle, bu tür değerlerin açıkça programlanması gerekir, aksi takdirde bir sayıya ulaşmazsınız. Açık programlama için, programlayıcının matematiksel sezgisine güvenmeniz gerekir ve tipik programcı, bir matematikçiden daha çok "bir fonksiyon tanımlandığı yerde sürekli olmalıdır" gibi psödomomatik sezgi tarafından yönlendirilir.
Buna ek olarak, farklı kullanıcılardan bir yorum dalgası bekleyebilirsiniz ve saf matematikçiler, matematiksel gerçek vizyonları için hesap makinelerine geri dönmeyeceklerdir, bu nedenle girdilerinin başkalarının bataklığını yapmasını bekleyemezsiniz.
Dolayısıyla sonuç, matematiksel olandan daha demokratik bir sonuçtur ve demokratik çoğunluklar değişme eğilimindedir.