Menu
CoddyTech

Perulangan di dalam perulangan

Termasuk bagian Dasar-Dasar Scripting Unity dalam perjalanan Unity di Coddy. Pelajaran 38 dari 85.

Satu baris membutuhkan satu perulangan. Satu lantai penuh, dengan baris dan kolom, membutuhkan perulangan di dalam perulangan:

for (int column = 0; column < 3; column++)
{
    for (int row = 0; row < 2; row++)
    {
        Debug.Log(column + ", " + row);
    }
}

Pada setiap putaran perulangan luar, perulangan dalam berjalan sampai selesai. Jadi, ini menampilkan 0, 0 dan 0, 1, lalu 1, 0 dan 1, 1, lalu 2, 0 dan 2, 1: 3 kolom dikali 2 baris, total 6 baris.

Kedua perulangan membutuhkan penghitung dengan nama yang berbeda. Di sini, namanya sesuai dengan yang dihitung, column dan row, sehingga kodemu lebih mudah dibaca daripada jika menggunakan i dan j.

challenge icon

Tantangan

Sedang

Buat lantai dari 12 ubin: 4 kolom, 3 baris.

  1. Di dalam Start(), ganti PlaceTile(0, 0); dengan for (int column = 0; column < 4; column++).
  2. Di dalam kurung kurawalnya, tulis for (int row = 0; row < 3; row++), lalu panggil PlaceTile(column, row); di dalam perulangan bagian dalam itu.

Tekan tombol “Main”: lantai yang terdiri dari 4 kolom dan 3 baris ubin akan muncul. Lalu tekan tombol “Periksa”.

Coba sendiri

using UnityEngine;

public class TileFloor : MonoBehaviour
{
    void Start()
    {
        // Susun ubin dalam 4 kolom dan 3 baris.
        PlaceTile(0, 0);
    }

    void PlaceTile(int column, int row)
    {
        GameObject tile = GameObject.CreatePrimitive(PrimitiveType.Cube);
        tile.name = "Tile";
        tile.transform.position = new Vector3(column * 1.1f - 1.65f, 0.1f, row * 1.1f);
        tile.transform.localScale = new Vector3(1, 0.2f, 1);
        tile.GetComponent<Renderer>().material.color = new Color(0.85f, 0.85f, 0.9f);
    }
}

Semua pelajaran di Dasar-Dasar Scripting Unity

Latihan sendiri: Playground Unity