Thursday, May 1, 2014

If Then, Multi Condition

Pak Dengklek memberikan Anda sebuah bilangan bulat N (-100.000 ≤ N ≤ 100.000). Jika N adalah bilangan genap positif, maka cetak kembali bilangan tersebut. Jika tidak, jangan cetak apa-apa.

Format Masukan

Baris pertama berisi sebuah bilangan bulat N.

Format Keluaran

Sebuah baris berisi keluaran sesuai permintaan soal.

Contoh Masukan 1

12 

Contoh Keluaran 1

12

Contoh Masukan 2

11

Contoh Keluaran 2


Petunjuk

Anda dapat langsung mengubah program untuk soal If Then dengan menambahkan kondisi kedua (apakah bilangan tersebut genap) yang perlu diperiksa. Jika <kondisi> berisi dua kondisi yang keduanya harus benar maka Anda menuliskan kedua kondisi tersebut berurutan diperantarai oleh operator and sebagai berikut
if  (<kondisi pertama>) and (<kondisi kedua>) then
begin
    <perintah-perintah>
end;
Tentu, <kondisi pertama> adalah 'apakah bil positif' dan <kondisi kedua> adalah 'apakah bil bilangan genap', yang dapat diperiksa dengan memeriksa nilai modulus (sisa pembagian) dari bil> jika bil dibagi dengan 2. Dalam Pascal, dituliskan bil mod 2. Jika modulus itu berharga 0, bil habis dibagi (tanpa sisa), sementara jika bukan 0, maka bil tidak habis terbagi (ada sisa). Bilangan genap selalu habis dibagi 2 sehingga modulusnya harus 0. Jadi <kondisi kedua> memeriksa apakah bil mod 2 = 0 dan pemeriksaan kedua kondisi tersebut dalam struktur if-then menjadi
if (bil > 0) and (bil mod 2 = 0) then
begin
    writeln(bil);
end;
Apakah posisi kedua kondisi bisa ditukar? Tentu bisa karena and sebagai operator logika tidak mementingkan urutan (kecuali pada kasus-kasus tertentu, yang akan dijelaskan kemudian).


No comments:

Post a Comment