Javascript Girilen Sayıyı Yazıya Çevirme Kodu
Klavyeden girilen bir sayıyı yazıya çeviren örneğin javascript kodları. Öncelikle ekranın daha düzenli görünmesi için gerekli olan css kodlarını oluşturuyoruz. Daha sonra tasarladığımız Css kodlarıyla oluşturduğumuz kutu ile kullanıcıdan bir sayı girmesini istiyoruz. Kullanıcının girmiş olduğu sayıyı bir fonksiyon yardımı ile basamaklarına ayırıyoruz. Her basamağın 0’dan 9’a kadar hangi rakamdan oluştuğunu tespit ediyoruz. Daha sonra basamakların birler, binler, milyonlar, milyarlar ve trilyonlar kısımlarını tespit ediyoruz. Eğer girilen sayı ondalıklı bir sayı ise ondalıklı kısmına ayrıca bir hesaplama yaptırıyoruz. Tüm sayıyı yazıya çevirdikten sonra ekrana yazdırıyoruz.
Programın kodları:
<html> <head> <meta charset="utf-8"> <title>Kazım ŞİMŞEK</title> <style> body { width: 80%; max-width: 1200px; margin: 40px auto; font: normal 14px/1.5 "Montserrat", "Helvetica Neue", sans-serif; background: #cfd8dc; color: #37474f; } .kutu{ background: whitesmoke; margin: 0 0 40px; box-shadow: 0px 2px 4px rgba(0,0,0,0.2); width:50%; } #sayi{ width: 90%; padding:10px 5%; border:none; outline: none; margin-bottom:10px; } #goster{ text-align: center; font-size: 1.5em; } </style> </head> <body> <div class="kutu"> <input type="number" id="sayi" placeholder="Sayı Giriniz"> <div id="goster"> </div> </div> </script> var sayi= document.getElementById("sayi"); // input kutusunu sayi.onkeyup=function(){ var goster=document.getElementById("goster");//div etiketi var islem=new SayiDonustur(this.value); goster.innerHTML=islem.sonuc; } function SayiDonustur(sayi){ sayi=String(sayi); this.sonuc; let bolum1 = ["", "bir", "iki", "üç", "dört", "beş", "altı", "yedi", "sekiz", "dokuz"]; let bolum2 = ["", "on", "yirmi", "otuz", "kırk", "elli", "altmış", "yetmiş", "seksen", "doksan"]; let bolum3 = ["", "yüz", "bin", "milyon", "milyar", "trilyon", "katrilyon"]; let sayi1; //tam kısım let sayi2 = ""; // ondalıklı kısım let sonuc = ""; sayi = sayi.replace(",", "."); //virgül girilirse noktaya dönüştürülüyor if (sayi.indexOf(".") > 0) { // nokta varsa (kuruş) sayi1 = sayi.substring(0, sayi.indexOf(".")); // tam kısım sayi2 = sayi.substring(sayi.indexOf("."), sayi.length); // ondalıklı kısım } else { sayi1 = sayi; // ondalık yok } var rk = sayi1.split(""); // rakamlara ayırma let son; let w = 1; // işlenen basamak var sonaekle = 0; // binler on binler yüzbinler vs. için sona bin (milyon,trilyon...) eklenecek mi? let kac = rk.length; // kaç rakam var? let sonint; // işlenen basamağın rakamsal değeri let uclubasamak = 0; // hangi basamakta (birler onlar yüzler gibi) let artan = 0; // binler milyonlar milyarlar gibi artışları yapar let gecici; if (kac > 0) { // virgül öncesinde rakam var mı? for (i = 0; i < kac; i++) { son = rk[kac - 1 - i]; // son karakterden başlayarak çözümleme yapılır. sonint = parseInt(son); // işlenen rakam if (w == 1) { // birinci basamak bulunuyor sonuc = bolum1[sonint] + sonuc; } else if (w == 2) { // ikinci basamak sonuc = bolum2[sonint] + sonuc; } else if (w == 3) { // 3. basamak if (sonint == 1) { sonuc = bolum3[1] + sonuc; } else if (sonint > 1) { sonuc = bolum1[sonint] + bolum3[1] + sonuc; } uclubasamak++; } if (w > 3) { // 3. basamaktan sonraki işlemler if (uclubasamak == 1) { if (sonint > 0) { sonuc = bolum1[sonint] + bolum3[2 + artan] + sonuc; if (artan == 0) { // birbin yazmasını engelle if(kac-1==i) { // sonuc = sonuc.replace(bolum1[1] + bolum3[2], bolum3[2]); } } sonaekle = 1; // sona bin eklendi } else { sonaekle = 0; } uclubasamak++; } else if (uclubasamak == 2) { if (sonint > 0) { if (sonaekle > 0) { sonuc = b2[sonint] + sonuc; sonaekle++; } else { sonuc = b2[sonint] + b3[2 + artan] + sonuc; sonaekle++; } } uclubasamak++; } else if (uclubasamak == 3) { if (sonint > 0) { if (sonint == 1) { gecici = b3[1]; } else { gecici = b1[sonint] + b3[1]; } if (sonaekle == 0) { gecici = gecici + b3[2 + artan]; } sonuc = gecici + sonuc; } uclubasamak = 1; artan++; } } w++; // işlenen basamak } } this.sonuc=sonuc; } </script> </body> </html>
Kaynak:www.yazilimbilisim.net
Bu Yazıya Tepkin Nedir?
+1
+1
+1
+1
+1
+1
+1
<< Önceki Yazı
Sonraki Yazı >>
javascript, javascript dersleri, javascript fonksiyon kullanımı, javascript kodları, javascript örnek kodları, javascript örnek uygulamaları, javascript örnekleri, javascript sayıyı yazıya çevirme kodu, javascript uygulamaları