A untuk Alas
T untuk Tinggi, dan
L untuk Luas
Soal-5.
Susun algoritma yang ditulis dalam
Bahasa C++, untuk menginput alas
dan tinggi sebuah segitiga, kemudian
mencetak luas segitiga tersebut.
7
5
cin 7 5 17.5 cout
17.5
A T L
A untuk Alas
T untuk Tinggi, dan
L untuk Luas
harus
Rumus menghitung
Luas sebuah Segitiga
Kadang-kadang :
Lebih sulit : Mencari ,
memahami dan
menggunakan
Rumus, dibandingkan menulis algoritma
dapat ditulis setelah
Alas Tinggi
7 5
17.5
Luas
Algoritma yang
ditulis dalam
suatu Bahasa
Pemrograman
disebut PROGRAM
Cara-1 C++ Program Flowchart
#include <iostream.h> START
void main()
{ float A, T, L; cin A
cin A,T
Cara-1 C++
#include <iostream.h>
void main()
{ float A, T, L; 7
cin >> A; 5
17.5
cin >> T;
L = A * T / 2;
cout << L;
}
Karena ada kemungkinan
Menulis program,
mengandung nilai memerlukan
pecahan, maka digunakan pengtahuan mengenai :
tipe data :
BAHASA
float yang digunakan
Floating point Single Precission
Cara-1 C++
#include <iostream.h>
void main()
{ float A, T, L; 12
cin >> A; 6
30
cin >> T;
L = A * T / 2;
cout << L;
}
Walaupun tipe
data : float
Tapi tercetak
bukan : 30.0
Cara-1 C++
#include <iostream.h>
void main()
{ int A, T, L; 7
cin >> A; 5
17
cin >> T;
L = A * T / 2;
cout << L;
} 7 * 5 = 35
35 / 2 = 17
Bagaimana bila
menggunakan tipe
Bukan : 17.5
data : int
integer
#include <iostream.h>
void main()
Alas : 7
{ float A,T, L;
Tinggi : 5
cout << " Alas : " ; cin >> A;
Luas : 17.5
cout << " Tinggi : " ; cin >> T;
L = A * T / 2;
cout << " Luas : " << L;
}
40
Rumus konversi
derajat Celcius
ke derajat Fahrenheit
Draf
KONSEP penyelesaian
Celcius Fahrenheit
F = 9/5 * C + 32
40 104
C F
xxxx J jj
72 0 1 12
150 0 2 30
1000 0 16 40
3600 1 0 0
3605 1 0 5
7425 ? ? ?
7425 J ?
cin 7425 M ? cout
? ? ?
Detik
D
?
J untuk Jam
M untuk Menit, dan
D untuk Detik
harus
1 Jam = 60 Menit
1 Menit = 60 Detik
1 Jam = 3600 Detik
Draf
KONSEP 3600 / 7425 \ 2
penyelesaian Belum Rinci
7200
60 / 225 \ 3 Harus dijelaskan
180 dari mana
Didapat :
45 mendapatkan
7425 Detik
nilai 7200
adalah :
2 Jam
3 Menit
45 Detik
3600 / 7425 \ 2
2 * 3600 = 7200
60 / 225 \ 3
3 * 60 = 180
45
Draf
KONSEP Didapat :
penyelesaian 7425 / 3600 = 2 sisa 225 2 Jam
3 Menit
225 / 60 = 3 sisa 45
45 Detik
LENGKAP
dan
Tidak rinci, darimana
RINCI mendapatkan nilai sisa
INI
KONSEP 7425 / 3600 = 2 INI
BERPIKIR 2 * 3600 = 7200 YANG
YANG DITUANGKAN
7425 – 7200 = 225 MENJADI
ORSINIL
MILIK 225 / 60 = 3 ALGORITMA
SEMUA 3 * 60 = 180
ORANG Didapat :
225 – 180 = 45
2 Jam
3 Menit
45 Detik
7425 / 3600 = 2
2 * 3600 = 7200
7425 – 7200 = 225
225 / 60 = 3
3 * 60 = 180
225 – 180 = 45
3 * 60
225 - 180 180
Kerangka
berpikir, bila
setiap nilai
45
disimpan dalam
sebuah variabel
Detik J
J = Detik / 3600
7425 2
1
2 X = J * 3600
Y = Detik - X
7200 X
Ada 6 langkah
3
1. J = Detik / 3600
M = Y / 60
225 3 M 2. X = J * 3600
Y
4 3. Y = Detik – X
4. M = Y / 60
5 Z = M * 60
5. Z = M * 60
D=Y-Z 6. D=Y-Z
180 Z
6
45 D
Sesuai dengan
kaidah penulisan
algoritma
Detik J Detik J
J = Detik / 3600 J = Detik / 3600
7425 2 7425 2
1 1
2 X = J * 3600
45 D 45 D
Y = Detik – J * 3600
2 2 M = ( Detik – J * 3600 ) / 60
M
M = Y / 60
225 3 3
Y M
3
D = Y – M * 60 3 D = ( Derik – J * 3600 ) – M * 60
4
45 D 45 D
#include<iostream.h>
void main()
{ int Detik, J, M, D;
2 M = ( Detik – J * 3600 ) / 60
cout << "Detik : " ;
3
cin >> Detik;
M
1 J = Detik / 3600;
2 M = (Detik - J*3600 )/ 60;
3 D = ( Detik - J* 3600 ) - M*60;
3 D = ( Derik – J * 3600 ) – M * 60
cout << J << " Jam ";
cout << M << " Menit ";
45 D cout << D << " Detik " ;
}
7425 / 3600 = 2
Bahasa
7425 / 3600 sisa 225 pemrograman
menyediakan
225/ 60 = 3 instruksi untuk
225 / 60 sisa 45 menghitung
sisa pembagian
7425 / 3600 = 2
7425 / 3600 sisa 225
225/ 60 = 3
225 / 60 sisa 45
% Adalah
7425 / 3600 = 2 operator
7425 % 3600 = 225 modulus (sisa
pembagian)
225 / 60 = 3
225 % 60 = 45
7425 / 3600 = 2
7425 % 3600 = 225
225 / 60 = 3
225 % 60 = 45
7425 / 3600
7425 / 3600 = 2 7425 2
7425 % 3600 = 225
7425 % 3600
225 / 60 = 3
225 % 60 = 45 225 / 60
225 3
225 % 60
45
Kerangka
berpikir, bila
setiap nilai
disimpan dalam
sebuah variabel
Detik J
7425 / 3600 J = Detik / 3600
7425 2 7425 2
225 / 60 M = X / 60
225 3 X 225 3 M
225 % 60 D = X % 60
45 45 D
Detik J
J = Detik / 3600
7425 2
1. J = Detik / 3600
X = Detik % 3600
2. X = Detik % 3600
M = X / 60 3. M = X / 60
X 225 3 M
4. D = X % 60
D = X % 60
45 D
Sesuai dengan
kaidah penulisan
algoritma
Detik J Detik J
J = Detik / 3600 J = Detik / 3600
7425 2 7425 2
1 1
X = Detik % 3600
2
2
M = (Detik % 3600 ) / 60
M = X / 60
X 225 3 M 3 3 M
3
4 D = X % 60 D = Detik % 3600 ) % 60
45 D 45 D
4 langkah 3 langkah
Detik J
#include<iostream.h>
J = Detik / 3600 void main()
7425 2
1 { int Detik, J, M, D, X;
cout << "Detik : " ;
2 X = Detik % 3600
cin >> Detik;
M = X / 60 J = Detik / 3600;
X 225 3 M X = Detik % 3600;
3 M = X / 60;
4 D = X % 60 D = X % 60;
cout << J << " Jam ";
45 D cout << M << " Menit ";
cout << D << " Detik " ;
}
4 langkah
Detik J
#include<iostream.h>
J = Detik / 3600
7425 2 void main()
1 { int Detik, J, M, D;
2 cout << "Detik : " ;
M = (Detik % 3600 ) / 60 cin >> Detik;
J = Detik / 3600;
3 3 M M = ( Detik % 300 ) / 60;
D = ( Detik % 3600 ) % 60;
D = Detik % 3600 ) % 60 cout << J << " Jam ";
cout << M << " Menit ";
45 D cout << D << " Detik " ;
}
3 langkah
#include<iostream.h>
void main() #include<iostream.h>
{ int Detik, J, M, D, X; void main()
cout << "Detik : " ; { int Detik, J, M, D;
cin >> Detik; cout << "Detik : " ;
J = Detik / 3600; cin >> Detik;
X = Detik % 3600; J = Detik / 3600;
M = X / 60; M = ( Detik % 300 ) / 60;
D = X % 60; D = ( Detik % 3600 ) % 60;
cout << J << " Jam "; cout << J << " Jam ";
cout << M << " Menit "; cout << M << " Menit ";
cout << D << " Detik " ; cout << D << " Detik " ;
} }