Latihan 1 (Hal 116)
- Gantilah data dalam print dengan print ("2 + 3"), kemudian jalankan (run). Apa hasilnya?
- Kemudian, ganti kembali data dalam print dengan print (2 + 3). Apa hasilnya?
- Ganti kembali data dalam print dengan print ("2" + "3"). Apa hasilnya?
- Apa makna dari penggunaan tanda petik tersebut?
- print ("2 + 3")-> print "2 + 3" karena dua ditambah tiga ditulis apa adanya sebagai sebuah teks dalam tanda petik (string). Tidak ada bilangan dan tidak ada operasi penjumlahan
- print (2 + 3)-> Bilangan 5 karena dua dan tiga tanpa tanda petik diterjemahkan sebagai bilangan, begitu juga tanda plusnya. Maka perintah ini mencetak hasil dari penjumlahan bilangan 2 dengan bilangan 3
- print ("2" + "3")-> Teks "23", karena dua dan tiga dengan tanda petik diterjemahkan sebagai teks (string), di mana penjumlahan teks dilakukan dengan menjejerkan kedua teks tersebut (concatenation)
- Penggunaan tanda petik bermakna bahwa apapun yang berada di antara tanda petik diterjemahkan sebagai teks atau string. Jika dicetak, dicetak apa adanya. Jika dioperasikan mengikuti operasi teks
- Jika diperhatikan, ada berapa nama variabel yang digunakan pada program di atas?
- Apa makna dari baris ke-2 dan ke-3 dalam program?
- Terdapat 3 variabel, yaitu bil1, bil2, dan jumlah
- Makna dari baris ke-2 (bil2 = 5) ialah variabel bil2 diisi dengan bilangan 5
- Makna dari baris ke-3 ialah variabel jumlah diisi dengan hasil penjumlahan dari isi variabel bil1 dan bil2 yaitu 10+5 atau 15
- Dapatkah bil2 tercetak di hasil eksekusi?
- Kemudian, sekarang tambahkan perintah print pada baris untuk mencetak bil2 dan jumlah
- dapatkah kedua variabel tersebut tercetak?
- Variabel bil2 tidak tercetak di hasil eksekusi karena perintah mencetak nama variabel hanya dapat dilakukan pada perintah di baris terakhir (dalam hal ini mencetak isi variabel jumlah.
- Adapun dengan menggunakan perintah print, kita dapat mencetak nilai dari variabel manapun. Dengan demikian, menggunakan print kedua variabel dapat tercetak
- Ketikkan kode program berikut, kemudian lihat hasil eksekusinya bil1 = 10print(bil1)bil1 = 5print(bil1)
- Apakah output dari variabel bil1 pada baris ke empat? nilai 5 saja? kemanakah nilai 10 nya?
- Output dari variabel bil1 pada baris ke empat ialah 5 saja
- Nilai 10 yang diisi sebelumnya hilang, ditimpa oleh 5. Pada saat variabel bil1 diisikan (assigned) dengan 5 pada baris ketiga, isi dari variabel ini diganti dengan 5. Apapun nilai sebelumnya akan diganti/hilang. Inilah sifat pemprograman sekuensial dimana isi dari sebuah variabel bergantung pada nilai terakhir yang diisikan
- Ketikkan baris perintah pertama dan kedua saja pada kode program berikut. lemudian jalankan programnya. Apakah outputnya 9?data = [10, 9, 7, 8, 10, 8]print(data[1])data[2] = 10print(data)data.append(9)print(data)
- Padahal kita ingin mencetak data ke-1 pada baris kedua tersebut. Mengapa tidak muncul bilangan 10?
- Yang tercetak di output ialah bilangan 9
- Hal ini terjadi karena array dalam phyton dimulai dari index 0. Maka print(data[1]) maknanya ialah mencetak elemen ke-1 atau urutan kedua. Jika ingin mencetak bilangan 10, yang ditulis ialah print(data[0])
- Perhatikan baris ke-5 pada program berikut, mengapa nomer index yang dicetak di baris sebelumnya perlu ditambah 1 setiap perulangan? data = [10, 9, 7, 8, 10, 8]indeks = 0for elemen in data:print("Elemen ke ", indeks, " = ", elemen)indeks = indeks + 1
- bagaimana jika diganti, indexks ditambah dengan 2? Apa keluarannya?
- Bagaimana jika di pindah, penambahan indek dilakukan di baris ke empat, apa outputnya?
- Perlu ditambah 1 agar berubah/berpindah ke indeks berikutnya. Jika baris kelima ini dihapus, indeks akan terus berada di nilai 0, tidak sesuai dengan elemen yang dicetak
- Jika diganti dengan 2, perubahan antar indeks terjadi dalam selisih 2 seperti 0,2,4, dan seterusnya. Tidak sesuai dengan elemen yang di cetak
- Jika dipindah ke baris ke empat, yang tercetak dimulaidari, 1,2,3, dan seterusnya, tidak sesuai dengan elemen yang dicetak
- Pesan error yang muncul ialah "unsupported operand type (s) for /: 'str' or 'int'"
- Maknanya operan yang diberikan tidak bisa dilakukan operasi dengan operator pembagian (/). Hal ini terjadi karena data pada elemen ke-2 bernilai "cindi" yang berupa nilai teks atau string. Nilai teks ini tidak bisa dibagi. Oleh karena itu, program memberikan pesan kesalahan.