Algoritma 1 pertemuan 6

24
Ade kurnia solihin

Transcript of Algoritma 1 pertemuan 6

Ade kurnia solihin

Menggunakan konstruksi IF-THEN (jika-maka) dalam bentuk pernyataan :

Ingatlah bahwa aksi sesudah kata then akan dikerjakan hanya jika kondisi bernilai true.

if kondisi thenaksi

endif

PROGRAM Genap {mencetak pesan “bilangan genap” jika sebuah

bilangan bulat yang dibaca dari piranti masukan merupakan bilangan genap}

DeklarasiX : integer

ALGORITMARead (x)If x mod 2 = 0 then write (‘genap’)endif

Menggunakan konstruksi IF-THEN-ELSE (jika-maka-kalau tidak) dalam bentuk pernyataan:

Aksi1 akan dilaksanakan jika kondisi bernilai benar, tetapi jika kondisi bernilai salah, maka aksi2 yang akan dilaksanakan.

if kondisi thenaksi1

elseaksi2

endif

benarKONDIKONDI

SISI

AKSI 2AKSI 2AKSI 1AKSI 1

ENDEND

salah

Program upah_karyawanDeklarasi

Const Jamnormal = 8Const Upahperjam = 2000Const Upah lembur = 3000Nama : string {nama karyawan}Jjk : integer {jumlah jam kerja}Lembur : real {jumlah jam lembur}Upah :real {upah karyawan }

Algoritma: Read ( nama, jjk )If jjk <= jam normal then

Upah := jjk * upahperjamElse

Lembur := jjk – jam normalUpah := jamnormal * upahperjam + lembur * upahlembur

EndifWrite (nama, upah)

Masalah yang mempunyai tiga buah kasus atau lebih tetap dapat dianalisis dengan struktur IF-THEN-ELSE sebagaimana halnya pada masalah dengan dua kasus

if kondisi1 then aksi1else if kondisi2 then aksi2 else if kondisi3 then aksi3 endif endifendif

if kondisi1 then aksi1else if kondisi2 then aksi2 else if kondisi3 then aksi3 else if kondisi4 then aksi4 endif endif endifendif

kondisikondisi11

aksi1aksi1

endend

kondisikondisi11

aksi2aksi2aksi3aksi3

endend

Contoh menentukan wujud air Tuliskan algoritma yang membaca termperatur air, T, (dalam satuan derajat celcius) pada tekanan normal, lalu menentukan apakah wujud air tersebut dalam keadaan padat (T < 0 ), cair (0<T<100), atau gas (T>100).

Penyelesaian Misalkan suhu air adalah T Analisis kasus

Kasus 1, jika T < 0, maka air berwujud padat Kasus 2, jika 0 < T < 100, maka air berwujud cair Kasus 3, jika T > 100, maka air berwujud uap

PROGRAM WujudAir. ( Menentukan wujud air: padat, cair, atau gas, bergantung pada suhunya )

DEKLARASI T : real (suhu air, dalam derajat celcius)

ALGORITMA read(T)

if T > 0 then write(‘padat’); else if (T > 0) and (T < 100) then write(‘cair’) else

if T > 100 then write(‘gas atau uap’)

endif endif

endif

Menentukan bilangan terbesar dari 3 bilangan bulat dengan membaca 3 bilangan tersebut

PROGRAM MaksimunDeklarasiA, B, C, maks : integer

AlgoritmaRead(A,B,C)If A>B then

maks = Aelse

maks = Bend ifIf C> maks then

maks = Cendif

Write(maks)

program ifTigaKasus; var bil:integer; begin

write('masukan sebuah bilangan'); readln(bil); if (bil<0) then

begin writeln(bil,' merupakan bilangan NEGATIF');

end else if (bil=0) then begin

writeln(bil,' merupakan bilangan NOL'); end else begin

writeln(bil,' merupakan bilangan POSITIF'); end;

end.

Struktur CASE dapat digunakan untuk menganalisis penyeleksian dua kasus atau lebih dan bentuknya adalah lebih sederhana dari pada struktur IF-THEN-ELSE yang memiliki bentuk bertingkat-tingkatKondisi1, kondisi2, … kondisiN dapat bernilai benar atau salah. Tiap kondisi diperiksa nilai pertama sampai ditemukan kondisi yang benar.

