Tip Dönüşümü
Coddy'nin Ruby Journey'sinin Temeller bölümünün bir parçası — ders 31 / 88.
gets ile girdi okuduğunuzda, kullanıcı bir sayı yazsa bile Ruby her zaman bir string döndürür. Hesaplamalar yapmanız gerektiğinde bu bir sorun haline gelir.
age = gets.chomp
puts age + 5Bu kod bir hataya neden olacaktır çünkü bir dizeye (string) bir sayı ekleyemezsiniz. Bunu düzeltmek için, dizeyi .to_i (tam sayıya) veya .to_f (ondalıklı sayıya) kullanarak bir sayıya dönüştürmeniz gerekir:
age = gets.chomp.to_i
puts age + 5Şimdi kullanıcı "20" yazarsa, çıktı 25 olacaktır. Ondalık sayılara ihtiyacınız olduğunda .to_f kullanın:
price = gets.chomp.to_f
puts price * 1.1Sayıları .to_s kullanarak tekrar dizelere dönüştürebilirsiniz. Bu, dize enterpolasyonu kullanmadan sayıları metinle birleştirmeniz gerektiğinde kullanışlıdır:
count = 42
puts "Count: " + count.to_sGörev
KolayKullanıcıdan girdi olarak iki sayı okuyun. İlk girdi bir tam sayı (integer) ve ikinci girdi bir ondalıklı sayıdır (float).
Aşağıdakileri hesaplayın ve ayrı satırlara yazdırın:
- Her iki sayının toplamı
- Her iki sayının çarpımı (multiplication)
Hesaplamaları yapmadan önce her girdiyi uygun sayısal türe dönüştürdüğünüzden emin olun.
Örneğin, girdiler 5 ve 2.5 ise, çıktı şöyle olmalıdır:
7.5
12.5Kopya kağıdı
gets ile girdi okurken, Ruby her zaman bir dize döndürür. Hesaplama yapmak için, .to_i (tam sayıya) veya .to_f (ondalıklı sayıya) kullanarak dizeleri sayılara dönüştürün:
age = gets.chomp.to_i
puts age + 5Ondalıklı sayılar için .to_f kullanın:
price = gets.chomp.to_f
puts price * 1.1Sayıları tekrar dizelere dönüştürmek için .to_s kullanın:
count = 42
puts "Count: " + count.to_sKendin dene
# Girdiyi oku
integer_num = gets.chomp.to_i
float_num = gets.chomp.to_f
# YAPILACAK: Toplamı ve çarpımı hesaplamak için kodunuzu aşağıya yazın
# Sonuçları yazdır (toplamı ve çarpımı ayrı satırlara yazdır)Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Temeller bölümündeki tüm dersler
4Operatörler Bölüm 2
Mantıksal Operatörler Bölüm 1Mantıksal Operatörler Bölüm 2Özet - Basit MantıkMantıksal Operatörler Bölüm 3Mantıksal Operatörler Bölüm 47Hesap Paylaşımı Hesaplayıcısı
Hoş Geldiniz MesajıKullanıcı Girdisi Alma13İleri Seviye Diziler
Aralıklar ile Dizi Dilimlemeİndeksler ile Dizi DilimlemeDizi OperatörleriInclude? Metodu2Değişkenler ve Veri Tipleri
Sayılar ve DeğişkenlerString Veri TipiBoolean Veri TipiSymbol Veri TipiVeri Tiplerini Kontrol Etmeİsimlendirme KurallarıÖzet - Değişken Oluşturma8Döngüler
Aralıklar ile For DöngüsüWhile DöngüsüBreakNextÖzet - FaktöriyelTimes DöngüsüUntil Döngüsüİç İçe DöngülerÖzet - Dinamik Girdi3Operatörler Bölüm 1
Aritmetik OperatörlerModulo OperatörüAritmetik KısayollarÖzet - Basit MatematikKarşılaştırma Operatörleri6Temel IO
puts ile Çıktı Almaprint ve p ile Çıktı AlmaDeğişkenlerle Çıktı Almagets ile Girdi AlmaChomp MetoduTip DönüşümüÖzet - Yaş HesaplayıcıÖzet - Doğru mu Yanlış mı9Metotlar
Metot TanımlamaMetot ParametreleriDönüş DeğerleriÖzet - Sigma MetoduÖzet - Doğrulama MetoduVarsayılan Parametre Değerleri12Koleksiyonlar Üzerinde Yineleme
Each Yineleyicisiİndeks ile EachStringler Üzerinde YinelemeMap ve Collect