Algoritma merupakan urutan langkah-langkah logis seistematis bagi penyelesaian masalah yang. Merujuk pada term “Kata Logis” adalah kata kunci dalam Algoritma. Langkah-langkah dalam Algoritma bisa berbeda menurut pemahaman seorang programer/ desainer, namun harus logis dan harus dapat ditentukan bernilai salah atau benar. Aspek efektif dari algoritma merupakan aspek strategis yang mebedakan mekanisme praktis dan tepat sasaran secara efisien. Notasi Algoritma secara umum diterjemahkan ke dalam berbagai bahasa pemrograman. Analoginya sama dengan resep membuat kue. Sebuah resep dapat ditulis dalam bahasa apapun. Penterjemahan algoritma daalam lingkup aspek informatikan biasanya dijembatani dengan kaidah penggambaran proses bisnis (business process design) yang dapat dikembangakn dengan ASME, SNME, IDEF-0, Flow of Map, UML, Data Flow Diagram maupun yang paling praktis menggunakan bagan alir (flowchart).
Flowchart.
Flowchart atau diagram alir merupakan sebuah diagram dengan simbol-simbol grafis yang menyatakan aliran algoritma atau proses yang menampilkan langkah-langkah yang disimbolkan beserta urutan kronologis dan sistmatisnya nya dengan menghubungkan masing masing langkah tersebut menggunakan hubung berupa tanda panah. Diagram ini bisa memberi solusi penyelesaian masalah yang ada di dalam proses atau algoritma tersebut yang siap diterjemahkan dalam bahasa permrograman.
Komponen-kompon Flochart dapat dilihat pada bagan berikut :
Sumber Gambar Flowchart Diupload- ilham abdul hady:
alamat sumber sebelumnya http://boyaction.blogspot.com/2012/07/macam-macam-bentuk-simbol-flowchart.html
Video YouTube; Diupload oleh Garden City College
==================================================================
STUDI KASUS LOGIKA ALGORITMA DENGAN
PEMROGRAMAN BASICA
Studi Kasus algoritma dibawah ini diselesaikan dengan menggunakan Flowchart dan Logika Bahasa Basic Under DOS [GW-BASIC].
Kasus 1:
Diketahui : Alas = 12; Tinggi = 8; Diminta hitung Luas Segitiga[Gambar Flowchart Kasus 1]
Listing Program
10 CLS
20 DATA 12,8
30 READ ALAS,TINGGI
40 LET LUAS=0.5*ALAS*TINGGI
50 PRINT “LULUS SEGITIGA”;LUAS
60 END
20 DATA 12,8
30 READ ALAS,TINGGI
40 LET LUAS=0.5*ALAS*TINGGI
50 PRINT “LULUS SEGITIGA”;LUAS
60 END
RUN
LUAS S
SEGITIGA 48
Kasus 2:
Diketahui : Nama Andi ; Nilai Tugas (40%) =50; Nilai Mid (30%) = 75; Nilai Final (30%) = 60; Diminta memberikan status “LULUS” jika nilai rata2 > 70[Gambar Flowchart Kasus 2]
Listing Program
10 CLS
20 DATA 1,”ANDI”,50,75,60
30 READ NO.NAMA$,,TUGAS,MID,FINAL
40 LET NILAI = 0.4*TUGAS+0.3*MID+0.3*FINAL
50 IF NILAI >= 7 THEN KET$=”LULUS” ELSE KET$=”TIDAK LULUS”
60 PRINT “ DAFTAR MILAI RATA-RATA MAHASISWA “
61 PRINT “ KELAS 1E “ “
62 PRINT “---------------------------------------------------------------“
63 PRINT “| NO | NAMA | NILAI | KETERANGAN |“
64 PRINT “_____________________________________”
65 PRINT NO,NAMA$,NILAI,KET$
66 PRINT “-------------------------------------------------------“
67 PRINT “ TUGAS 3 AUTHOR WITRIANA “
68 PRINY “ KELAS 1E NO ABSEN 23 “
70 END
20 DATA 1,”ANDI”,50,75,60
30 READ NO.NAMA$,,TUGAS,MID,FINAL
40 LET NILAI = 0.4*TUGAS+0.3*MID+0.3*FINAL
50 IF NILAI >= 7 THEN KET$=”LULUS” ELSE KET$=”TIDAK LULUS”
60 PRINT “ DAFTAR MILAI RATA-RATA MAHASISWA “
61 PRINT “ KELAS 1E “ “
62 PRINT “---------------------------------------------------------------“
63 PRINT “| NO | NAMA | NILAI | KETERANGAN |“
64 PRINT “_____________________________________”
65 PRINT NO,NAMA$,NILAI,KET$
66 PRINT “-------------------------------------------------------“
67 PRINT “ TUGAS 3 AUTHOR WITRIANA “
68 PRINY “ KELAS 1E NO ABSEN 23 “
70 END
RUN
DAFTAR NILAI RATA-RATA MAHASISWA KELAS 1E
-----------------------------------------------------
| NO | NAMA | NILAI | KETERANGAN |
1 ANDI 6,5 LULUS
-----------------------------------------------------
TUGAS 3B AUTHOR WITRIANA
KELAS 1E BO ABSEN 23
Kasus 3:
Diketahui :
Nama Tugas MID Final Rata2 Keterangan
Lilis 70 55 75
Witriana 90 80 85
Neni 60 80 65
Gilang 65 90 70
[Gambar Flowchart Kasus 3]
Listing Program70>
30 CLS
40 PRINT “ “
50 PRINT “ DAFTAR NILAI RATA2 MAHASISWA “
60 PRINT “ POLITEKNIK NEGRI SEMARANG “
70 PRINT “===================================”
80 PRINT “ “
90 PRINT “ NAMA RATA2 KETERANGAN “
100 PRINT “ MAHASISWA “
110 PRINT “---------------------------------------------------------“
120 DATA “LILIS”,70,55,75,”WITRIANA”,90,80,85,”NENI”,60,80,65,”GILANG”,65,90,70
130 READ NAMA$,X,Y,Z
140 LET RATA2=(X+Y+Z)/3
150 IF RATA2>=70 THEN KET$=”LULUS” ELSE KET$=”TIDAK LULUS”
160 PRINT NAMA$,RATA2,KET$
170 IF NAMA$=”GILANG” THEN GOTO 180 ELSE GOTO 130
180 PRINT “===================================”
190 END
RUN
DAFTAR NILAI RATA2 NAHASISWA
====================================
NAMA RATA2 KETERANGAN
MAHASISWA
-------------------------------------------------------------
LILIS 66.66666 TIDAK LULUS
WITRIANA 85 LULUS
NENI 68.33334 TIDAK LULUS
GILANG 75 LULUS
====================================
-----------------------------------------------------------------------------------------------
CARA MENGGAMBAR FLOWCHART MENGGUNAKAN MS VISIO
VIDEO TUTORIAL
Oleh Anaz Kuzecie Sumber: Youtube.
-----------------------------------------------------------------------------------------------
Kasus 4:
Dikatahui Nama Mahasiswa terdefinisi pada kasus 2, dengan tambahan masukan menggunakan IF majemuk (Decison berganda) dengan syarat Jika Nilai 0-54 Nilai E; Jika Nilai 55-60 Nilai D, Jika Nilai 61-70 Nilai C, Jika Nilai 71-80 Nilai B dan Jika Nilai 81-100 Maka mahasiswa tersebut diberikan nilai A. Buatlah Logika Flowchart dan Programanya dengan bahasa Basic.
[Gambar Flowchart Kasus 4]
Listing Program
30 CLS
40 PRINT “ “
50 PRINT “ DAFTAR NILAI MAHASISWA ”
70 PRINT “ “
80 PRINT “------------------------------------------------------------------------”
85 PRINT “ “
90 PRINT “ NAMA NILAI NILAI KETERANGAN”
95 PRINT “ MAHASISWA RATA2 HURUF”
100 PRINT ”-----------------------------------------------------------------------”
110 DATA”KIONX“,95,90,80,”AZURA”,60,90,75,”ZAHRA”,85,65,50
115 READ N$,X,Y,Z
120 LET NR = (X+Y+Z)/3
130 IF NR >81 THEN NH$= ”A” ELSE IF NR>70 THEN NH$= “B” ELSE IF
NR>60 THEN NH$= “C” ELSE IF NR >55 THEN NH$= “D” ELSE NH$= “E”
140 IF NA >= 70 THEN KET$= ”LULUS” ELSE KET$= ”TIDAK LULUS”
150 PRINT NAMA$,NA,NH$,KET$
155 IF NAMA$= “ZAHRA” THEN GO TO 160 ELSE 115
160 PRINT “_________________________________________________”
170 END
40 PRINT “ “
50 PRINT “ DAFTAR NILAI MAHASISWA ”
70 PRINT “ “
80 PRINT “------------------------------------------------------------------------”
85 PRINT “ “
90 PRINT “ NAMA NILAI NILAI KETERANGAN”
95 PRINT “ MAHASISWA RATA2 HURUF”
100 PRINT ”-----------------------------------------------------------------------”
110 DATA”KIONX“,95,90,80,”AZURA”,60,90,75,”ZAHRA”,85,65,50
115 READ N$,X,Y,Z
120 LET NR = (X+Y+Z)/3
130 IF NR >81 THEN NH$= ”A” ELSE IF NR>70 THEN NH$= “B” ELSE IF
NR>60 THEN NH$= “C” ELSE IF NR >55 THEN NH$= “D” ELSE NH$= “E”
140 IF NA >= 70 THEN KET$= ”LULUS” ELSE KET$= ”TIDAK LULUS”
150 PRINT NAMA$,NA,NH$,KET$
155 IF NAMA$= “ZAHRA” THEN GO TO 160 ELSE 115
160 PRINT “_________________________________________________”
170 END
RUN
DAFTAR NILAI MAHASISWA
----------------------------------------------------------------------
NAMA NILAI NILAI KETERANGAN
MAHASISWA RATA2 HURUF
---------------------------------------------------------------------
KIONX 88.33334 A LULUS
AZURA 75 B LULUS
ZAHRA 66.66666 C TIDAK LULUS
----------------------------------------------------------------------
Kasus 5:
Diketahui : Nama Gol Gaji Tunjangan Total
ADI A
NIA B
RUDI A
Jika Gol=A , Gaji 1000000; Gol=B , Gaji 2000000
Tunjangan : Gol A=10% dr Gaji; Gol B=20% dr Gaji
Gaji Total=Gaji+Tunjangan
[Gambar Flowchart Kasus 5]
Listing Program
10 CLS
20 PRINT “-----------------------------------------------------------------------“
30 PRINT “ PT MAJU ABADI SEMARANG “
40 PRINT “==========================================”
43 PRINT “ NAMA GOL GAJI TUNJANGAN GAJI TOTAL “
45 PRINT “-----------------------------------------------------------------------“
48 DATA “ADI”,”A”,”NIA”,”B”,”RUDI”,”A”
50 READ NAMA$,GOL$
60 LET X=1000000
70 LET Y=2000000
80 IF GOL$=”A” THEN GAJI=X ELSE GAJI=Y
90 IF GOL$=”A” THEN TUNJ=.1*GAJI ELSE TUNJ=.2*GAJI
100 LET GT=GAJI+TUNJ
110 PRINT NAMA$.GOL$,GAJI,TUNJ,GT
120 IF NAMA$=”RUDI” THEN GOTO 150 ELSE GOTO 50
130 PRINT “==========================================”
140 END
20 PRINT “-----------------------------------------------------------------------“
30 PRINT “ PT MAJU ABADI SEMARANG “
40 PRINT “==========================================”
43 PRINT “ NAMA GOL GAJI TUNJANGAN GAJI TOTAL “
45 PRINT “-----------------------------------------------------------------------“
48 DATA “ADI”,”A”,”NIA”,”B”,”RUDI”,”A”
50 READ NAMA$,GOL$
60 LET X=1000000
70 LET Y=2000000
80 IF GOL$=”A” THEN GAJI=X ELSE GAJI=Y
90 IF GOL$=”A” THEN TUNJ=.1*GAJI ELSE TUNJ=.2*GAJI
100 LET GT=GAJI+TUNJ
110 PRINT NAMA$.GOL$,GAJI,TUNJ,GT
120 IF NAMA$=”RUDI” THEN GOTO 150 ELSE GOTO 50
130 PRINT “==========================================”
140 END
RUN
---------------------------------------------------------------------------
PT MAJU ABADI SEMARANG
=============================================
NAMA GOL GAJI TUNJANGAN GAJI TOTAL
----------------------------------------------------------------------------
ADI A 1000000 100000 1100000
NIA B 2000000 400000 2400000
RUDI A 1000000 100000 1100000
=============================================
Kasus 6:
Diketahui : Nama ? ; Nilai Tugas (40%) =?; Nilai Mid (30%) = ?; Nilai Final (30%) = ?; Diminta memberikan status “LULUS” jika nilai rata-rata > 70. Gunakan atribut INPUT? KEYBOARD[Gambar Flowchart Kasus 6]
Listing Program
10 CLS
20 PRINT “----------------------------------------------------------------------“
30 PRINT “ MENGHITUNG RATA-RATA NILAI MAHASISWA “
40 PRINT “----------------------------------------------------------------------“
50 INPUT “NAMA”;N$
60 INPUT “NILAI TUGAS”;NT
70 INPUT “NILAI MID”;NM
80 INPUT “NILAI FINAL”;NF
90 LET NR=(NT+NM+NF)/3
100 PRINT “--------------------------------------------------------------------“
110 PRINT NR
120 PRINT “========================================”
130 END
140 INPUT “ISI DATA LAGI (Y/T)?”;JAWAB$
150 IF JAWAB$=”Y” THEN GOTO 10 ELSE
20 PRINT “----------------------------------------------------------------------“
30 PRINT “ MENGHITUNG RATA-RATA NILAI MAHASISWA “
40 PRINT “----------------------------------------------------------------------“
50 INPUT “NAMA”;N$
60 INPUT “NILAI TUGAS”;NT
70 INPUT “NILAI MID”;NM
80 INPUT “NILAI FINAL”;NF
90 LET NR=(NT+NM+NF)/3
100 PRINT “--------------------------------------------------------------------“
110 PRINT NR
120 PRINT “========================================”
130 END
140 INPUT “ISI DATA LAGI (Y/T)?”;JAWAB$
150 IF JAWAB$=”Y” THEN GOTO 10 ELSE
RUN
---------------------------------------------------------------------
MENGHITUNG RATA-RATA NILAI MAHASISWA
---------------------------------------------------------------------
NAMA ? WITRIANA
NILAI TUGAS ? 95
NILAI MID ? 90
NILAI FINAL ? 98
---------------------------------------------------------------------
94.33334
=========================================
ISI DATA LAGI (Y/T) ? T
Artikel Relevan Lainnya...