SlideShare a Scribd company logo
1 of 10
BAB 3
PEMILIHAN / KONTROL PROGRAM
A. Pendahuluan
Salah satu kemampuan komputer adalah dapat melakukan proses pemilihan dari
beberapa alternatif sesuai dengan kondisi yang diberikan. Dalam persoalan sehari-
haripun, hampir selalu ada kondisi dimana kita harus memilih, diantara alternatif –
alternatif yang ada. Sebagai contoh, seorang mahasiswa memperoleh nilai 75. apakah
dengan nilai tersebut mahasiswa tersebut itu lulus ? Jika batas kelulusan minimal 60
maka mahasiswa tersebut lulus ujian. Jika kurang dari 60 maka mahasiswa tersebut
tidak lulus ujian.
B. Pemograman
Bahasa pemograman seperti Pascal maupun C juga mendukung pernyataan
bersyarat . Tata cara penulisannya tersaji berikut ini :
Algoritmik Pascal C
if (kondisi) then
aksi
if (kondisi) then aksi; if (kondisi) aksi;
end if
if (kondisi) then
aksi I
if (kondisi) then
aksi I
if (kondisi)
aksi I;
else else Else
aksi 2 aksi 2 aksi 2
end if
pernyataan majemuk begin ….. end { …….. }
Baik aksi, aksi I, maupun aksi2 bisa merupakan pernyataan tunggal maupun
pernyataan majemuk. Selain itu, bila kondisi bertipe ordinal, seperti integer, byte atau
yang lain (kecuali real atau string), bisa digunakan pernyataan di bawah ini :
Algeritmik Pascal C
case (nama) case (nama) of switch (nama) {
<label1> : aksi I label 1 : aksi I; case label I : aksi1 ; break
<label2> : aksi 2 label 2 : aksi 2; case label 2 : aksi2 ; break
<label3> : aksi 3 label 3 : aksi 3; case label 3 : aksi3 ; break
…. …. ….
<labelN> : aksiN label N : aksiN; case labelN : aksiN ; break
else : aksiX else aksiX ; default : aksiX
endcase end : }
dimana konstantaI sampai dengan konstantaN dapat pula berupa range suatu nilai,
misalnya untuk menyatakan 60 < nilai ≤ 80 dapat ditulis sebagai 61..80 (dengan
menggunakan operator range..)
C. Operator Relasional
Biasanya suati kondisi dinyatakan dengan membandingkan suatu keadaan
dengan suatu nilai. Untuk itu diperlukan suatu operator perbandingan yaitu :
Algoritmik Arti Pascal C
< Lebih kecil < <
> Lebih besar > >
<= Lebih kecil sama dengan <= <=
>= Lebih besar sama dengan >= >=
≠ Tidak sama dengan <> !=
= Sama dengan = = =
or atau or ║
and dan and & &
D. Tabel Kebenaran Operator Or dan And
Operator or dan and termasuk termasuk operator binari, yaitu operator yang
memerlukan dua operan, dimana setiap operan bisa bernilai benar atau salah. Untuk
itu masing – masing mempunyai 4 kemungkin an nilai, yaitu :
p q p or q
benar benar benar
benar salah benar
salah benar benar
salah salah salah
Kasus 3.1
Tentukan bilangan tersebesar antara dua bilangan bulat.
Algoritma 3.1.
Alogaritma Maksimum
{ Menentukan nilai terbesar antara dua bilangan bulat }
Deklarasi
A , B : intiger
p q p or q
bena
r
bena
r
benar
bena
r
salah salah
salah bena
r
salah
salah salah salah
Dekripsi
Read (A,B)
If (A,B) then write (‘bilangan terbesar adalah = ‘ A)
Else write (‘bilangan terbesar adalah = ‘ B)
endif
Flow Chart 3.1
Tranlasi 3.1
Bahasa Pascal Bahasa C
program maksimum :
uses wincrt :
var A.B : real
begin
write (‘bilangan pertama = ‘)
readln (A)
write (‘bilangan kedua = ‘)
readln (B)
if (A > B) then
writeln (‘Bilangan Terbesar A :’,A:4:0)
else
writeln (‘Bilangan Terbesar B’,B:4:0)
end.
#include <stdio.h>
main () {
int A, B
printf (bilangan pertama = “)
scanf (“%d”,&A):
printf (“bilangan kedua = “)
scanf (“%d”,&B):
if (a>b)
printf (“bilangan terbesar : %d”,A):
else
printf (“bilangan terbesar : %d”,B):
retrun 0:
Kasus 3.2
Tentukan bilangan terbesar antara bilangan bulat.
Alogaritma 3.2.a
Alogaritma Nilai _Maksimum
{Membaca tiga buah bilangan bulat, menentukan bilangan terbesar diantara tiga buah
bilangan tersebut dan menampilkannya ke layar}
Deklarasi
X,y,z : integer
Mulai
A ,
B
A>
B?
Max=B
selesai
Max=A
Dekripsi
Read (x,y,z)
read (x>y)and (x<z) then write (‘bilangan terbesar adalah = ,x)
else if (x>y)and (x<z) then write (‘bilangan terbesar adalah = ,y)
else write (‘bilangan terbesar adalah = ,z)
end if
Flow Chart 3.2
Tidak
Tidak
Tranlasi 3.2
Bahasa Pascal Bahasa C
program maksimum :
uses wincrt :
var x, y, z : integer
begin
write (‘bilangan pertama = ‘)
readln (x)
write (‘bilangan kedua = ‘)
readln (y)
write (‘bilangan ketiga = ‘)
readln (z)
if (x>y)and (x<z) then
write (‘bilangan terbesar adalah =’,x)
else if (y>x)and (y<z) then
writeln (bilangan terbesar : y)
else
write (bilangan terbesar : z)
#include <stdio.h>
main () {
int x, y, z
printf (bilangan pertama = “)
scanf (“%d”,&x):
printf (“bilangan kedua = “)
scanf (“%d”,&y):
printf (“bilangan ketiga = “)
scanf (“%d”,&z):
if (x>y) &&(x>z)
printf (“bilangan terbesar : %d”,x):
else if (y>x) &&(y>z)
printf (“bilangan terbesar : %d”,y):
else
printf (“bilangan terbesar : %d”,z):
retrun 0:
mulai
x>y
and x>z ?
x, y, z
x>y
and
x>z ?
max = z
mak = y
max = x
selesai
end.
Pembandingan ini tentu saja menjadi sangat kompleks bila bilangan yang di bandingkan
lebih dari 3. sebagai alternatif, alogaritma di bawah ini memberikan penyelesaian lebih baik.
Idenya : bila kita punya satu bilangan maka bilangan tersebut pastilah terbesar (atau terkecil ),
karena memang hanya sebuah bilangan saja. Bilangan berikutnya tinggal di bandingkan
dengan nilai terbesar yang saat ini diperoleh.
Alogaritma 3.2.b
Alogaritma Nilai Maksimum
{Membaca tiga buah bilangan bulat, menentukan bilangan terbesar diantara tiga buah
Bilangan tersebut dan menampilkannya ke layar}
Deklarasi
X,y,z : integer
Max : integer
Dekripsi
Read (x,y,z)
Max ← x
If (y> maks) then maks ← y end if
If (z> maks) then maks ← z end if
Write (‘Bilangan terbesar adalah = ‘ maks)
Kasus
Carilah akar – akar kuadrat
Analisis
Persamaan kuadrat adalah persamaan dengan bentuk umum Ax2
+ Bx + c = 0 , dan
tentu saja dengan A # 0. akar persamaan kuadrat di peroleh dari rumus :
Bila b2
– 4ac < 0 akan di peroleh akar imajiner
Algoritma
Algoritma Persamaan Kuadrat
{Menghitung akar – akar persamaan kuadrat Ax^2+Bx+C = 0 }
Deklarasi
A,B,C : integer {koefisien – koefisien persamaan}
disk : longint {nilai diskriminan}
x1, x2 : real {nilai – nilai akar untuk disk > = 0}
Deskripsi
Read (A,B,C)
Disk ← B*B-4*C
If ( A = 0 ) then write (bukan persamaan kuadrat)
Else if disk >0then
x1← -B+sqrt(disk)/2*A
x2← -B-sqrt(disk)/2*A
else if disk = 0 then
x1← -B/2*A
x2← x1
else write (Akar imajiner)
end if
write (x1, x2)
Flow Chart 3.3
= 0 > 0
< 0
Transilasi 3.3
Bahasa Pascal Bahasa C
program Persamaan – Kua drat
uses wincrt ;
var A, B, C ; integer;
disk ; longint; xI, x2 ; real;
begin
write(‘Koefisien pangkat 2 ; ‘);
readln (A);
write(‘Koefisien pangkat I ; ‘);
realdn (B);
write(‘Koefisien pangkat 0 ; ‘);
realdn (C)
if A = 0 then begin
writeln (‘Bukan pers, kuadrat.’)
writeln(‘Harga akar = ‘,-C/B:I:I);
end
else begin
#include <stadio.h>
#include <math.h>
main ( ) {
int A, B, C;
long disk;
float x I, x2 ;
printf(“Koefisien pangkat 2 :”);
scanf(“%d”,&A);
printf(“Koefisien pangkat 1 :”);
scanf(“%d”,&B);
printf(“Koefisien pangkat 0 :”);
scanf(“%d”,&C);
if (A = = 0) {
printf (“bukan pers. Kuadrat.n”)
printf (“harga akar = %6.3f”,-CB)
}else{
mulai
A,B,C
Disk = B2
-4 A C
Disk
?
‘Akar
imajiner’
selesai
x1 = -B+ disk
2A
X2 = -B- disk
2A
x1 = -B
2A
x2 = x1
disk :=B*B – 4*A*C:
if disk > 0 then begin
x1 := -B+sqrt(disk)/(2*A)
x2 := -B-sqrt(disk)/(2*A)
writlen(diskriminan : disk)
writlen(x1 = ‘,x1:1:1);
writlen(x2 = ‘,x1:1:1);
end
else if disk – 0 then begin
x1 := -B / (2*A)
x2 := x1 ;
writlen(diskriminan : 0’)
writlen(x1 = ‘,x1:1:1);
writlen(x2 = ‘,x2:1:1);
end
else writeln(‘akar imajiner’)
end
end
Disk = B*B - 4*A*C:
if disk > 0 {
x1 := -B+sqrt(disk)/(2*A)
x2 := -B-sqrt(disk)/(2*A)
print (“diksriminan =%Idn”,disk)
printf (x1 = %6.3fn”,x1)
printf (x2 = %6.3fn”,x2)
} else if (disk = = 0) {
x1 := -B / (2*A)
x2 := x1 ;
printf(diskriminan : 0n’)
printf (x1 = %6.3fn”,x1)
printf (x2 = %6.3fn”,x2)
} else writeln(‘akar imajiner’)
{
Retrun 0 :
{
Output :
Kasus 3.4
Konversikan nilai angka menjadi nilai huruf dengan ketentuan sebagai berikut :
Nilai Angka Nilai huruf
0 – 20 E
21 – 40 D
41 – 60 C
61 – 80 B
81 – 100 A
Alogaritma
Alogaritma Konversi_Nilai
{Mengkonversikan nilai angka menjadi nilai huruf}
Deklarasi
Nilai : integer
Nilai_huruf : char
Koefisien pangkat 2 : 1
Koefisien pangkat 1 : -1
Koefisien pangkat 0 : -20
Diskriminan = 81
x1 = 5.5
x2 = -3.5
Deksripsi
Read (nilai)
If (nilai > 0) and ( nilai <=20) then nilai_huruf ← ‘E’
else (nilai > 20) and ( nilai <=40) then nilai_huruf ← ‘D’
else (nilai > 40) and ( nilai <=60) then nilai_huruf ← ‘C’
else (nilai > 60) and ( nilai <=80) then nilai_huruf ← ‘B’
else nilai_huruf ← ‘ A ‘
write (nilai_huruf)
Flow Chart 3.4
T
F
T
F
T
F
T
F
mulai
nilai
Nilai > 0
And nilai
<=20?
Nilai > 60
And nilai
<=80?
Nilai > 40
And nilai
<=60?
Nilai > 20
And nilai
<=40?
nilai_huruf ‘ A ‘
nilai_huruf
selesai
nilai_huruf ← ‘E’
nilai_huruf ← ‘E’
nilai_huruf ← ‘E’
nilai_huruf ← ‘E’
Tranlasi 3.4
Bahasa Pascal Bahasa C
Program Kon versi_Nilai
Uses wincrt
Var nilai : interger
nilai_ huruf : char ;
begin
write (‘masukkan nilai angka + ‘):
readln (nilai)
if (niali > 0) and (nilai < + 20) then
nilai_huruf :=’E’
else if ( nilai >20) and (nilai < + 40) then
nilai_huruf :=’D”
else if (niali>40) and ( niali < + 60) then
nilai_huruf := ‘C’
else if ( nilai>60) and ( nilai < = 80 ) then
nilai_huruf := ‘B’
else nilai_huruf :=’A’;
writeln (‘Nilai huruf =’,nilai_huruf;
end.
#include <stdio.h>
Main( ) {
Int nilai:
Char nilai_huruf;
Printf (“Masukkan nilai angka = “);
Scanf (“%d”,&nilai);
If (( nilai > 0) && (nilai < = 20))
Nilai_huruf = ‘E’;
Else if (( nilai > 20 ) && ( nilai < = 40))
Nilai_huruf = ‘D’;
Else if (( nilai > 40 ) && ( nilai < = 60))
Nilai_huruf = ‘C’;
Else if (( nilai > 60 ) && (nilai < = 80))
Nilai_huruf = ‘B’;
Else nilai_huruf = ‘A’;
Print(“Nilai huruf = %c”,nilai_huruf);
Return o ;
Tranlasi 3.4
Bahasa Pascal Bahasa C
Program Kon versi_Nilai
Uses wincrt
Var nilai : interger
nilai_ huruf : char ;
begin
write (‘masukkan nilai angka + ‘):
readln (nilai)
if (niali > 0) and (nilai < + 20) then
nilai_huruf :=’E’
else if ( nilai >20) and (nilai < + 40) then
nilai_huruf :=’D”
else if (niali>40) and ( niali < + 60) then
nilai_huruf := ‘C’
else if ( nilai>60) and ( nilai < = 80 ) then
nilai_huruf := ‘B’
else nilai_huruf :=’A’;
writeln (‘Nilai huruf =’,nilai_huruf;
end.
#include <stdio.h>
Main( ) {
Int nilai:
Char nilai_huruf;
Printf (“Masukkan nilai angka = “);
Scanf (“%d”,&nilai);
If (( nilai > 0) && (nilai < = 20))
Nilai_huruf = ‘E’;
Else if (( nilai > 20 ) && ( nilai < = 40))
Nilai_huruf = ‘D’;
Else if (( nilai > 40 ) && ( nilai < = 60))
Nilai_huruf = ‘C’;
Else if (( nilai > 60 ) && (nilai < = 80))
Nilai_huruf = ‘B’;
Else nilai_huruf = ‘A’;
Print(“Nilai huruf = %c”,nilai_huruf);
Return o ;

More Related Content

What's hot

What's hot (20)

Pertemuan iv
Pertemuan ivPertemuan iv
Pertemuan iv
 
Lapak biseksi
Lapak biseksiLapak biseksi
Lapak biseksi
 
Konsep Array_sns
Konsep Array_snsKonsep Array_sns
Konsep Array_sns
 
Aray dan recrd
Aray dan recrdAray dan recrd
Aray dan recrd
 
Limit fungsi
Limit fungsiLimit fungsi
Limit fungsi
 
Soal Pascal OSN Komputer
Soal Pascal OSN KomputerSoal Pascal OSN Komputer
Soal Pascal OSN Komputer
 
Soal dan bahasan Pascal
Soal dan bahasan PascalSoal dan bahasan Pascal
Soal dan bahasan Pascal
 
Tutor C
Tutor CTutor C
Tutor C
 
Algoritma matematika
Algoritma matematika Algoritma matematika
Algoritma matematika
 
Daskom 3
Daskom 3Daskom 3
Daskom 3
 
Kalkulus (bab 1)
Kalkulus (bab 1)Kalkulus (bab 1)
Kalkulus (bab 1)
 
Analisis matlab
Analisis matlabAnalisis matlab
Analisis matlab
 
76110863 matlab
76110863 matlab76110863 matlab
76110863 matlab
 
Tutorial visual basic
Tutorial visual basicTutorial visual basic
Tutorial visual basic
 
Penggunaan turunan
Penggunaan turunanPenggunaan turunan
Penggunaan turunan
 
4 Menggambar Grafik Fungsi Dengan Matlab
4 Menggambar Grafik Fungsi Dengan Matlab4 Menggambar Grafik Fungsi Dengan Matlab
4 Menggambar Grafik Fungsi Dengan Matlab
 
Fungsi pecah pada aljabar
Fungsi pecah pada aljabarFungsi pecah pada aljabar
Fungsi pecah pada aljabar
 
3.6 pp
3.6 pp3.6 pp
3.6 pp
 
Latihan01 d76 politel_r01122007
Latihan01 d76 politel_r01122007Latihan01 d76 politel_r01122007
Latihan01 d76 politel_r01122007
 
Algoritma divide and conquer (lanjutan)
Algoritma divide and conquer (lanjutan)Algoritma divide and conquer (lanjutan)
Algoritma divide and conquer (lanjutan)
 

Similar to KONVERSI_NILAI

listiati univ bung hata (1110013211051) Bahasa pemrograman pascal
listiati univ bung hata (1110013211051) Bahasa pemrograman pascallistiati univ bung hata (1110013211051) Bahasa pemrograman pascal
listiati univ bung hata (1110013211051) Bahasa pemrograman pascalMaryanto Sumringah SMA 9 Tebo
 
Modul 2 Variabel dan operasi dasar (1).pptx
Modul 2 Variabel dan operasi dasar (1).pptxModul 2 Variabel dan operasi dasar (1).pptx
Modul 2 Variabel dan operasi dasar (1).pptxssuser4e88af1
 
C programming language notes (6)
C programming language notes (6)C programming language notes (6)
C programming language notes (6)nakomuri
 
Analisa Rangkaian Listrik Menggunakan MATLAB
Analisa Rangkaian Listrik Menggunakan MATLABAnalisa Rangkaian Listrik Menggunakan MATLAB
Analisa Rangkaian Listrik Menggunakan MATLABAndry Saftiawan
 
Jeni Intro2 Bab04 Tour Dari Package Java.Lang
Jeni Intro2 Bab04 Tour Dari Package Java.LangJeni Intro2 Bab04 Tour Dari Package Java.Lang
Jeni Intro2 Bab04 Tour Dari Package Java.LangIndividual Consultants
 
Persamaan dan Pertidaksamaan Linear
Persamaan dan Pertidaksamaan LinearPersamaan dan Pertidaksamaan Linear
Persamaan dan Pertidaksamaan LinearEman Mendrofa
 
pemrograman-dasar-cpp_03-ekspresi.pdf
pemrograman-dasar-cpp_03-ekspresi.pdfpemrograman-dasar-cpp_03-ekspresi.pdf
pemrograman-dasar-cpp_03-ekspresi.pdfTriAgus18
 
3 adp struktur keputusan
3   adp struktur keputusan3   adp struktur keputusan
3 adp struktur keputusanFaisal Amir
 
3 adp struktur keputusan
3   adp struktur keputusan3   adp struktur keputusan
3 adp struktur keputusanFisma Ananda
 
3.adp struktur keputusan
3.adp struktur keputusan3.adp struktur keputusan
3.adp struktur keputusanHardini_HD
 
3 adp struktur keputusan
3   adp struktur keputusan3   adp struktur keputusan
3 adp struktur keputusanAvenzz Venzz
 
3 adp struktur keputusan
3   adp struktur keputusan3   adp struktur keputusan
3 adp struktur keputusanChabil_Juniar
 
Pertemuan 5 : Algoritma & Pemrograman
Pertemuan 5 : Algoritma & PemrogramanPertemuan 5 : Algoritma & Pemrograman
Pertemuan 5 : Algoritma & PemrogramanTri Retna
 

Similar to KONVERSI_NILAI (20)

modul algoritma Bab 2
modul algoritma Bab 2modul algoritma Bab 2
modul algoritma Bab 2
 
listiati univ bung hata (1110013211051) Bahasa pemrograman pascal
listiati univ bung hata (1110013211051) Bahasa pemrograman pascallistiati univ bung hata (1110013211051) Bahasa pemrograman pascal
listiati univ bung hata (1110013211051) Bahasa pemrograman pascal
 
Alternatif 1 3.2
Alternatif 1 3.2Alternatif 1 3.2
Alternatif 1 3.2
 
Instalasi Dev-C++
Instalasi Dev-C++Instalasi Dev-C++
Instalasi Dev-C++
 
Modul 2 Variabel dan operasi dasar (1).pptx
Modul 2 Variabel dan operasi dasar (1).pptxModul 2 Variabel dan operasi dasar (1).pptx
Modul 2 Variabel dan operasi dasar (1).pptx
 
C programming language notes (6)
C programming language notes (6)C programming language notes (6)
C programming language notes (6)
 
Tugas alogaritma
Tugas alogaritmaTugas alogaritma
Tugas alogaritma
 
Analisa Rangkaian Listrik Menggunakan MATLAB
Analisa Rangkaian Listrik Menggunakan MATLABAnalisa Rangkaian Listrik Menggunakan MATLAB
Analisa Rangkaian Listrik Menggunakan MATLAB
 
Jeni Intro2 Bab04 Tour Dari Package Java.Lang
Jeni Intro2 Bab04 Tour Dari Package Java.LangJeni Intro2 Bab04 Tour Dari Package Java.Lang
Jeni Intro2 Bab04 Tour Dari Package Java.Lang
 
Persamaan dan Pertidaksamaan Linear
Persamaan dan Pertidaksamaan LinearPersamaan dan Pertidaksamaan Linear
Persamaan dan Pertidaksamaan Linear
 
pemrograman-dasar-cpp_03-ekspresi.pdf
pemrograman-dasar-cpp_03-ekspresi.pdfpemrograman-dasar-cpp_03-ekspresi.pdf
pemrograman-dasar-cpp_03-ekspresi.pdf
 
Program Pascal
Program PascalProgram Pascal
Program Pascal
 
3 adp struktur keputusan
3   adp struktur keputusan3   adp struktur keputusan
3 adp struktur keputusan
 
3 adp struktur keputusan
3   adp struktur keputusan3   adp struktur keputusan
3 adp struktur keputusan
 
3.adp struktur keputusan
3.adp struktur keputusan3.adp struktur keputusan
3.adp struktur keputusan
 
3 adp struktur keputusan
3   adp struktur keputusan3   adp struktur keputusan
3 adp struktur keputusan
 
3 adp struktur keputusan
3   adp struktur keputusan3   adp struktur keputusan
3 adp struktur keputusan
 
Manipulasi string
Manipulasi stringManipulasi string
Manipulasi string
 
3.2
3.23.2
3.2
 
Pertemuan 5 : Algoritma & Pemrograman
Pertemuan 5 : Algoritma & PemrogramanPertemuan 5 : Algoritma & Pemrograman
Pertemuan 5 : Algoritma & Pemrograman
 

More from Eko Widyanto Napitupulu (12)

klasifikasi-komputer
klasifikasi-komputerklasifikasi-komputer
klasifikasi-komputer
 
Soal un paket b 2009
Soal un paket b 2009Soal un paket b 2009
Soal un paket b 2009
 
Indonesian edition
Indonesian editionIndonesian edition
Indonesian edition
 
modul algoritma Bab 4
modul algoritma Bab 4modul algoritma Bab 4
modul algoritma Bab 4
 
modul algoritma Bab 5
modul algoritma Bab 5modul algoritma Bab 5
modul algoritma Bab 5
 
modul algoritma Bab 1
modul algoritma Bab 1modul algoritma Bab 1
modul algoritma Bab 1
 
Presentasi pkn "HAM"
Presentasi pkn "HAM"Presentasi pkn "HAM"
Presentasi pkn "HAM"
 
Resistor paralel
Resistor paralelResistor paralel
Resistor paralel
 
pengertian ihsan dan masalah ihsan
pengertian ihsan dan masalah ihsanpengertian ihsan dan masalah ihsan
pengertian ihsan dan masalah ihsan
 
perangkat-keras
perangkat-kerasperangkat-keras
perangkat-keras
 
perangkat-lunak
perangkat-lunakperangkat-lunak
perangkat-lunak
 
Fungsi otak manusia
Fungsi otak manusiaFungsi otak manusia
Fungsi otak manusia
 

Recently uploaded

MARIA NOVILIA BOISALA FASILITATOR PMM.pptx
MARIA NOVILIA BOISALA FASILITATOR PMM.pptxMARIA NOVILIA BOISALA FASILITATOR PMM.pptx
MARIA NOVILIA BOISALA FASILITATOR PMM.pptxmariaboisala21
 
Sistem operasi adalah program yang bertindak sebagai perantara antara user de...
Sistem operasi adalah program yang bertindak sebagai perantara antara user de...Sistem operasi adalah program yang bertindak sebagai perantara antara user de...
Sistem operasi adalah program yang bertindak sebagai perantara antara user de...Shary Armonitha
 
Menggunakan Data matematika kelas 7.pptx
Menggunakan Data matematika kelas 7.pptxMenggunakan Data matematika kelas 7.pptx
Menggunakan Data matematika kelas 7.pptxImahMagwa
 
PPT ANEMIA pada remaja maupun dewasapptx
PPT ANEMIA pada remaja maupun dewasapptxPPT ANEMIA pada remaja maupun dewasapptx
PPT ANEMIA pada remaja maupun dewasapptxsitifaiza3
 
Geologi Jawa Timur-Madura Kelompok 6.pdf
Geologi Jawa Timur-Madura Kelompok 6.pdfGeologi Jawa Timur-Madura Kelompok 6.pdf
Geologi Jawa Timur-Madura Kelompok 6.pdfAuliaAulia63
 
Contoh Algoritma Asosiasi pada data mining
Contoh Algoritma Asosiasi pada data miningContoh Algoritma Asosiasi pada data mining
Contoh Algoritma Asosiasi pada data miningSamFChaerul
 
BAGAIAMANA PANCASILA MENJADI SISTEM ETIKA.pptx
BAGAIAMANA PANCASILA MENJADI SISTEM ETIKA.pptxBAGAIAMANA PANCASILA MENJADI SISTEM ETIKA.pptx
BAGAIAMANA PANCASILA MENJADI SISTEM ETIKA.pptxchleotiltykeluanan
 
PENGENDALIAN MUTU prodi Blitar penting untuk dimiliki oleh masyarakat .pptx
PENGENDALIAN MUTU prodi Blitar penting untuk dimiliki oleh masyarakat .pptxPENGENDALIAN MUTU prodi Blitar penting untuk dimiliki oleh masyarakat .pptx
PENGENDALIAN MUTU prodi Blitar penting untuk dimiliki oleh masyarakat .pptxheru687292
 
UKURAN PENTYEBARAN DATA PPT KELOMPOK 2.pptx
UKURAN PENTYEBARAN DATA PPT KELOMPOK 2.pptxUKURAN PENTYEBARAN DATA PPT KELOMPOK 2.pptx
UKURAN PENTYEBARAN DATA PPT KELOMPOK 2.pptxzidanlbs25
 

Recently uploaded (9)

MARIA NOVILIA BOISALA FASILITATOR PMM.pptx
MARIA NOVILIA BOISALA FASILITATOR PMM.pptxMARIA NOVILIA BOISALA FASILITATOR PMM.pptx
MARIA NOVILIA BOISALA FASILITATOR PMM.pptx
 
Sistem operasi adalah program yang bertindak sebagai perantara antara user de...
Sistem operasi adalah program yang bertindak sebagai perantara antara user de...Sistem operasi adalah program yang bertindak sebagai perantara antara user de...
Sistem operasi adalah program yang bertindak sebagai perantara antara user de...
 
Menggunakan Data matematika kelas 7.pptx
Menggunakan Data matematika kelas 7.pptxMenggunakan Data matematika kelas 7.pptx
Menggunakan Data matematika kelas 7.pptx
 
PPT ANEMIA pada remaja maupun dewasapptx
PPT ANEMIA pada remaja maupun dewasapptxPPT ANEMIA pada remaja maupun dewasapptx
PPT ANEMIA pada remaja maupun dewasapptx
 
Geologi Jawa Timur-Madura Kelompok 6.pdf
Geologi Jawa Timur-Madura Kelompok 6.pdfGeologi Jawa Timur-Madura Kelompok 6.pdf
Geologi Jawa Timur-Madura Kelompok 6.pdf
 
Contoh Algoritma Asosiasi pada data mining
Contoh Algoritma Asosiasi pada data miningContoh Algoritma Asosiasi pada data mining
Contoh Algoritma Asosiasi pada data mining
 
BAGAIAMANA PANCASILA MENJADI SISTEM ETIKA.pptx
BAGAIAMANA PANCASILA MENJADI SISTEM ETIKA.pptxBAGAIAMANA PANCASILA MENJADI SISTEM ETIKA.pptx
BAGAIAMANA PANCASILA MENJADI SISTEM ETIKA.pptx
 
PENGENDALIAN MUTU prodi Blitar penting untuk dimiliki oleh masyarakat .pptx
PENGENDALIAN MUTU prodi Blitar penting untuk dimiliki oleh masyarakat .pptxPENGENDALIAN MUTU prodi Blitar penting untuk dimiliki oleh masyarakat .pptx
PENGENDALIAN MUTU prodi Blitar penting untuk dimiliki oleh masyarakat .pptx
 
UKURAN PENTYEBARAN DATA PPT KELOMPOK 2.pptx
UKURAN PENTYEBARAN DATA PPT KELOMPOK 2.pptxUKURAN PENTYEBARAN DATA PPT KELOMPOK 2.pptx
UKURAN PENTYEBARAN DATA PPT KELOMPOK 2.pptx
 

KONVERSI_NILAI

  • 1. BAB 3 PEMILIHAN / KONTROL PROGRAM A. Pendahuluan Salah satu kemampuan komputer adalah dapat melakukan proses pemilihan dari beberapa alternatif sesuai dengan kondisi yang diberikan. Dalam persoalan sehari- haripun, hampir selalu ada kondisi dimana kita harus memilih, diantara alternatif – alternatif yang ada. Sebagai contoh, seorang mahasiswa memperoleh nilai 75. apakah dengan nilai tersebut mahasiswa tersebut itu lulus ? Jika batas kelulusan minimal 60 maka mahasiswa tersebut lulus ujian. Jika kurang dari 60 maka mahasiswa tersebut tidak lulus ujian. B. Pemograman Bahasa pemograman seperti Pascal maupun C juga mendukung pernyataan bersyarat . Tata cara penulisannya tersaji berikut ini : Algoritmik Pascal C if (kondisi) then aksi if (kondisi) then aksi; if (kondisi) aksi; end if if (kondisi) then aksi I if (kondisi) then aksi I if (kondisi) aksi I; else else Else aksi 2 aksi 2 aksi 2 end if pernyataan majemuk begin ….. end { …….. } Baik aksi, aksi I, maupun aksi2 bisa merupakan pernyataan tunggal maupun pernyataan majemuk. Selain itu, bila kondisi bertipe ordinal, seperti integer, byte atau yang lain (kecuali real atau string), bisa digunakan pernyataan di bawah ini : Algeritmik Pascal C case (nama) case (nama) of switch (nama) { <label1> : aksi I label 1 : aksi I; case label I : aksi1 ; break <label2> : aksi 2 label 2 : aksi 2; case label 2 : aksi2 ; break <label3> : aksi 3 label 3 : aksi 3; case label 3 : aksi3 ; break …. …. …. <labelN> : aksiN label N : aksiN; case labelN : aksiN ; break else : aksiX else aksiX ; default : aksiX endcase end : } dimana konstantaI sampai dengan konstantaN dapat pula berupa range suatu nilai, misalnya untuk menyatakan 60 < nilai ≤ 80 dapat ditulis sebagai 61..80 (dengan menggunakan operator range..)
  • 2. C. Operator Relasional Biasanya suati kondisi dinyatakan dengan membandingkan suatu keadaan dengan suatu nilai. Untuk itu diperlukan suatu operator perbandingan yaitu : Algoritmik Arti Pascal C < Lebih kecil < < > Lebih besar > > <= Lebih kecil sama dengan <= <= >= Lebih besar sama dengan >= >= ≠ Tidak sama dengan <> != = Sama dengan = = = or atau or ║ and dan and & & D. Tabel Kebenaran Operator Or dan And Operator or dan and termasuk termasuk operator binari, yaitu operator yang memerlukan dua operan, dimana setiap operan bisa bernilai benar atau salah. Untuk itu masing – masing mempunyai 4 kemungkin an nilai, yaitu : p q p or q benar benar benar benar salah benar salah benar benar salah salah salah Kasus 3.1 Tentukan bilangan tersebesar antara dua bilangan bulat. Algoritma 3.1. Alogaritma Maksimum { Menentukan nilai terbesar antara dua bilangan bulat } Deklarasi A , B : intiger p q p or q bena r bena r benar bena r salah salah salah bena r salah salah salah salah Dekripsi Read (A,B) If (A,B) then write (‘bilangan terbesar adalah = ‘ A) Else write (‘bilangan terbesar adalah = ‘ B) endif
  • 3. Flow Chart 3.1 Tranlasi 3.1 Bahasa Pascal Bahasa C program maksimum : uses wincrt : var A.B : real begin write (‘bilangan pertama = ‘) readln (A) write (‘bilangan kedua = ‘) readln (B) if (A > B) then writeln (‘Bilangan Terbesar A :’,A:4:0) else writeln (‘Bilangan Terbesar B’,B:4:0) end. #include <stdio.h> main () { int A, B printf (bilangan pertama = “) scanf (“%d”,&A): printf (“bilangan kedua = “) scanf (“%d”,&B): if (a>b) printf (“bilangan terbesar : %d”,A): else printf (“bilangan terbesar : %d”,B): retrun 0: Kasus 3.2 Tentukan bilangan terbesar antara bilangan bulat. Alogaritma 3.2.a Alogaritma Nilai _Maksimum {Membaca tiga buah bilangan bulat, menentukan bilangan terbesar diantara tiga buah bilangan tersebut dan menampilkannya ke layar} Deklarasi X,y,z : integer Mulai A , B A> B? Max=B selesai Max=A
  • 4. Dekripsi Read (x,y,z) read (x>y)and (x<z) then write (‘bilangan terbesar adalah = ,x) else if (x>y)and (x<z) then write (‘bilangan terbesar adalah = ,y) else write (‘bilangan terbesar adalah = ,z) end if Flow Chart 3.2 Tidak Tidak Tranlasi 3.2 Bahasa Pascal Bahasa C program maksimum : uses wincrt : var x, y, z : integer begin write (‘bilangan pertama = ‘) readln (x) write (‘bilangan kedua = ‘) readln (y) write (‘bilangan ketiga = ‘) readln (z) if (x>y)and (x<z) then write (‘bilangan terbesar adalah =’,x) else if (y>x)and (y<z) then writeln (bilangan terbesar : y) else write (bilangan terbesar : z) #include <stdio.h> main () { int x, y, z printf (bilangan pertama = “) scanf (“%d”,&x): printf (“bilangan kedua = “) scanf (“%d”,&y): printf (“bilangan ketiga = “) scanf (“%d”,&z): if (x>y) &&(x>z) printf (“bilangan terbesar : %d”,x): else if (y>x) &&(y>z) printf (“bilangan terbesar : %d”,y): else printf (“bilangan terbesar : %d”,z): retrun 0: mulai x>y and x>z ? x, y, z x>y and x>z ? max = z mak = y max = x selesai
  • 5. end. Pembandingan ini tentu saja menjadi sangat kompleks bila bilangan yang di bandingkan lebih dari 3. sebagai alternatif, alogaritma di bawah ini memberikan penyelesaian lebih baik. Idenya : bila kita punya satu bilangan maka bilangan tersebut pastilah terbesar (atau terkecil ), karena memang hanya sebuah bilangan saja. Bilangan berikutnya tinggal di bandingkan dengan nilai terbesar yang saat ini diperoleh. Alogaritma 3.2.b Alogaritma Nilai Maksimum {Membaca tiga buah bilangan bulat, menentukan bilangan terbesar diantara tiga buah Bilangan tersebut dan menampilkannya ke layar} Deklarasi X,y,z : integer Max : integer Dekripsi Read (x,y,z) Max ← x If (y> maks) then maks ← y end if If (z> maks) then maks ← z end if Write (‘Bilangan terbesar adalah = ‘ maks) Kasus Carilah akar – akar kuadrat Analisis Persamaan kuadrat adalah persamaan dengan bentuk umum Ax2 + Bx + c = 0 , dan tentu saja dengan A # 0. akar persamaan kuadrat di peroleh dari rumus : Bila b2 – 4ac < 0 akan di peroleh akar imajiner Algoritma Algoritma Persamaan Kuadrat {Menghitung akar – akar persamaan kuadrat Ax^2+Bx+C = 0 } Deklarasi A,B,C : integer {koefisien – koefisien persamaan} disk : longint {nilai diskriminan} x1, x2 : real {nilai – nilai akar untuk disk > = 0} Deskripsi Read (A,B,C) Disk ← B*B-4*C If ( A = 0 ) then write (bukan persamaan kuadrat) Else if disk >0then x1← -B+sqrt(disk)/2*A x2← -B-sqrt(disk)/2*A else if disk = 0 then x1← -B/2*A x2← x1 else write (Akar imajiner) end if write (x1, x2)
  • 6. Flow Chart 3.3 = 0 > 0 < 0 Transilasi 3.3 Bahasa Pascal Bahasa C program Persamaan – Kua drat uses wincrt ; var A, B, C ; integer; disk ; longint; xI, x2 ; real; begin write(‘Koefisien pangkat 2 ; ‘); readln (A); write(‘Koefisien pangkat I ; ‘); realdn (B); write(‘Koefisien pangkat 0 ; ‘); realdn (C) if A = 0 then begin writeln (‘Bukan pers, kuadrat.’) writeln(‘Harga akar = ‘,-C/B:I:I); end else begin #include <stadio.h> #include <math.h> main ( ) { int A, B, C; long disk; float x I, x2 ; printf(“Koefisien pangkat 2 :”); scanf(“%d”,&A); printf(“Koefisien pangkat 1 :”); scanf(“%d”,&B); printf(“Koefisien pangkat 0 :”); scanf(“%d”,&C); if (A = = 0) { printf (“bukan pers. Kuadrat.n”) printf (“harga akar = %6.3f”,-CB) }else{ mulai A,B,C Disk = B2 -4 A C Disk ? ‘Akar imajiner’ selesai x1 = -B+ disk 2A X2 = -B- disk 2A x1 = -B 2A x2 = x1
  • 7. disk :=B*B – 4*A*C: if disk > 0 then begin x1 := -B+sqrt(disk)/(2*A) x2 := -B-sqrt(disk)/(2*A) writlen(diskriminan : disk) writlen(x1 = ‘,x1:1:1); writlen(x2 = ‘,x1:1:1); end else if disk – 0 then begin x1 := -B / (2*A) x2 := x1 ; writlen(diskriminan : 0’) writlen(x1 = ‘,x1:1:1); writlen(x2 = ‘,x2:1:1); end else writeln(‘akar imajiner’) end end Disk = B*B - 4*A*C: if disk > 0 { x1 := -B+sqrt(disk)/(2*A) x2 := -B-sqrt(disk)/(2*A) print (“diksriminan =%Idn”,disk) printf (x1 = %6.3fn”,x1) printf (x2 = %6.3fn”,x2) } else if (disk = = 0) { x1 := -B / (2*A) x2 := x1 ; printf(diskriminan : 0n’) printf (x1 = %6.3fn”,x1) printf (x2 = %6.3fn”,x2) } else writeln(‘akar imajiner’) { Retrun 0 : { Output : Kasus 3.4 Konversikan nilai angka menjadi nilai huruf dengan ketentuan sebagai berikut : Nilai Angka Nilai huruf 0 – 20 E 21 – 40 D 41 – 60 C 61 – 80 B 81 – 100 A Alogaritma Alogaritma Konversi_Nilai {Mengkonversikan nilai angka menjadi nilai huruf} Deklarasi Nilai : integer Nilai_huruf : char Koefisien pangkat 2 : 1 Koefisien pangkat 1 : -1 Koefisien pangkat 0 : -20 Diskriminan = 81 x1 = 5.5 x2 = -3.5 Deksripsi Read (nilai) If (nilai > 0) and ( nilai <=20) then nilai_huruf ← ‘E’ else (nilai > 20) and ( nilai <=40) then nilai_huruf ← ‘D’ else (nilai > 40) and ( nilai <=60) then nilai_huruf ← ‘C’ else (nilai > 60) and ( nilai <=80) then nilai_huruf ← ‘B’ else nilai_huruf ← ‘ A ‘ write (nilai_huruf)
  • 8. Flow Chart 3.4 T F T F T F T F mulai nilai Nilai > 0 And nilai <=20? Nilai > 60 And nilai <=80? Nilai > 40 And nilai <=60? Nilai > 20 And nilai <=40? nilai_huruf ‘ A ‘ nilai_huruf selesai nilai_huruf ← ‘E’ nilai_huruf ← ‘E’ nilai_huruf ← ‘E’ nilai_huruf ← ‘E’
  • 9. Tranlasi 3.4 Bahasa Pascal Bahasa C Program Kon versi_Nilai Uses wincrt Var nilai : interger nilai_ huruf : char ; begin write (‘masukkan nilai angka + ‘): readln (nilai) if (niali > 0) and (nilai < + 20) then nilai_huruf :=’E’ else if ( nilai >20) and (nilai < + 40) then nilai_huruf :=’D” else if (niali>40) and ( niali < + 60) then nilai_huruf := ‘C’ else if ( nilai>60) and ( nilai < = 80 ) then nilai_huruf := ‘B’ else nilai_huruf :=’A’; writeln (‘Nilai huruf =’,nilai_huruf; end. #include <stdio.h> Main( ) { Int nilai: Char nilai_huruf; Printf (“Masukkan nilai angka = “); Scanf (“%d”,&nilai); If (( nilai > 0) && (nilai < = 20)) Nilai_huruf = ‘E’; Else if (( nilai > 20 ) && ( nilai < = 40)) Nilai_huruf = ‘D’; Else if (( nilai > 40 ) && ( nilai < = 60)) Nilai_huruf = ‘C’; Else if (( nilai > 60 ) && (nilai < = 80)) Nilai_huruf = ‘B’; Else nilai_huruf = ‘A’; Print(“Nilai huruf = %c”,nilai_huruf); Return o ;
  • 10. Tranlasi 3.4 Bahasa Pascal Bahasa C Program Kon versi_Nilai Uses wincrt Var nilai : interger nilai_ huruf : char ; begin write (‘masukkan nilai angka + ‘): readln (nilai) if (niali > 0) and (nilai < + 20) then nilai_huruf :=’E’ else if ( nilai >20) and (nilai < + 40) then nilai_huruf :=’D” else if (niali>40) and ( niali < + 60) then nilai_huruf := ‘C’ else if ( nilai>60) and ( nilai < = 80 ) then nilai_huruf := ‘B’ else nilai_huruf :=’A’; writeln (‘Nilai huruf =’,nilai_huruf; end. #include <stdio.h> Main( ) { Int nilai: Char nilai_huruf; Printf (“Masukkan nilai angka = “); Scanf (“%d”,&nilai); If (( nilai > 0) && (nilai < = 20)) Nilai_huruf = ‘E’; Else if (( nilai > 20 ) && ( nilai < = 40)) Nilai_huruf = ‘D’; Else if (( nilai > 40 ) && ( nilai < = 60)) Nilai_huruf = ‘C’; Else if (( nilai > 60 ) && (nilai < = 80)) Nilai_huruf = ‘B’; Else nilai_huruf = ‘A’; Print(“Nilai huruf = %c”,nilai_huruf); Return o ;