Runtunan dan Pemilihan

Slides:



Advertisements
Presentasi serupa
DASAR-DASAR ALGORITMA
Advertisements

STRUKTUR DASAR ALGORITMA
MATERI 8 CHOICE / PILIHAN.
TEL 2112 Dasar Komputer & Pemograman Nama dan Nilai Objek Abdillah, S.Si, MIT Website:
LOGIKA ALGORITMA Pertemuan 6.
PEMROGRAMAN TERSTRUKTUR
Oleh Nila Feby Puspitasari
Notasi Algoritma.
Instruksi Runtutan Instruksi Pemilihan dan Instruksi Perulangan dalam Pascal Minggu XII.
STATEMENT PENGENDALIAN (PEMILIHAN)
Dasar Pemrograman MODUL 05 RUNTUNAN (sequence).
Pemprograman Terstruktur 1
Algoritma (Struktur, Tipe Data, Input/Output)
Notasi Algoritma.
Algoritma dan Struktur Data
TEE 2103 Algoritma dan Pemrograman
Algoritma Pseudocode TEE 2103 Algoritma dan Pemrograman
Pengenalan Type Data Type data dapat dikelompokkan menjadi 2
TEL 2112 Dasar Komputer & Pemograman Contoh Pemecahan Masalah
TEL 2112 Dasar Komputer & Pemograman Contoh Pemecahan Masalah
MODUL KE-9 PEMILIHAN.
Materi 9 LOGIKA & ALGORITMA.
ALGORITMA & PEMROGRAMAN
Algoritma dan Pemrograman I
Notasi Algoritma & Tipe Data
Algoritma Pemrograman I
Algoritma & Pemrograman
Notasi Algoritmik.
STRUKTUR DASAR ALGORITMA
ALGORITMA & LOGIKA PEMROGRAMAN
STRUKTUR DASAR ALGORITMA
Ucu Nugraha, ST. Algoritma.
TEL 2112 Dasar Komputer & Pemograman Algoritma Pemrograman
PERTEMUAN 7 STATEMENT PEMILIHAN
Apa itu Fungsi? Sebuah fungsi adalah modul program yang mengerjakan tugas atau aktivitas yang spesifik dan mengembalikan sebuah nilai dari tipe tertentu,
Matakuliah : Algoritma & Struktur Data Versi Materi
TEE 2103 Algoritma dan Pemrograman
TEL 2112 Dasar Komputer & Pemograman Penyeleksian
Pemilihan TEE 2103 Algoritma dan Pemrograman Dosen: Abdillah, MIT
TEL 2112 Dasar Komputer & Pemograman Fungsi
Fungsi TEE 2103 Algoritma & Pemrograman Dosen: Abdillah, MIT
Algoritma & Pemrograman 1
Algoritma dan Pemrograman
Pengenalan Type Data Type data dapat dikelompokkan menjadi 2
Dasar- dasar Algoritma
BAHASA PEMROGRAMAN C OPERATOR IRSAN JAELANI.
TEL 2112 Dasar Komputer & Pemograman Contoh Pemecahan Masalah
Menuliskan Algoritma Dengan Pseudocode
PERULANGAN.
TEE 2103 Algoritma & Pemrograman
TEL 2112 Dasar Komputer & Pemograman Algoritma Pemrograman
Algoritma Percabangan
Runtunan dan Pemilihan
TIPE DATA.
Struktur Dasar Algoritma dan Runtunan
Algoritma & Pemrograman 1
STATEMENT PENGENDALIAN (PEMILIHAN)
Pertemuan ke 9.
Seleksi.
TEL 2112 Dasar Komputer & Pemograman Prosedur
Algoritma dan Pemrograman (Pertemuan 04)
TEL 2112 Dasar Komputer & Pemograman Fungsi
TEE 2103 Algoritma & Pemrograman
TEL 2112 Dasar Komputer & Pemograman Pengantar Algoritma
TEL 2112 Dasar Komputer & Pemograman Pengantar Algoritma
PEMILIHAN (SELEKSI KONSIDI)
Fungsi.
ALGORITMA DAN PROGRAM Erizal, S.Si, M.Kom Sistem Informasi
STRUKTUR DASAR ALGORITMA
Pemilihan Dua Kasus, tiga kasus dan banyak kasus
Transcript presentasi:

Runtunan dan Pemilihan Bambang Irawan

Runtunan adalah... Rangkaian instruksi yang diproses secara sequential (berurutan), satu persatu mulai dari instruksi pertama sampai terakhir

Algoritma dan Runtunan Algoritma merupakan runtunan satu atau lebih instriksi yang berarti bahwa : tiap instruksi dikerjakan satu persatu tiap instruksi hanya dijalankan satu kali tidak ada perulangan rrutan instruksi yang dilaksanakan pemroses sesuai dengan algoritmanya akhir instruksi = akhir algoritma

Contoh Runtunan : Mencetak “Hello, World” PROGRAM Hello_world {Program untuk mencetak “Hello, World”} DEKLARASI {tidak ada} ALGORITMA: write(‘Hello, world’)

Menggunakan Variabel PROGRAM Hello_world {Program untuk mencetak “Hello,world”} DEKLARASI pesan : string ALGORITMA: Pesan  “Hello, world” write(pesan)

Menggunakan Konstanta PROGRAM Hello_world {Program untuk mencetak “Hello,world”} DEKLARASI const pesan = ‘Hello, world’ ALGORITMA: write(pesan)

Membaca Input PROGRAM Halo_Nama {Mencetak string ‘Halo ‘ dan diikuti dengan nama orang. Nama orang dibaca dari keyboard} DEKLARASI nama : string ALGORITMA read(nama) write(‘Hallo: ’, nama)

Algoritma Pertukaran Buatlah sebuah program yang dapat membaca nilai 2 peubah (variable) dan menukarkannya. Misalkan: a = 8 dan b = 5 Setelah proses a= 5 dan b= 8

Penyelesaian PROGRAM Pertukaran {Mempertukarkan nilai A dan B. Nilai A dan B dibaca terlebih dahulu.} DEKLARASI A, B, C : integer ALGORITMA: {asumsikan A dan B sudah terdefinisi dengan nilai, misalnya melalui pengisian langsung atau dibaca nilainya dari keyboard} C  A {simpan nulai A di tempat penampungan sementara, C} A  B {sekarang A dapat diisi dengan nilai B} B  C {isi B dengan nilai A semula yang tadi disimpan di C} {Tulis nilai A dan B setelah pertukaran, jika diperlukan}

Menuliskan ke dalam Bahasa Pemrograman : PASCAL program Pertukaran {Mempertukarkan nilai A dan B. Nilai A dan B dibaca terlebih dahulu.} {*DEKLARASI*} var A, B, C = integer; {*ALGORITMA :*} begin {baca nilai A dan B} write(‘A=?’); readln(A); write(‘B=?’); readln(B); {pertukarkan nilai A dan B} C := A; A := B; B := C; {tulis nilai A dan B setelah dipertukarkan} writeln(‘A= ‘, A); writeln(‘B= ‘, B); end.

Menuliskan ke dalam Bahasa Pemrograman : C /* PROGRAM Pertukaran */ /* Mempertukarkan nilai A dan B. Nilai A dan B dibaca terlebih dahulu. */ #include <stdio.h> main() { /* DEKLARASI */ int A, B, C; /* ALGORITMA : */ /* baca nilai A dan B */ printf(“A=?”); scanf(“%d”, $A); printf(“B=?”); scanf(“%d”, $B); /* pertukarkan nilai A dan B */ C = A; A = B; B = C; /* tulis nilai A dan B setelah dipertukarkan */ printf(“A= %d\n“, A); printf(“B= %d\n“, B); }

Contoh Algoritma Runtunan

Apa yang dilakukan oleh potongan algoritma dibawah ini? ... A  A + B B  A - B A  A – B

Pertukaran Tanpa Peubah Bantu PROGRAM Tukar {Mempertukarkan nilai A dan B yang bertipe bilangan bulat tanpa peubah bantu. Nilai A dan B dibaca terlebih dahulu.} DEKLARASI A : integer {nilai pertama} B : integer {nilai kedua} ALGORITMA: read(A,B) {baca nilai A dan B} write(A,B) {tulis nilai A dan B sebelum pertukaran} {proses pertukaran} A  A + B B  A - B A  A - B write(A,B) {tulis nilai A dan B setelah pertukaran}

Menghitung Komisi yang Diterima Salesman PROGRAM Komisi_Salesman {menghitung komisi yang diterima salesman. Besar komisi adalah 5% dari nilai penjualan yang dicapainya. Data masukan adalah nama salesman dan nilai penjualannya. Keluaran algoritma adalah nama salesman dan besar komisi yang diterima salesman tersebut.} DEKLARASI NamaSalesman : string NilaiPenjualan : real {nilai penjualan yang dicapai} komisi : real {besar komisi} ALGORITMA read(NamaSalesman, NilaiPenjualan) komisi  0.05 * NilaiPenjualan write(NamaSalesman, komisi)

Wartel PROGRAM Wartel {Menghitung biaya percakapan di warung telekomunikasi. Masukan adalah waktu awal dan waktu selesai percakapan (hh:mm:ss). Keluaran adalah lama dan biaya percakapan. Satu pulsa = 5 detik dan ongkos per pulsa adalah Rp. 150} DEKLARASI const BiayaPerPulsa = 150 {biaya per pulsa} const LamaPulsa = 5 {1 pulsa = 5 detik} type Jam : record <hh:integer, {0..23} mm:integer, {0..59} ss:integer {0..59} > J1 : Jam {jam awal percakapan} J2 : Jam {jam akhir percakapan} J3 : Jam {lama percakapan} TotalDetik1, TotalDetik2 : integer {peubah bantu untuk menampung sisa pembagian} sisa : integer durasi : integer pulsa : real biaya : real

Wartel (lanjutan) ALGORITMA : read(J1.hh, J1.mm, J1.ss) {jam awal percakapan} read(J2.hh, J2.mm, J2.ss) {jam selesai percakapan} {konversi masing-masing jam ke total detik} TotalDetik1  (J1.hh*3600) + (J1.mm*60) + J1.ss TotalDetik2  (J2.hh*3600) + (J2.mm*60) + J2.ss {hitung lama percakapan} durasi  TotalDetik2 – TotalDetik1 {hitung jumlah pulsa dan biaya untuk seluruh pulsa} Pulsa  durasi/LamaPulsa Biasa  Pulsa * BiayaPerPulsa {konversi durasi ke dalam jam-menit-detik} J3.hh  durasi div 3600 {mendapatkan jam} sisa  durasi mod 3600 J3.mm  sisa div 60 {mendapatkan menit} J3.ss  sisa mod 60 {mendapatkan detik} write(J3.hh, J3.mm, J3.ss, biaya)

Membaca/Menulis ke Arsip Pembacaan tergantung pada format penyimpanan data di dalam arsip. Data masukkan disimpan dalam program pengolah kata yang menghasilkan karakter ASCII(notepad,joe,editor text) Membaca/Menulis ke Arsip

Contoh Program Penyimpanan Dalam Bentuk Arsip (PASCAL) Program luas_empat_persegi_panjang; (*menghitung luas empat persegipanjang, kemudian mencetak nilai luas tersebut ke dalam arsip “hasil.txt”*) {Deklarasi} var panjang,lebar,luas : real; Fin,Fout : text; NamaArsip1,NamaArsip2 : string[12]; {Algoritma} begin write(‘Nama arsip masukan: ’); readln(NamaArsip1); write(‘Nama arsip keluaran’); readln(NamaArsip2); {buka arsip masukan} assign(Fin, NamaArsip1); reset(Fin) {buka arsip keluaran} assign(Fout,NamaArsip2); rewrite(Fout); {baca panjang dan lebar dari arsip Fin} read(Fin,panjang,lebar); Luas := panjang * lebar; writeln(Fout,’Luas segi empat = ’,luas); {tutup arsip} close(Fin); close(Fout); end.

Pemilihan

Pemilihan Struktur pemilihan memungkinkan kita melakukan aksi jika suatu syarat dipenuhi

Analisis Kasus Satu Kasus Dua Kasus Tiga Kasus atau lebih

Satu Kasus kondisi aksi end salah benar if x > 100 then x  x+ 1 endif if kar = ‘*’ then stop  true if (a ≠ 0) or (p=1) then q  a*p write(q)

Contoh Masalah dengan Satu Kasus PROGRAM genap {Mencetak pesan bilangan genap} DEKLARASI x : integer ALGORITMA: read(x) if (x mod 2 = 0) then write(‘genap’) endif

DUA KASUS kondisi salah benar aksi aksi end

Conto 2 Kasus PROGRAM genapGanjil {Mencetak pesan bilangan genap ganjil} DEKLARASI x : integer ALGORITMA read(x) if (x mod 2 = 0) then write(‘genap’) else write(‘ganjil)

Tiga Kasus atau Lebih benar salah aksi benar benar aksi salah aksi end kondisi benar salah aksi benar kondisi benar aksi aksi salah end

Contoh Algoritma 3 Kasus PROGRAM BilanganBulat {Menuliskan ‘positif’ bila nilai x > 0, ‘negatif’ bila nilai x <0 dan ‘nol’ bila x=0} DEKLARASI x : integer ALGORITMA: read(x) if x >0 then write(‘positif’) else if x <0 then write(‘negatif’) if x = 0 then write (nol) endif

Struktur CASE Struktur CASE dapat menyederhanakan ‘if-then-else’ yang bertingkat-tingkat

Contoh Algoritma PROGRAM genapganjil {menentukan apakah suatu bilangan termasuk bilangan genap atau ganjil} DEKLARASI x : integer ALGORITMA read(x) CASE (x mod 2) 0 : write(‘genap’) 1 : write(‘ganjil’) endcase