Percabangan, Algoritma

Struktur percabangan atau sering disebut dengan struktur kontrol ini memungkinkan programmer untuk membuat program yang dapat memilih satu langkah di antara sejumlah langkah untuk dikerjakan. Dalam Pascal disediakan 2 buah struktur kontrol seleksi, yaitu:

1. Statemen IF
    a. Struktur IF……Then…..
Bentuk : if kondisi then statemen;
Contoh :
Uses crt;
Var
            Nilai:char;
            Ket:string[5];
Begin
             Write(‘Masukan Nilai :’);
             Readln(Nilai)
            If Nilai = ‘E’
            Then    Ket := ‘Gagal’;
            Ket := ‘Lulus’;
            Writeln(‘Keterangan :’,Ket);

Readln
End.
     b. Struktur IF……ThenElse
Bentuk : if kondisi then
statemen1;
else
statemen2 ;
Contoh :
Uses crt;
Var
           Nilai:char;
           Ket:string[5];
Begin
           Write(‘Masukan Nilai :’);
           Readln(Nilai)
           If Nilai > 60 Then
          Ket := ‘Gagal’;
                Else
          Ket := ‘Lulus’;
          Writeln(‘Keterangan :’,Ket);
Readln
End.
      c. Struktur IF Tersarang
         Merupakan struktur kontrol di mana suatu aksi dilaksanakan berdasarkan kondisi logikanya (benar atau salah). Struktur if .. then … sendiri memiliki 4 jenis, yaitu:
• Bentuk 1
if kondisi1 then
if kondisi2 then
statemen1;
else
statemen2;
• Bentuk 2
if kondisi1 then
begin
if  kondisi1 then
statemen1;
else
statemen2;
end;
• Bentuk 3
if  kondisi1 then
if  kondisi2 then
statemen1;
else
statemen2;
else
statemen3;
• Bentuk 4
if  kondisi1 then
begin
if  kondisi2 then
begin
if  kondisi3 then
statemen1;
else
statemen2;
end;
end;
end;
Contoh:
Uses Crt; 
var
           Nilai:integer; 
           Huruf:char;
begin
          write(‘Baca nilai :’);readln(Nilai); 
          if nilai>=80 then Huruf := ‘A’
         else    
         if nilai>=70 then Huruf :=  ‘B’
         else       
        if nilai>=55 then Huruf :=  ‘C’
        else          
        if nilai>=35 then Huruf :=  ‘D’
       else             
       huruf :=’E); 
      writeln(‘Keterangan :’,Huruf);
readln 
end.
Catatan: Jika anda menggunakan else, perlu diingat bahwa satu baris sebelum else tidak diperkenankan mengandung tanda “ ; ”.
2. Statemen Case
    a.  Struktur CaseOf
         Merupakan peluasan dari struktur IF. Karena kalau dalam struktur IF hanya disediakan dua pilihan (berdasarkan kondisi logikanya) maka dalam struktur Case..of dimungkinkan untuk memilih satu pilihan di antara banyak pilihan yang ada. Bentuk umumnya :
Case  var_pilih  of
Pilih1 : aksi1 ;
Pilih2 : aksi2 ;
……………. ;
pilih-n : aksi-n ;
end;
Contoh:
uses crt;
var
           nilai:char;
begin
          write(‘Nilai huruf yang didapat :’);
          readln(nilai);
          case nilai of
         0..25 : writeln(‘Nilainya = E’);     
         26..39 : writeln(‘Nilainya = D’);     
         40..64 : writeln(‘Nilainya = C’);     
        65..79 : writeln(‘Nilainya = B’);     
       80..100: writeln(‘Nilainya = A’);     
       End;
readln
End.
     b. Struktur CaseOfElse..
Case  var_pilih of
pilih1 : aksi1 ;
 pilih2 : aksi2 ;
……………. ;
pilih-n : aksi n;
else aksi-n+1
end;
Contoh:
Uses Crt; 
Var 
             Nilai : integer; 
begin         
            write(‘Baca nilai =’);readln(Nilai); 
           Case Nilai of      
           0..25 : writeln(‘Nilainya = E’);     
          26..39 : writeln(‘Nilainya = D’);     
          40..64 : writeln(‘Nilainya = C’);     
          65..79 : writeln(‘Nilainya = B’);     
         80..100: writeln(‘Nilainya = A’);     
          else           
         writeln(‘Tidak ada nilai yang dimaksud :’);
          end;
readln
end.
Catatan : Program ini akan memberikan nilai yang sama persis dengan yang menggunakan struktur IF.
Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s