Menu
Coddy logo textTech

2 Boyutlu Dizi Elemanlarını Değiştirme

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

2D bir dizideki öğelere erişebildiğinizde, bir sonraki mantıklı adım bunların değerlerini nasıl değiştireceğinizi öğrenmektir. 2D bir dizideki öğeleri değiştirmek, onlara erişmekle aynı çift dizinleme sözdizimini kullanır, ancak yeni bir değer atamak için bir atama operatörü ile birlikte kullanılır.

İşte 2 boyutlu bir dizideki belirli bir öğeyi nasıl değiştireceğiniz:

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

// Orta hücreyi 'X' olarak değiştir
$gameBoard[1][1] = "X";

// Sol üst köşeyi 'O' olarak değiştir
$gameBoard[0][0] = "O";
?>

$gameBoard[1][1] = "X" söz dizimi, 1. satır, 1. sütunu (3x3'lük bir ızgaranın merkezi) hedefler ve bu konuma "X" değerini atar. Bu, orijinal diziyi doğrudan değiştirerek orada daha önce bulunan değerin yerine geçer.

Bu değiştirme tekniği; oyun durumlarını güncellemek, tablolardaki verileri değiştirmek veya ızgara benzeri veri yapınızdaki belirli konumları değiştirmeniz gereken herhangi bir senaryo için gereklidir. Tam konumları belirleme ve güncelleme yeteneği, 2D dizileri satırlar ve sütunlar halinde düzenlenmiş dinamik, değiştirilebilir bilgileri temsil etmek için mükemmel kılar.

quiz iconKendini test et

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

quiz iconKendini test et

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

quiz iconKendini test et

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

challenge icon

Görev

Kolay

Dört girdi alacaksınız: JSON formatında bir oturma planını temsil eden 2 boyutlu bir dizi, bir satır indeksi, bir sütun indeksi ve yeni bir yolcu adı. Dört girdiyi de okuyun, JSON dizesini 2 boyutlu bir diziye dönüştürün, belirtilen satır ve sütundaki öğeyi yeni yolcu adını atayarak değiştirin ve güncellenmiş 2 boyutlu diziyi print_r() kullanarak yazdırın.

2 boyutlu dizi, her bir öğenin bir yolcu adını veya boş koltuklar için boş bir dizeyi içerdiği bir oturma planını temsil eder.

Giriş formatı:

  • Birinci satır: Oturma planını temsil eden bir JSON dizisi (örnek: [["Alice","Bob",""],["","Charlie","Diana"],["","",""]])
  • İkinci satır: Satır indeksi (tam sayı)
  • Üçüncü satır: Sütun indeksi (tam sayı)
  • Dördüncü satır: Yeni yolcu adı (dize)

Beklenen çıktı: print_r() kullanılarak görüntülenen değiştirilmiş 2 boyutlu dizi

Kopya kağıdı

2B bir dizideki öğeleri değiştirmek için, bir atama operatörü ile çift dizinleme sözdizimini kullanın:

$array[row][column] = newValue;

Bir oyun tahtasını değiştirme örneği:

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

// Orta hücreyi 'X' olarak değiştir
$gameBoard[1][1] = "X";

// Sol üst köşeyi 'O' olarak değiştir
$gameBoard[0][0] = "O";
?>

Bu, belirtilen konumdaki değeri değiştirerek orijinal diziyi doğrudan değiştirir. Değiştirme tekniği, satırlar ve sütunlar halinde düzenlenmiş dinamik verileri güncellemek için gereklidir.

Kendin dene

<?php
// Girdileri oku
$json_input = trim(fgets(STDIN));
$row_index = intval(fgets(STDIN));
$col_index = intval(fgets(STDIN));
$new_passenger = trim(fgets(STDIN));

// JSON'u 2 boyutlu diziye dönüştür
$seating_chart = (array)json_decode($json_input, true);

// TODO: Oturma planını değiştirmek için kodunuzu aşağıya yazın


// Değiştirilmiş diziyi yazdır
print_r($seating_chart);
?>
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