Menandai Tugas sebagai Selesai
Termasuk bagian Dasar-Dasar dalam perjalanan PHP di Coddy. Pelajaran 57 dari 71.
Tantangan
MudahPada pelajaran sebelumnya, kamu menampilkan semua tugas beserta statusnya. Sekarang, tambahkan kemampuan untuk menandai tugas tertentu sebagai selesai.
Baca empat baris input untuk deskripsi tugas (tiga tugas awal ditambah satu tugas baru, seperti sebelumnya). Lalu baca input kelima: bilangan bulat yang menunjukkan indeks tugas yang akan ditandai sebagai selesai (berbasis 0).
Setelah membuat array $todos yang berisi keempat tugas, ubah nilai "completed" menjadi true untuk tugas pada indeks yang ditentukan.
Lalu lakukan perulangan pada array dan cetak setiap tugas dengan format berikut:
- Jika tugas sudah selesai:
- [task description] (Done) - Jika tugas belum selesai:
- [task description] (Pending)
Cetak setiap tugas pada baris terpisah.
Contoh:
Jika inputnya adalah Buy groceries, Walk the dog, Finish homework, Call mom, dan 1, outputnya seharusnya:
- Buy groceries (Pending)
- Walk the dog (Done)
- Finish homework (Pending)
- Call mom (Pending)Jika inputnya adalah Clean room, Read book, Exercise, Cook dinner, dan 3, outputnya seharusnya:
- Clean room (Pending)
- Read book (Pending)
- Exercise (Pending)
- Cook dinner (Done)Coba sendiri
<?php
// Read three task descriptions
$task1 = trim(fgets(STDIN));
$task2 = trim(fgets(STDIN));
$task3 = trim(fgets(STDIN));
// Read the new task to add
$newTask = trim(fgets(STDIN));
// Create a $todos array containing three task arrays
// Each task should be an associative array with "task" and "completed" keys
$todos = [
["task" => $task1, "completed" => false],
["task" => $task2, "completed" => false],
["task" => $task3, "completed" => false]
];
// Add the new task to the end of the array
$todos[] = ["task" => $newTask, "completed" => false];
// Loop through the array and print each task in the formatted list
foreach ($todos as $todo) {
echo "- " . $todo["task"] . " (Pending)\n";
}
?>Semua pelajaran di Dasar-Dasar
4Operator Perbandingan & Logika
Operator PerbandinganKesamaan & IdentitasOperator Logika Bagian 1Operator Logika Bagian 2Rangkuman: Logika Sederhana2Variabel dan Tipe Data
AngkaString dan Tanda KutipBooleanKonvensi PenamaanRangkuman, Inisialisasi VariabelVariabel KosongPenggabungan stringMengambil input PenggunaKonversi ke Tipe Data Lain5Logika Percabangan
Pernyataan ifIf-elseOperator ternaryOperator koalesensi nullPernyataan switchRangkuman: Membuat Keputusan3Operator Dasar
Operator AritmetikaOperator ModuloOperator PangkatPenugasan GabunganInkrementasi/DekrementasiPrioritas OperatorUlasan: Perhitungan SederhanaOperator string6array Bagian 1: Berindeks
Pengenalan arrayMembuat array berindeksMengakses elemen berdasarkan indeksMengubah elemen berdasarkan indeksUkuran array dengan countMenambahkan elemen ke arrayRingkasan: Mengelola list sederhana9Proyek: Daftar Tugas Sederhana
Ringkasan Proyek & DataMenambahkan Tugas BaruLatihan sendiri: Compiler PHP online