Menu
CoddyTech

2 Boyutlu Dizi Oluşturma

Coddy'nin PHP Journey'sinin Mantık ve Akış bölümünün bir parçası. Ders 27 / 68.

Çok boyutlu dizi, elemanları olarak başka diziler içeren bir dizidir. En yaygın türü, satırları ve sütunları olan bir tablo şeklinde düşünebileceğin 2B dizidir; elektronik tabloya veya oyun tahtasına benzer.

PHP'de 2B bir dizi oluşturmak kolaydır. Her öğesinin kendisi de bir dizi olduğu bir dizi oluşturursunuz:

<?php
$gameBoard = [
    ["", "", ""],
    ["", "", ""],
    ["", "", ""]
];
?>

Bu, her iç dizinin bir satırı ve bu dizilerdeki her öğenin bir sütunu temsil ettiği 3x3'lük bir ızgara oluşturur. Farklı veri türleriyle 2B diziler de oluşturabilirsiniz:

<?php
$scores = [
    [85, 92, 78],
    [90, 88, 95],
    [76, 84, 89]
];
?>

PHP ayrıca belirli bir değerle doldurulmuş bir diziyi hızlıca oluşturmanızı sağlayan array_fill() adlı yerleşik bir işlev de sunar. Üç bağımsız değişken alır: başlangıç indeksi, eleman sayısı ve doldurulacak değer:

<?php
// array_fill(start_index, num_elements, value)
$row = array_fill(0, 3, 0); // [0, 0, 0]
?>

Her hücrenin 0 ile başladığı 3x3'lük bir ızgara oluşturmak gibi, 2 boyutlu bir diziyi verimli şekilde oluşturmak için array_fill() işlevini kendi içinde kullanabilirsin:

<?php
$grid = array_fill(0, 3, array_fill(0, 3, 0));
// Sonuç: her elemanı 0 olan 3x3 boyutunda bir dizi
?>

Çok boyutlu diziler, oyun tahtaları, bilgi tabloları veya verileri ızgara biçiminde temsil etmeniz gereken her türlü senaryo gibi yapılandırılmış verileri düzenlemek için son derece kullanışlıdır. İlişkili bilgilerin satırları ve sütunlarıyla çalışmanın doğal bir yolunu sunarlar.

challenge icon

Görev

Kolay

2B dizinin boyutlarını ve başlangıç değerini temsil eden üç girdi alacaksınız: satır sayısı, sütun sayısı ve her konuma yerleştirilecek bir değer. Bu girdileri okuyun, belirtilen boyutlarda ve her öğesi verilen değere ayarlanmış bir 2B dizi oluşturun ve diziyi print_r() kullanarak yazdırın.

Girdi biçimi:

  • İlk satır: Satır sayısı (tamsayı)
  • İkinci satır: Sütun sayısı (tamsayı)
  • Üçüncü satır: Her öğe için başlangıç değeri (dize)

Beklenen çıktı: Oluşturulan 2B dizinin print_r() kullanılarak görüntülenmesi

Kendin dene

<?php
// Girdiyi oku
$rows = intval(fgets(STDIN));
$columns = intval(fgets(STDIN));
$value = trim(fgets(STDIN));

// TODO: 2D diziyi oluşturmak için kodunuzu aşağıya yazın


// Sonucu yazdır
print_r($array);
?>
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Mantık ve Akış bölümündeki tüm dersler

Kendi başına pratik yap: Online PHP derleyicisi