LOGIKA DASAR
PEMROGRAMAN
PENDAHULUAN


Sebuah program dibangun dari tiga buah logika
dasar pemrograman, yaitu :
1. Logika Urut / Runtunan (Sequence)
2. Logika
Percabangan / Pemilihan /
Penyeleksian Kondisi (Selection)
3. Pengulangan / Looping (Repetition)
LOGIKA URUT





Logika pemrograman yang paling sederhana.
Digunakan pada program sederhana yang hanya
berupa runtunan satu atau lebih perintah.
Konsep logika urut :
1. Tiap perintah dikerjakan satu per satu.
2. Tiap perintah dilaksanakan tepat sekali.
3. Urutan pelaksanaan perintah sama dengan
urutan penulisan algoritma/program.
LOGIKA PERCABANGAN




Digunakan jika di dalam program, sebuah
perintah dikerjakan jika persyaratan atau
kondisi tertentu dipenuhi.
Contoh penggunaan :
 Menentukan suatu bilangan bulat termasuk
genap atau ganjil.
 Menentukan siswa yang lulus atau tidak
berdasarkan nilai rata-rata yang diperoleh.
 Dll.
LOGIKA PERCABANGAN


Jenis-jenis logika percabangan :
1. Percabangan If Tunggal
2. Percabangan If Ganda
3. Percabangan If Majemuk
4. Percabangan If Tersarang
5. Percabangan Case
PERCABANGAN IF TUNGGAL






Digunakan jika pemilihan hanya memberikan
satu pilihan yang dilaksakan bila kondisi
(persyaratan) dipenuhi (bernilai benar), dan
tidak
memberikan
pilihan
lain
yang
dilaksanakan bila kondisi bernilai salah.
Kondisi berupa suatu ekspresi boolean yang
menggunakan operator pembanding atau
operator logika.
Contoh kondisi :
 (Bunga < 0.2)
 (Nilai >= 90) and (Nilai <= 100)
PERCABANGAN IF TUNGGAL




Notasi Pseudocode :
if <Kondisi> then
<Pernyataan-1>
<Pernyataan-2>
…………………
<Pernyataan-n>
endif
Pernyataan sesudah Then hanya akan dilaksanakan
bila <kondisi> bernilai benar (true). Bila <kondisi>
bernilai salah (false), maka tidak ada pernyataan
yang dilaksanakan.
PERCABANGAN IF TUNGGAL


Notasi Flowchart :
PERCABANGAN IF TUNGGAL




Notasi Delphi jika hanya ada
pernyataan yang dilaksanakan :
if <Kondisi> then
<Pernyataan>;
Contoh :
if (nilai >= 60) then
status = ‘Lulus’;

satu
PERCABANGAN IF TUNGGAL


Notasi Delphi jika ada lebih
pernyataan yang dilaksanakan :
if <Kondisi> then
begin
<Pernyataan-1>;
<Pernyataan-2>
…………………
<Pernyataan-n>
end;

dari

satu
PERCABANGAN IF TUNGGAL


Contoh :
if (nilai >= 60) then
begin
status = ‘Lulus’;
indeks = ‘C’;
end;
PERCABANGAN IF GANDA





Digunakan jika pemilihan memberikan dua
alternatif pilihan.
Notasi Pseudocode :
if <Kondisi> then
<Pernyataan-1>
else
<Pernyataan-2>
endif
Pernyataan-1 akan dilaksanakan jika kondisi
bernilai benar, tetapi jika kondisi bernilai salah,
maka Pernyataan-2 yang akan dilaksanakan.
PERCABANGAN IF GANDA


Notasi Flowchart :
PERCABANGAN IF GANDA




Notasi Delphi jika hanya ada satu pernyataan yang
dilaksanakan :
if <Kondisi> then
<Pernyataan-1>
else
<Pernyataan-2>;
Contoh :
if (nilai >= 60) then
status = ‘Lulus’
else
status = ‘Tidak Lulus’;
PERCABANGAN IF GANDA


Notasi Delphi jika ada lebih dari satu Pernyataan
yang dilaksanakan :
if <Kondisi> then
begin
<Pernyataan-1>;
<Pernyataan-2>;
end
else
begin
<Pernyataan-3>;
<Pernyataan-4>;
end;
PERCABANGAN IF MAJEMUK



