Algoritma Pemograman (Kondisi)



Struktur Pengambilan Keputusan / Statement Kendali

Statement kendali digunakan untuk proses pengambilan keputusan. Dimana proses akan dikerjakan bila kondisi yang disyaratkan sesuai (bernilai true / benar). Terdapat dua statement kendali :
1.       IF
2.       CASE

Statement IF
·         Kondisi Ganda
Sintaks : IF <kondisi> THEN <statement> ELSE <statement>

Contoh Program IF..THEN
Uses wincrt;
Var
        nilai : real;
Begin
        Write(‘Jumlah nilai : ‘); readln(nilai);
        If nilai > 60 then writeln(‘LULUS’) else writeln(‘TIDAK LULUS’);
End.

·         IF Tersarang (Nested IF)
Sintaks :       IF<kondisi> THEN <statement>
                        ELSE IF <statement>
                        ELSE IF <statement>



Contoh Program Penggunaan IF Tersarang
Uses wincrt;
Var
        nilai : real;
begin
        write(‘Jumlah nilai : ‘); readln(nilai);
        if nilai > 79 then writeln(‘Grade A’)
        else if nilai > 69 then writeln(‘Grade B’)
        else if nilai > 59 then writeln(‘Grade C’)
        else if nilai > 49 then writeln(‘Grade D’)
        else writeln(‘Grade E’);
end.

·         CASE
Bentuk CASE...OF
CASE <ungkapan> OF
Konstan1 : <statement>
Konstan2 : <statement>
:
ELSE <statement>
END;





Contoh Program Penggunaan CASE..OF
Contoh 1:
Uses wincrt;
Var
        huruf : char;
begin
        write(‘Masukkan nilai huruf : ‘); readln(huruf);
        CASE nilai OF
        ‘A’ : writeln(‘Sangat Baik’);
        ‘B’ : writeln(‘Baik’);
        ‘C’ : writeln(‘Cukup’);
        ‘D’ : writeln(‘Kurang’);
        ‘E’ : writeln(‘Sangat Kurang’);
else writeln('Anda menekan tombol yang salah, coba lagi !');
END;
End.

Contoh 2:
uses wincrt;
var
   nilai:byte;
begin
     write('Masukkan nilai 1..10 : ');readln(nilai);
     CASE nilai OF
     1 : writeln('Anda menekan angka satu');
     2 : writeln('Anda menekan angka dua');
     3 : writeln('Anda menekan angka tiga');
     4 : writeln('Anda menekan angka empat');
     5 : writeln('Anda menekan angka lima');
     6 : writeln('Anda menekan angka enam');
     7 : writeln('Anda menekan angka tujuh');
     8 : writeln('Anda menekan angka delapan');
     9 : writeln('Anda menekan angka sembilan');
     10 : writeln('Anda menekan angka sepuluh');
     else writeln('Anda memasukkan angka yang salah, coba lagi !');    
END;
end.

Contoh 3:
uses wincrt;
var
   nilai:char;
begin
     write('Masukkan nilai A..E : ');readln(nilai);
     CASE nilai OF
     'A','a' : writeln('Anda menekan huruf A');
     'B','b' : writeln('Anda menekan huruf B');
     'C','c' : writeln('Anda menekan huruf C');
     'D','d' : writeln('Anda menekan huruf D');
     'E','e' : writeln('Anda menekan huruf E');
     ELSE writeln('Anda menekan tombol yang salah, coba lagi !');
     END;
end.






Contoh  4:
uses wincrt;
var
   h : char;
begin
     write('Masukkan huruf atau angka : ');readln(h);
     CASE h OF
     'A'..'Z' : writeln('Anda menekan huruf besar : ',h);
     'a'..'z' : writeln('Anda menekan huruf kecil : ',h);
     '0'..'9' : writeln('Anda menekan angka : ',h);
     ELSE writeln('Anda menekan tombol yang salah, coba lagi !');
     END;
end.

Contoh 5:
uses wincrt;
var
   nilai:integer;
begin
     write('Masukkan nilai 0-100 (bilangan bulat) : ');readln(nilai);
     CASE nilai OF
     85..100 : writeln('Anda mendapat nilai A');
     75..84 : writeln('Anda mendapat nilai B');
     60..74 : writeln('Anda mendapat nilai C');
     50..59 : writeln('Anda mendapat nilai D');
     0..49 : writeln('Anda mendapat nilai E');
     ELSE writeln('Anda menekan tombol yang salah, coba lagi !');
     END;
end.

Tidak ada komentar:

Posting Komentar