Kuliah #4 Ekspresi,Operator, dan Conditional Statement

dokumen-dokumen yang mirip
Algoritme dan Struktur Data. Ekspresi,Operator, dan Conditional Statement

9/16/2011 ILKOM IPB 1. a + b. Contoh Penggunaan Operator LOGIKA

Ekspresi dan Operator. Algoritme dan Pemrograman. Jenis Operator C. Operator Aritmetika. Operasi Logika 09/22/2013 ILKOM IPB 1.

Mana di antara penamaan variabel berikut yang benar? Mengapa yang lain salah? a. 3n+1 b. n+1 c. 3n1 d. 3n_1 e. n_31

Review #1. Review #2

Operator Precedence dan Associativity DASAR PEMROGRAMAN. JULIO ADISANTOSO Departemen Ilmu Komputer IPB. Pertemuan 2

Operator Precedence dan Associativity DASAR PEMROGRAMAN. JULIO ADISANTOSO Departemen Ilmu Komputer IPB. Pertemuan 2

Algoritme dan Pemrograman

Algoritma dan Pemrograman. Loop control structures: WHILE. Loop control structures: WHILE Perhatikan potongan program berikut: 12/29/2011

Struktur Kontrol Perulangan (Loop) Algoritme dan Pemrograman. Struktur Kontrol Perulangan: while. Struktur Kontrol Perulangan: while

24/09/2017 PERCABANGAN

Bab 3. Decision 1 (Pengambilan Keputusan)

Aliran Kendali (Flow Control)

MODUL III CONTROL FLOW & FLOWCHART

Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 1

Pada akhir pertemuan ini, diharapkan mahasiswa memiliki kemampuan untuk: Menggunakan struktur kendali pencabangan bersyarat dalam bahasa pemrograman.

OPERATOR & UNGKAPAN. Contoh operator : a + b Simbol + merupakan operator untuk melakukan operasi penjumlahan dari kedua operandnya ( yaitu a dan b ).

BAB 5 PERULANGAN DAN ARRAY

Algoritma dan Struktur Data Tahar Agastani Teknik Informatika UIN

Pemrograman Dasar S E L E C T I O N

MENGENDALIKAN PROSES PROGRAM

Algoritma & Pemrograman #4. by antonius rachmat c, s.kom, m.cs

Pengambilan Keputusan

Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu :

Tipe Data, Identifier, Operator dan Control Statement

BAB VI. STATEMENT CONTROL

OPERATOR, PERULANGAN DAN SELEKSI KONDISI

Aliran Kendali (Flow Control)

Pemrograman Dasar R E P E T I T I O N

