Anda di halaman 1dari 26

D4 Teknik Komputer

Politeknik Elektronika Negeri Surabaya


 Mempelajari operator perbandingan
 Mempelajari operator logika
 Mempelajari operator assignment
 Mempelajari pengambilan keputusan
 Digunakan untuk membandingkan antara dua
operand
 Hasil perbandingan adalah benar/ salah
 Contoh:
◦ Apakah dua belas lebih besar dari sembilan?
◦ Apakah tujuh lebih kecil dari lima?
 Notasinya:
◦ “<“, “>”, “<=“, “>=“, “!=“, “==“
 Digunakan untuk membandingkan secara
logika “and”, “or” dan “not”
 Selain nol adalah benar/ true
 Notasinya:
◦ “&&”, “||” dan “!”
 Digunakan bersama dengan operator
aritmatika
 Dapat meringkas penulisan
 Notasinya:
◦ “*=“, “/=“, “+=“, “-=“
 Contoh:
◦ Luas = Luas + 5 ditulis Luas+=5
 Untuk menentukan pilihan yang diberikan,
bila benar maka pilihan pertama dijalankan
dan bila salah maka pilihan kedua dijalankan.
#include <stdio.h>

void main()
{
int x, y;

printf("Masukkan nilai x = "); scanf("%d",&x);


printf("Masukkan nilai y = "); scanf("%d",&y);
printf("\nNilai %d < %d adalah %d\n",x,y,x < y);
printf("\nNilai %d > %d adalah %d\n",x,y,x > y);
printf("\nNilai %d == %d adalah %d\n",x,y,x == y);
printf("\nNilai %d <= %d adalah %d\n",x,y,x <= y);
printf("\nNilai %d >= %d adalah %d\n",x,y,x >= y);
printf("\nNilai %d != %d adalah %d\n",x,y,x != y);
}
#include <stdio.h>

void main()
{
int x, y;

printf("Masukkan nilai x = ");


scanf("%d",&x);
printf("Masukkan nilai y = ");
scanf("%d",&y);
printf("\nNilai dari %d & %d = %d\n",x,y,x & y);
printf("\nNilai dari %d | %d = %d\n",x,y,x | y);
printf("\nNilai dari %d && %d = %d\n",x,y,x && y);
printf("\nNilai dari %d || %d = %d\n",x,y,x || y);
printf("\nNilai dari !0 = %d\n",!0);
printf("\nNilai dari !1 = %d\n",!1);
printf("\nNilai dari !%d = %d\n",x,!x);
printf("\nNilai dari !%d = %d\n",y,!y);
}
#include <stdio.h>

void main()
{
int x, y, n, m;

printf("Masukkan nilai x = "); scanf("%d",&x);


printf("Masukkan nilai y = "); scanf("%d",&y);
n=(x < 10) && (y > 10);
m=(x > 10) || (y < 10);
printf("\nNilai dari %d < 10 && %d > 10 = %d",x,y,n);
printf("\nNilai dari %d > 30 || %d < 70 = %d\n",x,y,m);
}
#include <stdio.h>

void main()
{
int a, b, x, y;

printf("Masukkan nilai a = "); scanf("%d",&a);


printf("Masukkan nilai b = "); scanf("%d",&b);
printf("Masukkan nilai x = "); scanf("%d",&x);
printf("Masukkan nilai y = "); scanf("%d",&y);
printf("\nNilai y dari y *= x adalah %d\n",y*=x);
printf("\nNilai y dari y /= x adalah %d\n",y/=x);
printf("\nNilai y dari y += x adalah %d\n",y+=x);
printf("\nNilai y dari y -= x adalah %d\n",y-=x);
printf("\nNilai y dari y %%= x adalah %d\n",y%=x);
puts("");
printf("\nNilai y dari y*=(a+b) adalah %d\n", y*=(a+b));
printf("\nNilai y dari y/=(a-b) adalah %d\n", y/=(a-b));
printf("\nNilai y dari y+=(a%%b) adalah %d\n", y+=(a%b));
printf("\nNilai y dari y-=(a/b) adalah %d\n", y-=(a/b));
}
void main()
{
int a, b, c, d;
printf("Masukkan nilai a = "); scanf("%d",&a);
printf("Masukkan nilai b = "); scanf("%d",&b);
printf("Masukkan nilai c = "); scanf("%d",&c);
printf("Masukkan nilai d = "); scanf("%d",&d);
printf("\nNilai a dibanding b adalah a lebih");
printf(" %s dari pada b",(a>b)?"BESAR":"kecil");
printf("\nNilai c dibanding d adalah c lebih");
printf(" %s dari pada d\n",(c<d)?"kecil":"BESAR");
getch();
}
 Buatlah program untuk menentukan hasil (0
atau 1) dari operator relasional dibawah ini,
dan masukkan nilai a, b, c dan d dari
keyboard.
a. (a > b) && (c < d) || (a = = b)
b. (a = = b) || (c = = d) && (a < b)
c. (a <= c ) && ( b >= d) || ( a = = d)
d. (a >= d) || ( b <= c) && ( c == d)
e. (a != b) || (c > d) || (a != d)
 Berapakah nilai variable m, n dan hasil dari
program dibawah ini? dan jelaskan jalannya
program.
void main()
{
int a=7, b=9, c=5, d=3;
int m, n, hasil;

m=(a>b) ? a: b;
n=(c<d) ? d: c;
hasil=(m>n) ? m:n;
}
 Buatlah program untuk menentukan nilai terbesar dari
