Menu
Coddy logo textTech

Dizi Oluşturma (seq, :)

Coddy'nin R Journey'sinin Temeller bölümünün bir parçası — ders 43 / 78.

Döngülerinizde diziler oluşturmak için 1:5 kullanıyordunuz. Bu iki nokta üst üste operatörü hızlı ve basittir, ancak R dizileriniz üzerinde daha fazla kontrol sağlamak için seq() fonksiyonunu da sunar.

İki nokta üst üste operatörü ardışık tam sayılardan oluşan bir dizi oluşturur:

print(1:5)
print(10:6)

Çıktı:

[1] 1 2 3 4 5
[1] 10 9 8 7 6

Dizinin her iki yöne de gidebileceğine dikkat edin. İlk sayı daha büyük olduğunda, geriye doğru sayar.

seq() fonksiyonu size daha fazla esneklik sağlar. by argümanını kullanarak bir adım boyutu belirtebilirsiniz:

print(seq(2, 10, by = 2))

Çıktı:

[1] 2 4 6 8 10

Bu, 2'den 10'a kadar olan çift sayıları oluşturur.

Ayrıca length.out kullanarak kaç tane sayı istediğinizi belirtebilirsiniz:

print(seq(1, 10, length.out = 4))

Çıktı:

[1] 1 4 7 10

R, size tam olarak 4 eşit aralıklı sayı vermek için aralığı otomatik olarak hesaplar. Her iki yaklaşım da döngülerde sorunsuz çalışarak özel diziler üzerinde kolayca yineleme yapmanıza olanak tanır.

challenge icon

Görev

Kolay

Girdiden üç sayı okuyun: start, end ve step.

Verilen step boyutuyla start değerinden end değerine kadar bir dizi oluşturmak için seq() fonksiyonunu kullanın. Ardından, bu dizi üzerinde döngü kurmak için bir for döngüsü kullanın ve her sayının karesini yazdırın.

Her kare alınmış değer, print() kullanılarak kendi satırında yazdırılmalıdır.

Örneğin, girdiler 2, 10 ve 2 ise, çıktı şu şekilde olmalıdır:

[1] 4
[1] 16
[1] 36
[1] 64
[1] 100

Bunun nedeni 2, 4, 6, 8, 10 dizisinin oluşturulması ve her sayının karesinin alınmasıdır.

Kendin dene

# Girdiyi oku
con <- file("stdin", "r")
start <- as.numeric(suppressWarnings(readLines(con, n = 1)))
end <- as.numeric(suppressWarnings(readLines(con, n = 1)))
step <- as.numeric(suppressWarnings(readLines(con, n = 1)))

# TODO: Kodunuzu aşağıya yazın
# 1. Belirtilen step ile start'tan end'e bir dizi oluşturmak için seq() kullanın
# 2. Dizide döngü oluşturmak için bir for döngüsü kullanın
# 3. print() kullanarak her sayının karesini yazdırın
quiz iconKendini test et

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