60 likes | 254 Views
Dasar Pemrograman MODUL 0 5. RUNTUNAN (sequence). ALGORITMA MERUPAKAN RUNTUNAN (SEQUENCE) SATU ATAU LEBIH INSTRUKSI, YANG BERARTI BAHWA:. TIAP INSTRUKSI DIKERJAKAN SATU PERSATU . TIAP INSTRUKSI DILAKSANAKAN TEPAT SEKALI TIDAK ADA INSTRUKSI YANG DIULANG .
E N D
Dasar Pemrograman MODUL 05 RUNTUNAN (sequence)
ALGORITMA MERUPAKAN RUNTUNAN (SEQUENCE) SATU ATAU LEBIH INSTRUKSI, YANG BERARTI BAHWA: • TIAP INSTRUKSI DIKERJAKAN SATU PERSATU. • TIAP INSTRUKSI DILAKSANAKAN TEPAT SEKALITIDAK ADA INSTRUKSI YANG DIULANG. • URUTAN INSTRUKSI YANG DILAKSANAKANPEMROSES SAMA DENGAN URUTAN INSTRUKSI SEBAGAIMANA YANG TERTULIS DI DALAM TEKS ALGORITMANYA. • AKHIR DARI INSTRUKSI TERAKHIR MERUPAKANAKHIR ALGORITMA • URUTAN INSTRUKSI YANG TIDAK BERPENGARUH TERHADAP SOLUSI PERSOALAN CONTOH KASUS: DIBACA DUA BUAH NILAI INTEGER, A DAN B. HITUNG JUMLAH KEDUANYA DAN HASIL KALI KEDUANYA, LALU CETAK JUMLAH DAN HASIL KALI TERSEBUT. Algortima Runtunan_1 Deklarasi: A, B, C, D : integer Deskripsi: Read(A, B) C A + B D A * B Write(C,D) ALGORTIMA RUNTUNAN_2 DEKLARASI: A, B, C, D : INTEGER DESKRIPSI: READ(A, B) D A * B C A + B WRITE(C,D)
URUTAN INSTRUKSI BERPENGARUH TERHADAP SOLUSI PERSOALAN CONTOH KASUS: DIKETAHUI DUA BUAH NILAI INTEGER, MASING-MASING DISIMPAN DI DALAM DUA BUAH PEUBAH (VARIABEL), A DAN B. BAGAIMANA CARA MEMPERTUKARKAN NILAI A DAN B ? MISALNYA, SEBELUMNYA PERTUKARAN A=8 DAN B=5, MAKA SETELAH PERTUKARAN, NILAI A=5 DAN B=8. Algoritma Tukar_1 Deklarasi: A : integer {nilai pertama} B : integer {nilai kedua} Temp : integer {variabel bantu} Deskripsi: Read(A, B) Write(A,B) temp A A B B temp Write(A,B) Algoritma Tukar_2 Deklarasi: A : integer {nilai pertama} B : integer {nilai kedua} Temp : integer {variabel bantu} Deskripsi: Read(A, B) Write(A,B) temp A B temp A B Write(A,B) KEDUA ALGORITMA DI SAMPING AKAN MEMBERIKAN HASIL YANG BERBEDA. PADA ALGORITMA PERTAMA AKAN MEMBERIKAN HASIL YANG DIINGINKAN SEBALIKNYA PADA ALGORTIMA KEDUA NILAI A DA NILAI B TIDAK AKAN BERTUKAR
CONTOH: TULISLAH PROGRAM UNTUK MENAMPILKAN JUMLAH HARI, JAM, MENIT, DAN DETIK DARI MASUKAN BERUPA LAMANYA WAKTU DALAM DETIK. SEBAGAI CONTOH, MASUKAN 100.000 DETIK AKAN MENGHASILKAN KELUARAN: 1 HARI, 3 JAM 46 MENIT DAN 40 DETIK. KELUARAN DARI PROGRAM INI ADALAH BANYAKNYA HARI, JAM, MENIT DAN DETIK DARI WAKTU DETIK YANG DIMASUKAN Program Konversi_Detik Const Satuhari = 60 * 60 * 24; Var Detik: longit; hr, jm, mn, dt: integer; Begin Write (’masukkan waktu (dalam detik): ’); Readln(detik); Writeln(detik,’ detik terdiri dari’); hr := detik div satuhari; detik := detik – hr * satuhari; jm := detik div 3600; detik := detik – jm * 3600; mn := detik div 60; dt := detik – mn * 60; Writeln(hr, ’ hari’); Writeln(jm, ’ jam’); Writeln(mn, ’ menit’); Writeln(dt, ’ detik’); End. Algortima Konversi_detik Deklarasi Detik : longint; Hr, jm, mn, dt : integer; Deskripsi Read(detik) hr detik / 86400 detik detik – hr * 86400 jm detik / 3600 detik detik – jm * 3600 mn detik / 60 detik detik – mn * 60 dt detik. Write(hr, jm, mn, dt)
CONTOH DIBACA NAMA KARYAWAN DAN GAJI POKOK BULANANNYA. GAJI BERSIH YANG DITERIMA PEGAWAI ADALAH: GAJI BERSIH = GAJI POKOK + TUNJANGAN – PAJAK TUNJANGAN KARYAWAN DIHITUNG 20% DARI GAJI POKOK, SEDANGKAN PAJAK ADALAH 15% DARI GAJI POKOK DITAMBAH TUNJANGAN. NAMA KARYAWAN DAN GAJI BERSIHNYA DICETAK KE PIRANTI KELUARAN. TULISKAN ALGORITMANYA Program Mengitung_Gaji_Karyawan; Var Nama : string[25]; Gapok, tunjangan, gaber : real; Begin Write(’Masukkan Nama Karyawan : ’); Readln(nama); Write(’Masukkan Gaji Pokok : ’); Readln (gapok); Tunjangan := 0.2 * gapok; Pajak := 0.15 (gapok + tunjangan); Gaber := gapok + tunjangan – pajak; Writeln(’Gaji Bersih : ’, gaber:7:2); End. • Algoritma Gaji_Karyawan • Deklarasi • Nama : string • GaPok, Tunjangan, GaBer : real • Deskripsi • Read (Nama, GaPok) • Tunjangan 0.2 * GaPok • Pajak 0.15 * (GaPok + Tunjangan) • GaBer GaPok + Tunjangan – Pajak • Write(nama, GaBer)
CONTOH BUATLAH PROGRAM UNTUK MENCARI NILAI JAM, MENIT, DETIK DARI TOTAL DETIK YANG DIMASUKKANTAMPILAN PROGRAM SBB: MASUKKAN TOTAL DETIK: 4000 1 JAM 6 MENIT 40 DETIK • Algoritma mendapatkan Jam Menit dan Detik • Deklarasi • jj, mm, dd: integer • Detik, sisa: long Integer • Deskripsi • Read (Detik) • jj detik div 3600 • sisa detik mod 3600 • mm sisa div 60 • dd sisa mod 60 • Write(jj, mm, dd)