Pengulangan for. Konstruksi for. keberadaan exp1, exp2, dan exp3 bersifat optional. for (exp1; exp2; exp3){ statement; atau. statement1; statement2;

KENDALI PROSES. 6.1 PENYELEKSIAN KONDISI (Selection)

Tujuan Instruksional. Mahasiswa mampu :

Java Basic. Variabel dan Tipe Data. Lokasi di dalam memori komputer yang digunakan untuk menyimpan suatu informasi (nilai)

PEMROGRAMAN TERSTRUKTUR PERTEMUAN VIII

Pengumuman Pekan ke- 5

IF ELSE IF ELSE. BU : if (kondisi1) Statement; else if (kondisi2) Statement;

Tipe Data dan Operator

MODUL 2 OPERATOR DAN OPERASI KONDISI

Ekspresi, Pernyataan & Operasi Aritmetika/Logika

Selection, Looping, Branching

elemen Dasar Bahasa Pemrograman C

Chapter 2 Tipe Data, Identifier, Operator dan Control Statement

Pengambilan Keputusan. Konsep Pemrograman Oleh Tita Karlita

MODUL IV Analisis Kasus/Pemilihan

Pertemuan 04. Pemrograman Dasar 2012

Module 4. Ekpresi, Operator, dan Konstanta

Percabangan. Yuli Sun Hariyani

PENGENALAN BAHASA C. A. Struktur Kode Program dalam Bahasa C Secara garis besar, suatu kode program dalam bahasa C memiliki struktur umum seperti ini:

BAGIAN A. PILIHAN GANDA Silanglah Jawaban yang Benar Pada Lembar Jawaban. Jawaban benar bernilai 3, salah atau kosong bernilai 0.

PEMROGRAMAN TERSTRUKTUR PERTEMUAN VI KOMPONEN KOMPONEN PEMROGRAMAN TERSTRUKTUR

Pertemuan 06. Dasar Pemrograman Komputer [TKL-4002] 2010

Ada 3 jenis struktur kontrol: Sequence Structure Selection Structure Repetition Structure Sequence Structure

Ekspresi, Pernyataan & Operasi Aritmetika/Logika

PSEUDOCODE TIPE DATA, VARIABEL, DAN OPERATOR

A. Dasar Teori. Urutan (Sequence) Pemilihan (Selection) Pengulangan (Iteration) Pernyataan Kondisional (If Statement)

Control Structure. Dasar Pemrograman C Mikrokontroler AVR. Hendawan Soebhakti Oktober 2009

Tipe Data. Pendahuluan. Objektif. Bahan Bacaan

Bab 2 Struktur Dasar

MODUL 4 OPERATOR KONDISI PADA PEMROGRAMAN BAHASA JAVA

Pertemuan 9: BRANCHING/PERCABANGAN dalam C LOOPING/PERULANGAN/ITERASI dalam C

3. Struktur Perulangan dalam C++

DPK UNIVERSITAS BRAWIJAYA MALANG

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

Decission : if & if else

PENGAMBILAN KEPUTUSAN

Algoritma dan Pemrograman

Tujuan : mahasiswa dapat menerapkan struktur kendali untuk membuat program dengan C++

PENGANTAR KOMPUTER & SOFTWARE II PERCABANGAN

Pemrograman Berorientasi Objek. Beni Suranto, S.T.

ALGORITME DAN PEMROGRAMAN

PENGANTAR KOMPUTER & SOFTWARE II PERCABANGAN

ALUR PROGRAM. SELEKSI KONDISI Statement If a. Bentuk If tunggal sederhana Sintaks : if ( kondisi ) statement ;

KENDALI PROSES. Untuk mengatur arus program, pemrograman java menyediakan struktur perulangan (looping), kondisional, percabangan, dan lompatan.

PERCABANGAN P E N G E N A L A N P R O G R A M S T U D I T E K N I K I N F O R M AT I K A. Institut Teknologi Sumatera

SOAL C++ Created by Yuli Astuti,S.Kom Copyright 2009

BAB III PENGAMBILAN KEPUTUSAN

Pernyataan Bersyarat (Conditional Statement)

belajar pemograman C++ Dasar

OPERATOR DAN STATEMEN I/O

Latihan & Kisi-kisi UTS DASAR PEMROGRAMAN

Percabangan. Agus Priyanto, M.Kom

Imam Fahrur Rozi. Algoritma dan Pemrograman SELEKSI KONDISI

PRAKTIKUM 9 KONTROL ALIRAN

Struktur kondisi dari IF digunakan untuk melakukan seleksi terhadap pernyataan (statement) tunggal. Bentuk IF Tunggal adalah sebagai berikut :

Tipe if : If tanpa else (if) If dengan else (if-else) Nested if

DASAR PEMROGRAMAN. PERCABANGAN ( if, if else, if ternary, nested if, switch ) Djoko Soerjanto, M.Kom

Perulangan, Percabangan, dan Studi Kasus

Percabangan & Perulangan

DASAR PHP. Oleh : Devie Rosa Anamisa

LOGIKA ALGORITMA. Pertemuan 4. By: Augury

BAB 3 TYPE DATA, VARIABLE DAN OPERATOR

PEMROGRAMAN WEB 1. Statement Control Pemilihan dan Perulangan. Rio Andriyat Krisdiawan, M.Kom

Operator Aritmatika MODUL III OPERATOR

BAHASA PEMROGRAMAN JAVA PUTU INDAH CIPTAYANI JURUSAN SISTEM INFORMASI STMIK AMIKOM YOGYAKARTA

Achmad Solichin.

Pemilihan. Overview. Tujuan. 1.1 Bentuk Umum IF dan Variasinya

Bab 4. Decision 2 (Pengambilan Keputusan)

UJIAN TENGAH SEMESTER GANJIL TAHUN STMIK AMIKOM YOGYAKARTA

MODUL C++ II. Operator

Transkripsi:

Kuliah #4 Ekspresi,Operator, dan Conditional Statement

Contoh ekspresi: a+b, a*b, -x, 5, a<b, a==b, dsb. Ekspresi dapat berupa operand (misalnya x, 5, ), dapat pula terdiri atas operand dan operator (misalnya x, a+5, ). Dua jenis operator berdasarkan operand: Unary (satu operand), misal: a Binary (dua operand), misal: a+b Setiap ekspresi mempunyai nilai a + b operator operand DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR

Aritmatika Logika Penugasan Increment, decrement Selection control conditional statement If Switch..case DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR

Operasi Operator Ekspresi Aljabar Ekspresi C Penjumlahan + f + 7 f + 7 Pengurangan - p - c p - c Perkalian * bm b * m Pembagian / x : y x / y Modulo % r mod s r % s DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR

Hasil ekspresi logika: TRUE, int bernilai tidak NOL ( 0) FALSE, int bernilai NOL Aljabar C Contoh Arti = == (x == y) x sama dengan y?!= (x!= y) x tidak sama dengan y? > > (x > y) x lebih besar dari y? < < (x < y) x lebih kecil dari y? >= (x >= y) x lebih besar or samadengan y? <= (x <= y) x lebih kecil or samadengan y? && ((x>0) && (x<3)) x > 0 dan x < 3 ((x<0) (x>3)) x < 0 atau x > 3 ~!! (x < 0) x tidak lebih kecil dari 0 DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR

Contoh Penggunaan Operator LOGIKA

Tanda = Ada dua bagian yang dipisahkan = L-Value : alamat lokasi memori tempat nilai disimpan R-Value : nilai yang disimpan Contoh: a = 5; b = a = 10; c = c + 5; DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR

Menggabungkan operator penugasan dengan operator aritmatika. Contoh: c = c + 1 dapat ditulis c += 1 x = x * 2 dapat ditulis x *= 2 Operator yang dapat menggunakan compound adalah +, -, *, /, dan % DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR

Contoh Penggunaan Compound Assignment Operator Operator Arti Contoh += Penjumlahan Bilangan +=2 Bilangan = Bilangan+2 -= Pengurangan Nilai -=10 Nilai = Nilai - 10 *= Perkalian Angka *= 3 Angka = Angka * 3 /= Pembagian Jumlah /= 5 Jumlah = Jumlah/5 %= Sisa hasil bagi Sisa %= 2 Sisa = Sisa % 2

Increment : ++ Decrement : -- Ada dua tipe: Prefix, misalnya ++c, --d Nilai ekspresi adalah nilai setelah dilakukan operasi increment/decrement Postfix, misalnya c++, d Nilai ekspresi adalah nilai sebelum dilakukan operasi increment/decrement Contoh (misal nilai awal a=5, b=8) Nilai a++ adalah 5, tetapi nilai a setelah itu adalah 6 Nilai ++b adalah 9, dan nilai b setelah itu adalah 9 DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR

DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR Program akan memilih satu atau lebih statement untuk diproses atau tidak diproses berdasarkan kondisi tertentu. Kondisi dinyatakan sebagai ekspresi. Pernyataan yang digunakan disebut conditional statement. Ada dua jenis: Pernyataan IF Pernyataan SWITCH

Sintaks: ( kondisi? eks1 : eks2 ) Artinya jika kondisi bernilai benar (true) maka ekspresi tersebut bernilai eks1. Selainnya, bernilai eks2. Contoh: n1 += ( (nilai < 10)? 1 : 0 ) setara dengan: if (nilai<10) n1+=1; else n1+=0; DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR

DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR Bentuk umum: if (kondisi) simple or compound statement; atau if (kondisi) else simple or compound statement; simple or compound statement;

DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR Diagram alir untuk if.. Diagram alir untuk if..else. kondisi? FALSE kondisi? FALSE TRUE TRUE statements statements statements

#include <stdio.h> main(){ int a, b; scanf("%d %d", &a, &b); if (a<b) printf("%d\n", b-a); printf("%d\n", a-b); return 0; Apa output program jika diberi input 5 20? Apa output program jika diberi input 20 5? -15 15 15 DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR

#include <stdio.h> main(){ int a, b; scanf("%d %d", &a, &b); if (a<b) { printf("%d\n", b-a); printf("%d\n", a-b); return 0; Apa output program jika diberi input 20 5? DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR

#include <stdio.h> main(){ int a, b; scanf("%d %d", &a, &b); if (a<b) { printf("%d\n", b-a); printf ( a lebih kecil ); else {printf("%d\n", a-b); printf ( a lebih besar ); return 0; Apa output program jika diberi input 5 20? Apa output program jika diberi input 20 5? 15 a lebih kecil 15 a lebih besar DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR

DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR Struktur seleksi if yang bercabang dengan banyak kondisi. Contoh, berapa nilai b jika diberikan input 12? scanf("%d", &a); if (a<5) b=1; else if (a<10) b=2; else if (a<15) b=3; else b=4;

Struktur else if : if(syarat) { else if(syarat) Tidak { Else IF Ya else if(syarat) { Tidak Else IF Ya else if(syarat) { Tidak else Else Ya { else yang terakhir sifatnya optional, boleh ada boleh juga tidak. IF Ya

Bentuk Nested IF dengan banyak perintah : if(syarat) { if(syarat) { else { else { if(syarat) { else { YA IF YA TIDAK IF YA TIDAK IF TIDAK

DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR Struktur dengan banyak kondisi yang berbentuk ekspresi logika kesamaan. Perhatikan potongan program berikut (apa yang dilakukan?) int bil, hasil; scanf("%d", &bil); hasil = bil % 3; if (hasil==0) printf("nol\n"); else if (hasil==1) printf("satu\n"); else printf("dua\n");

DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR Bentuk umum struktur SWITCH switch(switch_expr) { case (constant expr1) : S1; S2; ; ; ; break; case (constant expr2) : S3; S4; break;... default : S5; S6; break;

Struktur SWITCH digunakan untuk mengimplementasikan pernyataan IF ganda yang bersarang (nested IF) dengan bentuk sebagai berikut: SWITCH (ekspresi) Pernyataan; DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR

DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR Modifikasi program sebelumnya: int bil, hasil; scanf("%d", &bil); hasil = bil % 3; switch (hasil) { case 0: printf("nol\n"); break; case 1: printf("satu\n");break; default: printf("dua\n"); break;

#include <stdio.h> main() { int grade, na=0, nb=0, nc=0, nd=0, ne=0; printf("\nmasukkan huruf mutu, dan akhiri dengan EOF\n"); while ((grade=getchar)!= EOF) { switch (grade) { case 'A': case 'a':++na; break; case 'B': case 'b':++nb; break; case 'C': case 'c':++nc; break; case 'D': case 'd':++nd; break; case 'E': case 'e':++ne; break; case '\n':case ' ';break; default: printf("salah data\n"); printf("\na: %d", na); printf("\nb: %d", nb); printf("\nc: %d", nc); printf("\nd: %d", nd); printf("\ne: %d", ne); return 0; DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR Contoh program dengan switch.case.

PRECEDENCE Menentukan urutan operasi dari operatoroperator dalam ekspresi majemuk. Operator dengan tingkat precedence lebih tinggi akan diproses lebih dahulu. ASSOCIATIVITY Menentukan arah evaluasi bila ada dua atau lebih operator dengan tingkat precedence yang sama. Dilambangkan dengan LR atau RL. DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR

Contoh Precedence dan Associativity 1

Contoh Precedence dan Associativity 2

LATIHAN DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR

Deskripsi: Air bersih LAYAK diminum jika memenuhi dua syarat, yaitu kadar besi kurang dari p, dan kadar bakteri coli kurang dari q. Jika tidak memenuhi kedua syarat tersebut, air dikatakan TIDAK LAYAK untuk diminum. Implementasi dalam program: if ((besi>p) && (coli>q)) printf("tidak LAYAK"); else printf("layak"); BENARKAH??

#include <stdio.h> main() { int n; scanf("%d", &n); if (n=0) printf("nol"); else printf("tidak NOL"); return 0; Apa outputnya jika diberikan input data 0? Apa outputnya jika diberikan input data 5? Apa yang dapat disimpulkan dari kasus ini? DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR

#include <stdio.h> main() { int a = 5; printf("\n%d", a += 3); printf("\n%d", a -= 3); printf("\n%d", a *= 3); printf("\n%d", a /= 3); printf("\n%d", a %= 3); printf("\n%d", a); printf("\n%d", a); printf("\n%d", a); printf("\n%d", a); printf("\n%d", a); return 0; printf("\n%d", ++a); printf("\n%d", a++); printf("\n%d", --a); printf("\n%d", a--); //13 //10 //30 //10 //1 //1 //2 //2 //2 //3 //2 //2 //2 //1 DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR

Mana di antara penamaan variabel berikut yang benar? Mengapa yang lain salah? a. 3n+1 b. n+1 c. 3n1 d. 3n_1 e. n_31 DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR

Di antara deklarasi variabel berikut mana yang SALAH? Mengapa? a.int a, d. int a=b=1; b; float c=0.5; b. int a=0; e. int b,a=0; int b=0; float c=0.5; c.int a=0; int b; float c; DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR

Misalkan terdapat tiga variabel bertipe int, yaitu a=-15, b=-10, c=-5. Berapa nilai ekspresi a<b<c? True/False? Berapa nilai (++b+c--)? DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR