readline() ile Girdi Okuma
Coddy'nin R Journey'sinin Temeller bölümünün bir parçası — ders 29 / 78.
Şimdiye kadar, çıktıyı nasıl görüntüleyeceğinizi öğrendiniz. Şimdi kullanıcıdan girdi okuyarak programlarınızı etkileşimli hale getirme zamanı. readline() fonksiyonu, kullanıcının yazdıklarını yakalamanıza olanak tanır.
name <- readline()
cat("Hello,", name, "\n")Bu kod çalıştığında, R kullanıcının bir şey yazmasını ve Enter tuşuna basmasını bekler. Yazdıkları her neyse name değişkeninde saklanır. Eğer kullanıcı "Alice" yazarsa, çıktı şöyle olur: Hello, Alice
Bilinmesi gereken önemli bir nokta: readline(), kullanıcı bir sayı girse bile her zaman bir karakter dizisi döndürür. Eğer birisi "25" girerse, bu 25 sayısı olarak değil, "25" metni olarak saklanır. Bir sonraki derste türler arasında nasıl dönüşüm yapacağınızı öğreneceksiniz.
Birden fazla kez readline() kullanarak birden fazla girdi okuyabilirsiniz:
first <- readline()
second <- readline()
cat("First:", first, "\n")
cat("Second:", second, "\n")Her bir readline() çağrısı, kullanıcıdan ayrı bir giriş satırı bekler.
Dizeleri aralarında hiç boşluk bırakmadan birleştirmek istediğinizde paste0() işlevini kullanın. Her öğe arasına boşluk ekleyen cat() işlevinin aksine, paste0() değerleri doğrudan birleştirir:
city <- readline()
cat(paste0("Welcome to ", city, "!"), "\n")Burada paste0(), ! işaretinden önce istenmeyen boşluklar olmadan Welcome to Paris! dizesini oluşturur ve ardından cat() bunu yazdırır.
Görev
Kolayİki satırlık girdi okuyun ve kişiselleştirilmiş bir karşılama mesajı görüntüleyin.
İki girdi alacaksınız:
- Bir isim
- Bir şehir adı
Her iki girdiyi de readline() kullanarak okuyun ve aşağıdaki formatta bir mesaj görüntüleyin:
Welcome, [name] from [city]!Çıktıyı üretmek için cat() kullanın. Sona ünlem işareti ve bir yeni satır karakteri \n eklediğinizden emin olun.
Örneğin, girdiler Emma ve Paris ise, çıktı şöyle olmalıdır:
Welcome, Emma from Paris!Kopya kağıdı
Kullanıcı girişini okumak için readline() fonksiyonunu kullanın:
name <- readline()
cat("Hello,", name, "\n")readline() fonksiyonu, kullanıcının bir şeyler yazıp Enter tuşuna basmasını bekler. Giriş, bir karakter dizisi olarak saklanır.
Birden fazla girişi okumak için readline() fonksiyonunu birden çok kez kullanın:
first <- readline()
second <- readline()
cat("First:", first, "\n")
cat("Second:", second, "\n")Not: Kullanıcı bir sayı yazsa bile readline() her zaman bir karakter dizisi döndürür.
Değerleri aralarında boşluk bırakarak yazdırmak için cat() fonksiyonunu kullanın. Değerleri aralarında boşluk olmadan birleştirmek için paste0() fonksiyonunu kullanın:
name <- readline()
cat(paste0("Hello, ", name, "!"))Bu örnekte paste0(); "Hello, " ifadesini, name değişkeninde saklanan değeri ve "!" işaretini fazladan boşluk bırakmadan tek bir dizede birleştirir.
Kendin dene
# Girdiyi oku
con <- file("stdin", "r")
name <- suppressWarnings(readLines(con, n = 1))
city <- suppressWarnings(readLines(con, n = 1))
# YAPILACAK: Karşılama mesajını görüntülemek için kodunuzu aşağıya yazın
# Çıktı için cat() kullanın: Welcome, [name] from [city]!
# Sonuna yeni satır karakterini \n eklemeyi unutmayınBu 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 (AND, OR)Mantıksal Operatörler Bölüm 2 (NOT)Özet - Basit MantıkVektörize Mantık Bölüm 1Vektörize Mantık Bölüm 27Hesap Paylaşım Hesaplayıcısı
Hoş Geldiniz MesajıKullanıcıdan Girdi Alma10Farklı Bir FizzBuzz
Oyuna Genel BakışFizzBuzz Fonksiyonu2Değişkenler ve Veri Tipleri
Sayısal Veri TipiTam Sayı Veri TipiKarakter Veri TipiMantıksal Veri TipiVeri Tiplerini Kontrol Etmeİsimlendirme KurallarıEksik Değerler: NAÖzet - Değişken Oluşturma8Döngüler
For DöngüsüWhile DöngüsüBreakNext (Continue)Özet - FaktöriyelDizi Oluşturma (seq, :)İç İçe DöngülerÖzet - Dinamik Girdi3Operatörler 1. Bölüm
Aritmetik OperatörlerTam Sayı Bölmesi ve Mod AlmaAtama OperatörleriÖzet - Basit MatematikKarşılaştırma Operatörleri6Temel Giriş-Çıkış
Print ÇıktısıÇıktı için Cat KullanımıDeğişkenlerle Çıktı Almakreadline() ile Girdi OkumaTip Dönüşümü TemelleriÖzet - Yaş HesaplayıcıÖzet - Doğru mu Yanlış mı9Fonksiyonlar
Fonksiyon TanımlamaFonksiyon ArgümanlarıDönüş DeğerleriÖzet - Sigma FonksiyonuÖzet - Doğrulama FonksiyonuVarsayılan Parametre Değerleri