Jika kondisi ke-k benar, maka aksi ke-k dilaksanakan, selanjutnya keluar dari struktur CASE

Aksi yang dipasangkan dengan kondisi ke-k dapat lebih dari satu, karena itu ia berupa runtunan

Jika tidak ada satupun kondisi yang benar, maka aksi sesudah otherwise (optional) dikerjakan.

case (nama)kondisi : aksi1kondisi2 : aksi2kondisi3 : aksi3 . . .kondisiN : aksiN[otherwise aksiX]

endcase

Buatlah algoritma yang membaca sebuah angka bulat yang nilainya terletak antara 1 sampai 4, lalu menuliskan ke piranti keluaran angka tersebut dalam kata-kata. Misalkan bila dibaca angka 1, maka tercetak tulisan “satu”, bila dibaca 2, maka tercetak tulisan “dua”, demikian seterusnya. Jika angka yang dimasukkan selain 1 sampai 4 tuliskan pesan bahwa angka yang dimasukkan salah.

Dengan struktur IF-THEN-ELSEDengan struktur IF-THEN-ELSE

Contoh 2: Contoh 2: Buatlah algoritma untukBuatlah algoritma untuk menentukan nama bulan berdasarkan pada menentukan nama bulan berdasarkan pada nomor bulannya.nomor bulannya.Algoritma NAMA_BULAN{ Mencetak nama bulan berdasarkan nomor bulannya }

DEKLARASIAngkaBulan : integer { 1..12 }

DESKRIPSI :read(AngkaBulan)case(AngkaBulan)

AngkaBulan=1 : write(‘Januari’)AngkaBulan=2 : write(‘Februari’)AngkaBulan=3 : write(‘Maret’)AngkaBulan=4 : write(‘April’)AngkaBulan=5 : write(‘Mei’)AngkaBulan=6 : write(‘Juni’)AngkaBulan=7 : write(‘Juli’)AngkaBulan=8 : write(‘Agustus’)AngkaBulan=9 : write(‘September’)AngkaBulan=10 : write(‘Oktober’)AngkaBulan=11 : write(‘Nopember’)AngkaBulan=12 : write(‘Desember’)

otherwise write(‘Bukan nomor bulan yang benar’)endcase

program NAMA_BULAN;{ Mencetak nama bulan berdasarkan nomor bulannya }(* DEKLARASI *)var

AngkaBulan : integer;(* DESKRIPSI *)begin

write(‘Masukkan angka bulan (1 – 12) : ‘);readln(AngkaBulan);case AngkaBulan of 1 : writeln(‘Januari’); 2 : writeln(‘Februari’); 3 : writeln(‘Maret’); 4 : writeln(‘April’); 5 : writeln(‘Mei’); 6 : writeln(‘Juni’); 7 : writeln(‘Juli’); 8 : writeln(‘Agustus’); 9 : writeln(‘September’); 10 : writeln(‘Oktober’); 11 : writeln(‘Nopember’); 12 : writeln(‘Desember’);else writeln(‘Bukan nomor bulan yang benar’);end;

end.

Tidak semua bahasa pemrograman menyediakan struktur CASE (misalnya Bahasa Fortran). Bahasa Pascal dan C menyediakan struktur ini. Jika bahasa pemrograman tidak menyediakan struktur CASE, maka struktur CASE dapat diganti dengan struktur IF-THEN-ELSE yang ekivalen

AlgoritmaPengertian algoritmaPersyaratan membuat algoritma

ProgramPengertian programPersyaratan membuat program

Tipe dataIdentifier, variabel, konstanta, operator dan ekspresi numerikPengertian flowchartProgram flowchartRuntunan (sequence)Pemilihan (selection) satu kasusPemilihan (selection) dua kasusPemilihan tiga kasus atau lebihNested repetisionStruktur case

ReferensiReferensi

MUN 2011 Algoritma dan Pemrograman

Ibu dosen dwi marlina M.kom Ibu Dosen Korlap ibu Aulia