empat nilai yang diberikan melalui keyboard, seperti contoh
dibawah ini (gunakan operator kondisi):
Masukkan nilai A = 5 
Masukkan nilai B = 3 
Masukkan nilai C = 6 
Masukkan nilai D = 8 

Nilai A lebih besar dari pada B


Nilai C lebih kecil dari pada D
Jadi nilai maksimun adalah 8

 Petunjuk:
◦ Bandingkan nilai a dengan b, simpan hasilnya pada x
◦ Bandingkan nilai c dengan d, simpan hasilnya pada y
◦ Bandingkan nilai x dengan y, cetak nilai terbesar
TUJUAN:
 Mempelajari penggunaan statement
penentu keputusan if-else.
 Memanfaatkan statement if-else untuk
membuat proses perulangan dengan
statement goto-label.
 Mempelajari statement if-else bersarang
(nested if).
 Mempelajari penggunaan statement else-
if.
 Mempelajari penggunaan statement
switch-case sebagai pengganti statement
else-if.
void main()
{
int bil,ab;

printf("Masukkan bilangan bulat: ");


scanf("%d", &bil);
ab = bil;
if(bil < 0) ab = -bil;
printf("Nilai absolut dari %d adalah %d\n", bil, ab);
}
#include <stdio.h>

void main()
{
int pembilang, penyebut, sisa;

printf("Masukkan pembilang : ");


scanf("%d", &pembilang);
printf("Masukkan penyebut : ");
scanf("%d", &penyebut);
sisa = pembilang % penyebut;
if(sisa)
printf("%d tidak habis dibagi %d\n", pembilang,
penyebut);
else
printf("%d habis dibagi %d\n", pembilang, penyebut);
}
#include <stdio.h>

void main()
{
char ch;

printf("Masukkan suatu karakter : ");


scanf("%c", &ch);
if(ch>='a' && ch<='z')
printf("\nKarakter termasuk huruf kecil.\n");
else
printf("\nKarakter bukan huruf kecil.\n");
}
void main()
{
int i=0, hasil=1;

ulang:

i++;
hasil*=2;
printf("Iterasi ke %2d: %5d\n", i, hasil);

if(i<10) goto ulang;


}
void main()
{
char tak;
printf("Masukkan tipe tak ( 2 / 4) : ");

tak=getche();

if(tag==’2’) {
printf(“\nMerk sepeda motor bertipe 2 tak\n\n");
printf(" 1. YA MAHA");
printf(" 2. YA SUZUKI");
printf(" 3. YA HONDA\n\n");
} else {
printf(“\nMerk sepeda motor bertipe 4 tak\n\n");
printf(" 1. HONDA");
printf(" 2. SUZUKI");
printf(" 3. YAMAHA\n\n");
}
}
void main()
{
int valid_operator = 1;
char oper; Ralat: operator diganti oper
float bil1, bil2, hasil;

printf("Masukkan 2 bilangan dan sebuah operator.\n\n");


printf("Dengan format:\n\n");
printf("= bilangan-1 operator bilangan-2\n\n");
printf("= ");
scanf("%f %c %f", &bil1, &oper, &bil2);
if(oper == '*') {
hasil = bil1 * bil2;
} else if(oper == '/')
hasil = bil1 / bil2;
else if(oper == '+')
hasil = bil1 + bil2;
else if(oper == '-')
hasil = bil1 - bil2;
else
valid_operator = 0;
if(valid_operator) {
printf("\nHasil perhitungan\n\n");
printf("%g %c %g = %g\n",bil1,oper,bil2,hasil);
} else {
printf("\nOperator SALAH!\n");
printf(“\nGunakan operator +, -, / dan * saja!”);
}
}
void main()
{
int valid_operator = 1;
char oper; Awal Kondisi
float bil1, bil2, hasil;

printf("Masukkan 2 bilangan dan sebuah operator.\n\n");


printf("Dengan format:\n\n");
printf("= bilangan-1 operator bilangan-2\n\n");
printf("= ");
scanf("%f %c %f", &bil1, &oper, &bil2);
switch(oper) {
case '*': hasil = bil1 * bil2; break;
case '/': hasil = bil1 / bil2; break;
case '+': hasil = bil1 + bil2; break;
case '-': hasil = bil1 - bil2;
default : valid_operator = 0;
}
if(valid_operator) {
printf("\nHasil perhitungan\n\n");
printf("%g %c %g = %g\n",bil1,oper,bil2,hasil);
} else {
printf("\nOperator SALAH!\n");
printf("\nGunakan operator +, -, / dan * saja!");
}
}
 Buatlah program untuk menentukan
bilangan ganjil atau bilangan genap dari
bilangan yang dimasukkan melalui
keyboard.
 Buatlah program untuk menentukan
kelompok suatu karakter yang
dimasukkan melalui keyboard. Kelompok
karakter tersebut adalah huruf kecil, huruf
besar, angka, dan karakter khusus ( tanda
baca, operator dsb).
Buatlah program kalkulator sederhana.
Program harus memungkinkan user untuk mengetik ekspresi:
Bilangan Operator

Mulai perhitungan
255 s = > men-set accumulator
= 255.000000
10 / => membagi accumulator dengan 10
= 25.500000
15 - => mengurangi accumulator dengan 15
= 10.500000
0e => selesai
Akhir perhitungan

Operator yang digunakan adalah: * / + - % & | r e


Operator s memerintah program untuk men-set "accumulator".
Operator e memerintah program untuk mengakhiri program.
Contoh running program:
 Buatlah program untuk menentukan suatu
tahun kabisat atau bukan yang dimasukkan
melalui keyboard, dimana tahun dibatasi
mulai dari tahun 1600 sampai dengan tahun
2400.