Digunakan jika pemilihan memberikan lebih dari
dua alternatif pilihan.
Notasi Pseudocode (4 pilihan) :
if <Kondisi-1> then
<Pernyataan-1>
else if <Kondisi-2> then
<Pernyataan-2>
else if <Kondisi-3> then
<Pernyataan-3>
else
<Pernyataan-4>
endif
PERCABANGAN IF MAJEMUK


Notasi Flowchart :
PERCABANGAN IF MAJEMUK


Notasi Delphi jika hanya ada
pernyataan yang dilaksanakan :
if <Kondisi-1> then
<Pernyataan-1>
else if <Kondisi-2> then
<Pernyataan-2>
else if <Kondisi-3> then
<Pernyataan-3>
else
<Pernyataan-4>;

satu
PERCABANGAN IF MAJEMUK


Notasi Delphi jika ada lebih
Pernyataan yang dilaksanakan :
if <Kondisi-1> then
begin
<Pernyataan-1>;
<Pernyataan-2>;
end
else if <Kondisi-2> then
begin
<Pernyataan-3>;
<Pernyataan-4>;
end

dari

satu
PERCABANGAN IF MAJEMUK
else if <Kondisi-3> then
begin
<Pernyataan-5>;
<Pernyataan-6>;
end
else
begin
<Pernyataan-7>;
<Pernyataan-8>;
end;
PERCABANGAN CASE






Digunakan sebagai alternatif dari percabangan
if
majemuk
namun
strukturnya
lebih
sederhana.
Tidak semua bentuk percabangan if majemuk
dapat diubah menjadi percangan case, tetapi
semua bentuk percangan case dapat diubah
menjadi percabangan if.
Hanya dapat digunakan pada penyeleksian
kondisi yang hanya tergantung pada satu
variabel penyeleksi.
PERCABANGAN CASE








Hanya dapat digunakan pada penyeleksian
kondisi yang membandingkan sama atau tidak.
Tidak dapat digunakan pada penyeleksian
kondisi yang membandingkan <, <=, >, atau >=.
Dapat memakai beberapa konstanta dalam
sebuah perbandingan.
Dapat menyeleksi kondisi yang berupa range
(jangkauan nilai).
PERCABANGAN CASE




Notasi (jika hanya ada satu pernyataan yang
dilaksanakan) :
case (selectorExpression) of
caseList_1: statement_1;
caseList_2: statement_2;
...
caseList_n: statement_n;
else
statements;
end;
Ekspresi
yang
akan
dibandingkan
(selectorExpression)
harus
bertipe
integer,
karakter, atau boolean.
PERCABANGAN CASE


Notasi (jika ada lebih dari satu pernyataan
yang dilaksanakan) :
case (selectorExpression) of
caseList_1: begin
statement_11;
statement_12;
end;
caseList_2: begin
statement_21;
statement_22;
end;
PERCABANGAN CASE
...
caseList_n: begin
statement_n1;
statement_n2;
end;
else
begin
statements1;
statements2;
end;
end;
PERCABANGAN CASE


Contoh 1 :
Case Nilai of
‘A’ : ket := ‘Bagus Sekali’;
‘B’ : ket := ‘Bagus’;
‘C’ : ket := ‘Cukup’;
‘D’ : ket := ‘Kurang’;
else
ket := ‘Tidak Lulus’;
end;
PERCABANGAN CASE


Contoh 2 :
Case Nilai of
‘A’ : begin
ket := ‘Bagus Sekali’;
angka := 4;
end;
‘B’ : begin
ket := ‘Bagus’;
angka := 3;
end;
‘C’ : begin
ket := ‘Cukup’;
angka := 2;
end;
PERCABANGAN CASE
Case Nilai of
‘D’ : begin
ket := ‘Kurang’;
angka := 1;
end;
else
begin
ket := ‘Tidak Lulus’;
angka := 0;
end;
end;
PERCABANGAN CASE


Contoh 3 :
Case Nilai Of
‘A’, ‘B’, ‘C’ : status := ‘Lulus’;
‘D’ : status := ‘Lulus Tapi Wajib Mengulang’;
else
status := ‘Tidak Lulus’;
end;
PERCABANGAN CASE


