TUGAS PRAKTEK PEMROGRAMAN
DENGAN BAHASA C++
Disusun Dalam Rangka Pelaksanaan
Tugas Praktikum Lab Algoritma
dan Struktur Data
Kelompok 3
1. Maureen Tauriska O, M ( 2008140511 )
2. Farizi Ilham ( 2008140348 )
3. Dwi Martono ( 2008140375 )
4. Fajar Dwi Rahayu ( 2008140363 )
FAKULTAS TEKNIK INFORMATIKA
UNIVERSITAS PAMULANG
Jalan Surya Kencana No.1 Pamulang, Tangerrang, Banten
Telp. 0217412566
Lab Algoritma dan Pemrograman
Menghitung konversi suhu.dari Celcius menjadi Reamur dan Farenheit.
[tip : R = 4/5 * C dan F = 9/5 * C + 32]
1. Konversi Suhu :
Flowchart :
START
Read
suhuCel
Reamur = suhuCel * (4/5)
Fareneit = ( suhuCel *9/5) +32
Write
Reamur,
Farenheit
End
Pseucode :
ALGORITMA :
– Program mengkonversi satuan Suhu yang di inputkan melalui
keyboard dari Celcius menjadi dalam satuan Reamur dan
Farenheit.
DEKLARASI :
– SuhuCel : float
DESKRIPSI :
– Read ( suhuCel )
– Do
Reamur = suhuCel * (4/5)
Farenheit = ( suhuCel * 9/5 ) + 32
2
– Write Reamur, Farenheit,
Koding dan Output :
3
Menghitung sisi miring dari suatu segitiga siku-siku, jika diketahui panjang
sisi yang membentuk sudut siku-siku.
[tip : c2 = a2 + b2]
Jawab :
2. Menghitung besaran Sisi Miring Segitiga Siku-siku.
Flowchart :
start
Read a, b
C = sqrt ( pow(a,2) + pow (b,2)
Write c
End
Pseucode :
ALGORITMA :
– Program untuk menghitung besaran nilai Sisi Miring suatu
Segitiga Siku-siku yang mana panjang sisi-sisi yang mengapit
sisi miring nya di inputkan dari keyboard.
DEKLARASI :
– a, b : float
DESKRIPSI :
– Read ( a, b )
– Do
C = sqrt ( pow( a, 2 ) + pow( b, 2 ))
– Write ( c )
4
Koding dan Output :
5
Menentukan suatu bilangan genap atau ganjil
Jawab :
3. Menentukan Bilangan Ganjil dan Genap
Flowchart :
start
Read a
Write a
a%2 == 0
Write a Write a
‘adalah bil ‘adalah bil
genap’ ganjil’
End
Pseucode :
ALGORITMA :
– Program untuk menentukan Bilangan Ganjil dan Genap dari
data yang di inputkan melalui Keyboard.
DEKLARASI :
– a : integer
DESKRIPSI :
– Read ( a )
– Write ( a)
– If a % 2 == 0 then
Write ( ‘ a adalah bilangan genap’ )
– Else
6
Write ( ‘ a adalah bilangan ganjil’ )
– Endif
Koding dan Output :
7
Menghitung akar-akar persamaan kuadrat dengan rumus: aX2 + bX + c = 0
Jika determinan D = b2 – 4ac maka
a. Jika D < 0 maka didapat akar imajiner
b. Jika D = 0 maka X1 = X2 yang didapat dari b / 2a
c. Jika D > 0 maka ada dua akar :
X1 = (-b + √D) / (2a) X2 = (-b - √D) / (2a)
Jawab :
4. Menghitung akar akar dari suatu Persamaan
Flowchart :
8
start
Read
a,b,c
D = pow( b,2 ) – ( 4*a * c )
T F
D < 0.0
T F
X1 , X2 D==0
adalah akar
imajiner
T F
X1=X2
D>0
b/(2*a) X1=(-b + sqrt(D)) / 2*a
X2=(-b - sqrt(D)) / 2 *a
Write
X1,X2
endif
endif
endif
End
Pseucode :
ALGORITMA :
– Program mencari nilai Akar-akar dari suatu Persamaan dengan
nilai a, b, c yang di inputkan dari Keyboard.
9
DEKLARASI :
– a , b, c : float
– D : float
DESKRIPSI :
– Read ( a, b, c )
– Do D = pow(b,2) - (4 * a * c)
–
– If D < 0.0
Write X1, X2 adalah akar akar imajiner
– If D == 0.0
Write ( X1 = X2 ) ‘yaitu’
Do b / 2 *a
– If D > 0.0
Write ( X1 = )
Do ( -b + sqrt ( D )) / (2*a)
Do ( -b - sqrt ( D )) / (2*a)
– endif
10
Koding dan Output :
11
Menghitung usia berdasarkan tahun lahir (tl) dan tahun sekarang (ts)
Jawab :
5. menghitung Usia Lahir berdasarkan Tahun sekarang.
Flowchart :
start
read
yearA,
yearB
int
usiaAnda=year
B - yearA
Write
usiaAnda
End
Pseucode :
ALGORITMA :
– Program menghitung usia berdasarkan tahun lahir ( tl ) dan
tahun sekarang ( ts ).
DEKLARASI :
– yearA : int
– yearB : int
– usiaAnda : int
DESKRIPSI :
– Start
– Read ( yearA, yearB )
– Do usiaAnda = yearB – yearA
– Write usiaAnda
12
– End
Koding dan Output :
13
Menghitung rata-rata 5 bilangan
Jawab :
6. menghitung rata- rata dari 5 inputan data
Flowchart : .
start
Read
bil
Rata = 0
I=1
I<6
Write i
I ++
hasil = rata /
(i - 1)
Write
hasil
End
14
Pseucode :
ALGORITMA ;
– Program untuk menghitung nilai rata- rata dari 5 inputan
data.
DEKLARASI :
– Bil : float
– Rata : float
– Hasil : float
– I : int
DESKRIPSI :
– start
– Read ( bil )
– For i ←1 to 6 Do
Write ( i )
– endfor
– do hasil = rata / (i - 1)
– write hasil
– end
15
Koding dan Output :
16
Mengkonversi nilai angka ke huruf
Nilai angka Nilai huruf
80.0 - 100 A
65.0 - 79.9 B
55.0 – 64.9 C
45.0 – 54.9 D
0 – 44.9 E
7. program untuk menyeleksi nilai menjadi character
flowchart :
17
start
Read
nilaiA
80<nilaiA
<100
65<nilai
Write A<80
nilaiH=A
Write
nilaiH=B 55<nilai
A<65
Write
nilaiH=C 45<nilai
A<55
Write
nilaiH=D 0<nilai
A<45
Write
nilaiH=E
End
18
Pseucode :
ALGORITMA :
– Program untuk menyeleksi nilai yang di inputkan dari
Keyboard kemudian mengkonversikannya ke dalam bentuk
karakter ( huruf ).
DEKLARASI ;
– nilaiA = float
– nilaiH = char
DESKRIPSI :
– Read ( nilaiA )
– If nilaiA >= 80 && nilaiA <=100 do
Write ( A )
– Else If nilaiA >= 65 && nilaiA <=80 do
Write ( B )
– Else if nilaiA >=55.0 && nilaiA <=65.0 do
Write ( C )
– Else if nilaiA >= 45.5 && nilaiA <= 55.0 do
Write ( D )
– Else if nilaiA >0.0 && nilaiA <= 45.0 do
Write ( E )
– Endif
19
Koding dan Output :
20
Perhitungan diskon belanjaan, dengan :
a. Input :
Jumlah belanjaan = N;
Belanjaan 1 = harga diinputkan oleh user
Belanjaan 2 = harga diinputkan oleh user :
.
.
.
Belanjaan N = harga diinputkan oleh user
b. Output :
i. Total yang harus dibayarkan sebelum mendapatkan diskon
ii. Diskon :
Jika total > 50000 diskon 5%
Jika total > 100000 diskon 10%
Jika total > 120000 diskon 15%
iii. Total yang harus dibayarkan setelah mendapatkan diskon
8. program menghitung total pembayaran dengan kriteria diskon tertentu
Flowchart :
21
start
Read i
Y=1; y<I;
y++
Total >
Total = 0 120000
Read total
Total >
100000
Total = total
+ harga
Total >
50000
y++
bayar = (total *
(1 - (disc / 100)))
Write
bayar
End
22
Pseucode :
ALGORITMA :
– Program menghitung total pembayaran suatu belanjaan
sebelum dan sesudah mendapat diskon dengan criteria
tertentu.
DEKLARASI :
– i, y : integer
– harga, total, disc, bayar : float
DESKRIPSI :
– start
– Read ( i )
– For y ← 1 to i do
Write ( y )
– Read ( harga ) do
total = total + harga
– endfor
– If ( total > 120000 ) do
Disc = 15
– Else if ( total > 100000 ) do
Disc = 10
– Else if ( total > 50000 ) do
Disc = 5
– Do bayar = (total * (1 - (disc / 100)))
– Write ( bayar )
– end
23
Koding dan Output :
24
25