🧮 Çevrimiçi Hesaplayıcı — Ücretsiz, Tarih ve Klavye Desteğiyle
Toolio Hesaplayıcı, toplama, çıkarma, çarpma, bölme ve yüzde işlemleri yapabilir. Ayrıca, son 50 sonucunuzu tarayıcınızda kaydeden kaydırılabilir bir geçmişe sahiptir. Bu hesaplayıcıda bilimsel fonksiyonlar, parantezler veya bellek tuşları (M+, M-, MR) bulunmamaktadır çünkü bu tuşlar arayüzde mevcut değildir. Arka planda bir işlem önceliği analizcisi çalışır ancak ekrandaki tuşlar her seferinde sadece bir işlemi analizciye iletir. Bu yüzden 2 + 3 x 4 = tuşlarına bastığınızda sonuç 20 olur, değil de cebirsel işlem sırasına göre 14 olur. Her sonuç ekrana gösterilmeden önce 12 anlamlı rakama yuvarlanır. Bu yüzden 0.1 + 0.2 işlemi ekranda 0.3 olarak gösterilir, değil de JavaScript'in doğrudan 0.30000000000000004 olarak verdiği değer.
Toolio Hesaplayıcı, tarayıcıda çalışan dört işlem (toplama, çıkarma, çarpma, bölme ve yüzde) hesaplayıcısıdır. 50 girdilik bir geçmişe ve tam klavye desteğiye sahiptir ve tamamen çevrimdışı çalışır.
Tasarım gereği gizli. Bu araç, tarayıcınızda tamamen çalışır — girdiğiniz hiçbir şey yüklenmez ya da saklanmaz ve çevrimdışı da çalışır.
Hakkında
Bu hesap makinesinin ne yaptığı — ve yapmadığı
Tuş kilitleri AC, geri tuşu, %, bölme, çarpma, çıkarma, toplama, 0-9 rakamları, ondalık nokta ve eşittir tuşlarını içerir. Bu, tüm özelliklerdir. Karekök, üs, trigonometri, parantezler ve bellek kayıtları yoktur. Bu özellikleri gerekirse bu araç uygun değildir. Klavye tuşları butonlara birebir eşleşir: rakam tuşları, +, -, *, /, Enter veya = eşittir için, Backspace, Escape temizleme için, % yüzde için. Tüm bu tuşlar tek bir dinleyiciye bağlanmıştır ve sayfa üzerinde başka bir girdi alanına yazarken bu dinleyiciyi engellememektedir.
Matematik nasıl çalışır
İşlem önceliği, çoğu insanın 'hesap makinesi' denilen bir araçtan beklediği şekilde farklı çalışır. Araç, bir ifade dizesi oluşturur ve bu ifadeyi doğru bir 'shunting-yard' algoritması ile değerlendirir. Bu algoritma, çarpma ve bölmenin toplama ve çıkarmadan önce yapılmasını sağlar. Ancak, buton arayüzü her seferinde sadece bir işlem operatörü ve iki sayıyı değerlendiriciye iletir. Örneğin 2 + 3 x 4 = tuşlarına bastığınızda şu şekilde olur: 2 tuşuna bastığınızda 2 bekleyen sol değer olarak saklanır. 3 tuşuna bastığınızda bir sonraki sayı belirlenir. x tuşuna bastığınızda bekleyen 2 + 3 işlemi hemen değerlendirilir (çünkü yeni bir işlem operatörü gelirken bir sonuç hâlâ bekleniyor), bu da 5 verir ve bu yeni sol değer olur. 4 tuşuna bastığınızda bir sonraki sayı belirlenir. = tuşuna bastığınızda 5 x 4 işlemi değerlendirilir ve 20 sonucu gösterilir. Eğer tüm girdi zinciri üzerinden tam işlem sırası uygulanırsa 14 (2 + 12) sonucu verirdi. Bu zincir türünden davranış, standart dört işlem hesap makineleri (çoğu telefonun standart modunda bulunan tür) ile uyumlu olur. Bu tür davranış, bilimsel ya da ifade tabanlı hesap makineleriyle karıştırılmamalıdır. Bu tür araçlar için en yaygın yanlış cevap raporları budur.
Ondalık sayı işleme, görünen sayı ile doğrudan hesaplanan sayı arasında farklılık gösterir. İkili ondalık sayılar, onluk tabandaki çoğu kesri tam olarak temsil edememektedir. Bu yüzden JavaScript, 0.1 + 0.2 işlemini 0.30000000000000004 olarak hesaplar ve 100 x 1.1 işlemini 110.00000000000001 olarak hesaplar. Herhangi bir sonuç ekrana ulaşmadan önce 12 anlamlı rakama yuvarlanır. Bu da 0.3 ve 110 gibi insanın beklentisiyle uyumlu temiz sonuçları verir. Bu düzeltme gerçek sınırlamalara sahiptir: 15 haneli bir tam sayı gibi 999999999999999, 12 haneli kesme ile 1000000000000000 olarak yuvarlanır. Bu da, ekrana yuvarlama nedeniyle girilen tam sayıdan farklı bir tam sayıya dönüşür. Bu, ondalık sayı bir artefaktı değil, gerçek bir değer kaybıdır. Ve bir sonucun büyüklüğü 1e21'e ulaştığında, JavaScript'in kendi sayı biçimlendirme sistemi, 12 haneli yuvarlamadan bağımsız olarak üstel gösterime (1e+21) geçer.
Bazı küçük koruyucular davranışları tamamlar: sıfıra bölme işlemi içerde hata verir ve ekranda yerel bir 'Hata' mesajı gösterilir, değil de Infinity veya NaN. Bu, bekleyen işlemi temizler ve yeniden başlamak için size olanak tanır. Ham rakam girişi, yazarken 15 karakter sınırına ulaşır (geri tuşu, tek bir 0'a kadar normal şekilde çalışır). Yüzde işlevi bağlamla çalışır: bekleyen bir işlemle birlikte, % tuşuna bastığınızda, saklı sol değerin yüzdesini hesaplar (200, +, 10, % 20 gösterir, ardından = tuşuna bastığınızda 220 gösterir). % tuşu tek başına, mevcut ekrandaki değeri 100'e böler.
Hesaplama geçmişi — son 50, tarayıcınızda kaydedilir
Geçmiş, tarayıcınızın localStorage'ında bu araçın kendi ad alanı altında son 50 hesaplamayı saklar. 51. girdi, en eski girdiyi sessizce atar. Geçmiş panelindeki herhangi bir girdiye tıklanıldığında, bu sonuç ekrana ve ifade satırına geri döner ve üzerine devam edebilirsiniz. Geçmişi temizleme, listeyi hemen temizler ve bir toast ile onun gerçekleştiğini onaylar. Çünkü localStorage'da, bu geçmiş, bu özel tarayıcıda ve bu özel cihazda bağlıdır. Özel tarayıcı (özel/incognito) kontekstindeki sekmelere, farklı tarayıcılara veya cihazlara senkronizasyon yapmaz.
Nasıl kullanılır
- Rakamları klavyenizle yazın veya ekrandaki rakam tuşlarını tıklayın.
- +, -, x veya / (veya eşleşen klavye tuşu) tuşlarına bastığınızda bir işlem seçersiniz; ikinci bir işlem tuşuna bastığınızda önceki işlem hemen değerlendirilir.
- Yüzde için % tuşunu kullanın: bir işlem beklerken, saklı değerin yüzdesini hesaplar (200, +, 10, % ardından = 220 verir); tek başına, mevcut ekrandaki değeri 100'e böler.
- Enter veya = tuşuna bastığınızda sonuç görünür — otomatik olarak Geçmiş'e kaydedilir ve 12 anlamlı rakama yuvarlanarak ekrana gösterilir.
- Geçmiş panelindeki herhangi bir girdiye tıklayarak o sonucu ve ifadesini ekrana geri çağırabilir ve oradan devam edebilirsiniz.
- Escape tuşuna bastığınızda veya AC'ye tıkladığınızda her şeyi temizleyebilirsiniz, veya Backspace tuşuna bastığınızda yazdığınız son rakamı kaldırabilirsiniz.
SSS
- 0.1 + 0.2 gerçekten 0.3 olarak gösteriliyor mu, yoksa genellikle ondalık sayı kusurlarından mı?
- 0.3 olarak gösterilir. JavaScript, ikili ondalık sayıların 0.1 veya 0.2'yi tam olarak temsil edememesi nedeniyle 0.30000000000000004 olarak hesaplar. Ancak bu hesaplayıcı, her sonucu ekrana göstermeden önce 12 anlamlı rakama yuvarlar. Bu da günlük sayılar için bu artefaktı gizler.
- Eğer 2 + 3 x 4 = girersem 14 mi yoksa 20 mi alırım?
- 20 alırsınız. Önceki bir işlem hâlâ beklerken bir işlem tuşuna bastığınızda, bekleyen işlem hemen değerlendirilir (2 + 3 = 5 önce), ardından sonraki işlem bu sonuç üzerinde uygulanır (5 x 4 = 20). Bu, standart dört işlem hesap makineleri için standart davranıştır, bir hata değildir. Bir bilimsel hesap makinesi, girdi zinciri üzerinden tam işlem sırasını uygulayarak 14 sonucunu verirdi.
- Bilimsel mod, parantezler veya bellek tuşları (M+/M-/MR) var mı?
- Hayır. Bu, dört işlem ve yüzde ile birlikte geçmiş olan bir hesaplayıcıdır. Trigonometrik fonksiyonlar, üsler, karekökler, parantezler veya bellek kayıtları arayüzde mevcut değildir. Bu özellikleri gerekirse bu araç uygun değildir.
- Hesaplamalarım herhangi bir yere yüklenir mi?
- Hayır. Tüm hesaplamalar tarayıcınızda yapılır ve geçmişiniz sadece tarayıcınızın localStorage'sında saklanır. Hiçbir şey sunucuya gönderilmez ve araç, internet bağlantısı olmadan da çalışır.
- Çok büyük veya çok hassas sayılarla ne olur?
- Sonuçlar, ekrana gösterilmeden önce 12 anlamlı rakama yuvarlanır. Bu, büyük bir tam sayıyı sessizce değiştirebilir. Örneğin, 15 haneli 999999999999999 sayısı 1000000000000000 olarak gösterilir. Sonucun büyüklüğü 1e21'e ulaştığında, ekranda üstel gösterime (örneğin 1e+21) geçilir, bu yuvarlamadan bağımsız olarak gerçekleşir.
- Sıfıra bölersem ne olur?
- Hesaplayıcı bunu açıkça yakalar ve Infinity veya NaN yerine yerel bir 'Hata' mesajı gösterir. Ardından bekleyen işlemi temizler ve hemen yeni bir hesaplama yapmanıza olanak tanır.
- Bu araç, verilerimi yükler mi?
- Hayır. Her şey tarayıcınızda çalışır, bu yüzden verileriniz cihazınızdan asla çıkmaz — sayfa yüklendikten sonra bile çevrimdışı çalışır.