Contoh 4 :
Case skor of
1..5 : ket := ‘Rendah’;
6..9 : ket := ‘Tinggi';
else
ket := ‘Skor diluar jangkauan nilai’;
end;

Struktur Dasar Algoritma

  • 1.
  • 2.
    PENDAHULUAN  Sebuah program dibangundari tiga buah logika dasar pemrograman, yaitu : 1. Logika Urut / Runtunan (Sequence) 2. Logika Percabangan / Pemilihan / Penyeleksian Kondisi (Selection) 3. Pengulangan / Looping (Repetition)
  • 3.
    LOGIKA URUT    Logika pemrogramanyang paling sederhana. Digunakan pada program sederhana yang hanya berupa runtunan satu atau lebih perintah. Konsep logika urut : 1. Tiap perintah dikerjakan satu per satu. 2. Tiap perintah dilaksanakan tepat sekali. 3. Urutan pelaksanaan perintah sama dengan urutan penulisan algoritma/program.
  • 4.
    LOGIKA PERCABANGAN   Digunakan jikadi dalam program, sebuah perintah dikerjakan jika persyaratan atau kondisi tertentu dipenuhi. Contoh penggunaan :  Menentukan suatu bilangan bulat termasuk genap atau ganjil.  Menentukan siswa yang lulus atau tidak berdasarkan nilai rata-rata yang diperoleh.  Dll.
  • 5.
    LOGIKA PERCABANGAN  Jenis-jenis logikapercabangan : 1. Percabangan If Tunggal 2. Percabangan If Ganda 3. Percabangan If Majemuk 4. Percabangan If Tersarang 5. Percabangan Case
  • 6.
    PERCABANGAN IF TUNGGAL    Digunakanjika pemilihan hanya memberikan satu pilihan yang dilaksakan bila kondisi (persyaratan) dipenuhi (bernilai benar), dan tidak memberikan pilihan lain yang dilaksanakan bila kondisi bernilai salah. Kondisi berupa suatu ekspresi boolean yang menggunakan operator pembanding atau operator logika. Contoh kondisi :  (Bunga < 0.2)  (Nilai >= 90) and (Nilai <= 100)
  • 7.
    PERCABANGAN IF TUNGGAL   NotasiPseudocode : if <Kondisi> then <Pernyataan-1> <Pernyataan-2> ………………… <Pernyataan-n> endif Pernyataan sesudah Then hanya akan dilaksanakan bila <kondisi> bernilai benar (true). Bila <kondisi> bernilai salah (false), maka tidak ada pernyataan yang dilaksanakan.
  • 8.
  • 9.
    PERCABANGAN IF TUNGGAL   NotasiDelphi jika hanya ada pernyataan yang dilaksanakan : if <Kondisi> then <Pernyataan>; Contoh : if (nilai >= 60) then status = ‘Lulus’; satu
  • 10.
    PERCABANGAN IF TUNGGAL  NotasiDelphi jika ada lebih pernyataan yang dilaksanakan : if <Kondisi> then begin <Pernyataan-1>; <Pernyataan-2> ………………… <Pernyataan-n> end; dari satu
  • 11.
    PERCABANGAN IF TUNGGAL  Contoh: if (nilai >= 60) then begin status = ‘Lulus’; indeks = ‘C’; end;
  • 12.
    PERCABANGAN IF GANDA    Digunakanjika pemilihan memberikan dua alternatif pilihan. Notasi Pseudocode : if <Kondisi> then <Pernyataan-1> else <Pernyataan-2> endif Pernyataan-1 akan dilaksanakan jika kondisi bernilai benar, tetapi jika kondisi bernilai salah, maka Pernyataan-2 yang akan dilaksanakan.
  • 13.
  • 14.
    PERCABANGAN IF GANDA   NotasiDelphi jika hanya ada satu pernyataan yang dilaksanakan : if <Kondisi> then <Pernyataan-1> else <Pernyataan-2>; Contoh : if (nilai >= 60) then status = ‘Lulus’ else status = ‘Tidak Lulus’;
  • 15.
    PERCABANGAN IF GANDA  NotasiDelphi jika ada lebih dari satu Pernyataan yang dilaksanakan : if <Kondisi> then begin <Pernyataan-1>; <Pernyataan-2>; end else begin <Pernyataan-3>; <Pernyataan-4>; end;
  • 16.
    PERCABANGAN IF MAJEMUK   Digunakanjika pemilihan memberikan lebih dari dua alternatif pilihan. Notasi Pseudocode (4 pilihan) : if <Kondisi-1> then <Pernyataan-1> else if <Kondisi-2> then <Pernyataan-2> else if <Kondisi-3> then <Pernyataan-3> else <Pernyataan-4> endif
  • 17.
  • 18.
    PERCABANGAN IF MAJEMUK  NotasiDelphi jika hanya ada pernyataan yang dilaksanakan : if <Kondisi-1> then <Pernyataan-1> else if <Kondisi-2> then <Pernyataan-2> else if <Kondisi-3> then <Pernyataan-3> else <Pernyataan-4>; satu
  • 19.
    PERCABANGAN IF MAJEMUK  NotasiDelphi jika ada lebih Pernyataan yang dilaksanakan : if <Kondisi-1> then begin <Pernyataan-1>; <Pernyataan-2>; end else if <Kondisi-2> then begin <Pernyataan-3>; <Pernyataan-4>; end dari satu
  • 20.
    PERCABANGAN IF MAJEMUK elseif <Kondisi-3> then begin <Pernyataan-5>; <Pernyataan-6>; end else begin <Pernyataan-7>; <Pernyataan-8>; end;
  • 21.
    PERCABANGAN CASE    Digunakan sebagaialternatif dari percabangan if majemuk namun strukturnya lebih sederhana. Tidak semua bentuk percabangan if majemuk dapat diubah menjadi percangan case, tetapi semua bentuk percangan case dapat diubah menjadi percabangan if. Hanya dapat digunakan pada penyeleksian kondisi yang hanya tergantung pada satu variabel penyeleksi.
  • 22.
    PERCABANGAN CASE     Hanya dapatdigunakan pada penyeleksian kondisi yang membandingkan sama atau tidak. Tidak dapat digunakan pada penyeleksian kondisi yang membandingkan <, <=, >, atau >=. Dapat memakai beberapa konstanta dalam sebuah perbandingan. Dapat menyeleksi kondisi yang berupa range (jangkauan nilai).
  • 23.
    PERCABANGAN CASE   Notasi (jikahanya ada satu pernyataan yang dilaksanakan) : case (selectorExpression) of caseList_1: statement_1; caseList_2: statement_2; ... caseList_n: statement_n; else statements; end; Ekspresi yang akan dibandingkan (selectorExpression) harus bertipe integer, karakter, atau boolean.
  • 24.
    PERCABANGAN CASE  Notasi (jikaada lebih dari satu pernyataan yang dilaksanakan) : case (selectorExpression) of caseList_1: begin statement_11; statement_12; end; caseList_2: begin statement_21; statement_22; end;
  • 25.
  • 26.
    PERCABANGAN CASE  Contoh 1: Case Nilai of ‘A’ : ket := ‘Bagus Sekali’; ‘B’ : ket := ‘Bagus’; ‘C’ : ket := ‘Cukup’; ‘D’ : ket := ‘Kurang’; else ket := ‘Tidak Lulus’; end;
  • 27.
    PERCABANGAN CASE  Contoh 2: Case Nilai of ‘A’ : begin ket := ‘Bagus Sekali’; angka := 4; end; ‘B’ : begin ket := ‘Bagus’; angka := 3; end; ‘C’ : begin ket := ‘Cukup’; angka := 2; end;
  • 28.
    PERCABANGAN CASE Case Nilaiof ‘D’ : begin ket := ‘Kurang’; angka := 1; end; else begin ket := ‘Tidak Lulus’; angka := 0; end; end;
  • 29.
    PERCABANGAN CASE  Contoh 3: Case Nilai Of ‘A’, ‘B’, ‘C’ : status := ‘Lulus’; ‘D’ : status := ‘Lulus Tapi Wajib Mengulang’; else status := ‘Tidak Lulus’; end;
  • 30.
    PERCABANGAN CASE  Contoh 4: Case skor of 1..5 : ket := ‘Rendah’; 6..9 : ket := ‘Tinggi'; else ket := ‘Skor diluar jangkauan nilai’; end;