3. Soal-8.
Susun algoritma yang ditulis dalam
Bahasa C++, untuk menginput dua
buah bilangan dan mencetak salah
satu bilangan yang nilainya terbesar
7
7
5
7 5
A B
cin cout
5. KONSEP penyelesaian
Draf
Misal yang diinput nilai : 7 dan 5
7 + 5 = 12
7 – 5 = 2 | 2 | = 2
12 + 2 = 14 14 / 2 = 7
7 terbesar
Misal yang diinput nilai : 4 dan 9
4 + 9 = 13
4 – 9 = - 5 | - 5 | = 5
13 + 5 = 18 18 / 2 = 9
9 terbesar
MENCARI YANG TERBESAR
6. KONSEP penyelesaian
Draf
Misal yang diinput nilai : 7 dan 5
7 + 5 = 12
7 – 5 = 2 | 2 | = 2
12 - 2 = 10 10 / 2 = 5
5 terkecil
Misal yang diinput nilai : 4 dan 9
4 + 9 = 13
4 – 9 = - 5 | - 5 | = 5
13 - 5 = 8 8 / 2 = 4
4 terkecil
MENCARI YANG TERKECIL
7. KONSEP penyelesaian
Draf
MENCARI YANG TERBESAR
5A
9B
14
- 4 4
C
D E
C=A + B
D=A - B
E = abs(D)
18
F
F = C+E
9G
G = F / 2
terbesar
2
1
3
4
5
1
2
3
4
5
C = A + B
D = A – B
E = abs( D )
F = C + E
G = F / 2
8. 5A
9B
14
- 4 4
C
D E
C = A + B
D = A - B E = abs(D)
18
F
F = C+E
9G
G = F / 2
terbesar
5A
9B
14
4
C
E
C = A + B
E = abs( A – B )
9
G
G = ( C+E ) / 2
terbesar
disingkat
copy dari halaman sebelumnya
2
1
3
4
5
2
1
3
1
2
3
4
5
C = A + B
D = A – B
E = abs( D )
F = C + E
G = F / 2
1
2
3
C = A + B
E = abs( A-B )
G = (C+E) / 2
9. 5A
9B
14
4
C
E
C = A + B
E = abs( A – B )
9
G
G = ( C+E ) / 2
terbesar
5A
9B
9
G
G = ( (A+B) + abs( A – B ) ) / 2
terbesar
disingkat
copy dari halaman sebelumnya
1
2
3
C = A + B
E = abs( A-B )
G = (C+E) / 2
1 G = ( (A+B) + abs( A – B ) ) / 2
11. 5A
9B
14
- 4 4
C
D E
C = A + B
D = A - B E = abs(D)
18
F
F = C+E
9G
G = F / 2
terbesar
2
1
3
4
5
1
2
3
4
5
C = A + B
D = A – B
E = abs( D )
F = C + E
G = F / 2
#include <iostream.h>
#include<math.h>
void main()
{ int A,B,C,D,E,F,G;
cin >> A >> B;
C = A + B;
D = A – B;
E = abs( D );
F = C + E;
G = F / 2;
cout << G;
}
Karena menggunakan
fungsi matematik abs( )
maka file math.h yang
mengandung fungsi abs( )
harus di-include-kan
12. 5A
9B
14
4
C
E
C = A + B
E = abs( A – B )
9
G
G = ( C+E ) / 2
terbesar
1
2
3
C = A + B
E = abs( A-B )
G = (C+E) / 2#include <iostream.h>
#include<math.h>
void main()
{ int A,B,C,E,G;
cin >> A >> B;
C = A + B;
E = abs( A - B );
G = ( C + E ) / 2;
cout << G;
}
2
1
3
13. 5A
9B
9
G
G = ( (A+B) + abs( A – B ) ) / 2
terbesar
G = ( (A+B) + abs( A – B ) ) / 2
#include <iostream.h>
#include<math.h>
void main()
{ int A,B,G;
cin >> A >> B;
G = ( (A+B) + abs( A – B ) ) / 2;
cout << G;
}
14. #include <iostream.h>
#include<math.h>
void main()
{ int A,B,C,D,E,F,G;
cin >> A >> B;
C = A + B;
D = A – B;
E = abs( D );
F = C + E;
G = F / 2;
cout << G;
}
#include <iostream.h>
#include<math.h>
void main()
{ int A,B,C,E,G;
cin >> A >> B;
C = A + B;
E = abs( A - B );
G = ( C + E ) / 2;
cout << G;
}
#include <iostream.h>
#include<math.h>
void main()
{ int A,B,G;
cin >> A >> B;
G = ( (A+B) + abs( A – B ) ) / 2;
cout << G;
}
21. Syntax Penulisan if statement:
if( condition )
Condition : adalah ungkapan atau pernyataan (expression)
yang mengandung nilai TRUE (benar) atau
FALSE (salah).
Contoh : 5 > 2 bernilai TRUE
5 > 9 bernilai FALSE
5 == 5 bernilai TRUE
Tanda : > dan == diatas
disebut Relational Operator
(Operator Hubungan)
22. Relational Operator
yang digunakan dalam Bahasa C/C++ dan Java
== Equal To (Sama Dengan)
> Greater Than (Lebih Besar Dari)
< Less Than (Lebih Kecil Dari)
>= Greater Than Or Equal To
(Lebih Besar Dari Atau Sama Dengan)
<= Less Than Or Equal To
(Lebih Kecil Dari atau Sama Dengan)
!= Not Equal To ( Tidak Sama Dengan)
24. 5 == 2 F
5 > 2 T
5 < 2 F
5 >= 2 T
5 <= 2 F
5 >= 5 T
5 <= 5 T
5 != 2 T
5 != 5 F
5 < 7 T
5 <= 7 T
5 >= 7 F
25. (A == B)
(A > B)
(A < B)
(A >= B)
(A <= B)
(A != B)
condition
akan
bernilai
F
F
T
F
T
T
T = TRUE
F = FALSE
(A == B)
(A > B)
(A < B)
(A >= B)
(A <= B)
(A != B)
condition
akan
bernilai
F
T
F
T
F
T
(A == B)
(A > B)
(A < B)
(A >= B)
(A <= B)
(A != B)
condition
akan
bernilai
T
F
F
T
T
F
5
A
7
B
9
A
7
B
7
A
7
B
26.
27.
28.
29.
30. if ( cond )
{ -
-
-
-
-
}
-
-
-
statements-true
next instruction
Flowchart
Bentuk Umum - 1
biasa disebut : Bentuk IF-THEN
cond
-
-
-
-
-
-
statements-
true
-
-
-
-
next instruction
TRUE
Cara-Kerja
Bila nilai cond
- TRUE, maka kerjakan semua instruksi yang ada dalam statements-true
Setelah selesai, lanjutkan ke next-instruction
- FALSE, maka langsung ‘meloncat’ mengerjakan isnstruksi yang ada di
next-instruction
37. Beberapa contoh penulisan / penggunaan if(cond) bentuk IF-THEN-ELSE
3. int A=5, B=7;
if(A<B)
{ cout << “Jakarta” ; }
else
{ cout << “Bandung” ; }
cout << “nSelesai”);
Akan tercetak : Jakarta
Selesai
4.
int A=5, B=7;
if(A<B){cout << “Jakarta” ; }
else {cout << “Bandung” ;}
cout << “nSelesai” ;
Akan tercetak : Jakarta
Selesai
1.
int A=5, B=7;
if(A<B)
{
cout << “Jakarta” ;
}
else
{
cout << “Bandung” ;
}
cout << “nSelesai” ;
Akan tercetak : Jakarta
Selesai
2. int A=5, B=7;
if(A<B)
{cout << “Jakarta” ;
}
else
{cout << “Bandung” ;
}
cout << “nSelesai” ;
Akan tercetak : Jakarta
Selesai
38. Soal Susun program dalam bahasa C++
untuk menginput 2 (dua) buah
bilangan bulat, kemudian mencetak
salah satu bilangan yang nilainya
terbesar.
39. Soal-9
Susun program dalam bahasa C++
untuk menginput 2 (dua) buah bilangan bulat,
kemudian mencetak salah satu bilangan yang
nilainya terbesar.
A
25 5
cin cout
5
2
B
MISAL NILAI YANG DIINPUT ADALAH 5 DAN 2
40. Read(A)
Read(B)
IF A > B then
Write(A)
Else
Write(B)
End If
START
Read
Read
write
END
A
B
AB
A > B
False True
Write
Algoritma Dasar
41. #include <iostream.h>
void main()
{ int A, B;
cin >> A;
cin >> B;
if (A > B)
{ cout << A;
}
else
{ cout << B;
}
}
Cara-1
START
input
input
ptint
END
A
B
AB
A > B
False True
print
A BA B
Algoritma dalam Bahasa C++
43. if (A > B)
{ cout << A; }
else
{ cout << B; }
}
if (A > B)
cout << A;
else
cout << B;
}
if (A > B) cout << A;
else cout << B;
#include <iostream.h>
void main()
{ int A, B;
cin >> A;
cin >> B;
if (A > B)
{ cout << A; }
else
{ cout << B; }
}
if (A > B) cout << A; else cout << B;
44. if (A > B)
cout << A ;
else
cout << B ;
if (A < B)
cout << ….. ;
else
cout << ….. ;
if (B > A)
cout << …... ;
else
cout << …... ;
if (B < A)
cout << …... ;
else
cout << …... ;
45. if (A > B)
cout << A ;
else
cout << B ;
if (A < B)
cout << B ;
else
cout << A ;
if (B > A)
cout << B ;
else
cout << A ;
if (B < A)
cout << A ;
else
cout << B ;
TEKNIK
DASAR
46.
47. Cara-2
input
input
print
A
B
MAX
A > B
false true
MAX = AMAX = B
#include <iostream.h>
void main()
{ int A, B, MAX;
cin >> A;
cin >> B;
if (A > B)
{ MAX = A; }
else
{ MAX = B; }
cout << MAX;
}
TEKNIK
DASAR
49. Cara-3
input
input
print
A
B
MAX
A > B
true
MAX = A
MAX = B
#include <iostream.h>
void main()
{ int A, B, MAX;
cin >> A;
cin >> B;
MAX = B;
if (A > B)
{ MAX = A; }
cout << MAX;
}
TEKNIK
DASAR
51. Cara-4 START
input
input
print
END
A
A
MAX
A>MAX
False
True
MAX = A
MAX = A
TEKNIK
DASAR#include <iostream.h>
void main()
{ int A, MAX;
cin >> A;
MAX = A
cin >> A;
if (A > MAX)
{ MAX = A; }
cout << MAX;
}
A MAX
Hanya ada 2 variabel.
A spesial menampung input,
MAX spesial menampung nilai
terbesar
Teknik
inilah yang
mendasari
algoritma untuk
mencari nilai
yang terbesar
atau terkecil dari
sejumlah nilai
yang diinput
52.
53. Urutan pelaksanaan :
1) int A,MAX;
2) cin >> A;
3) MAX = A;
4) cin A;
5) if (A>max)
MAX = A;
6) cut << MAX;
A MAX
5
5
2
5
5
2 5
5
misal nilai yang
diinput adalah
5 dan 2
54. A
misal nilai yang
diinput adalah
5 dan 9
A MAX
5
5
9
9
5
9 5
9
Urutan pelaksanaan :
1) int A,MAX;
2) cin >> A;
3) MAX = A;
4) cin A;
5) if (A>max)
MAX = A;
6) cut << MAX;
55.
56. Soal
Susun program untuk menginput 3
(tiga) buah bilangan bulat, (dianggap
ketiga buah bilangan tersebut nilainya
tidak sama satu dengan yang lain),
kemudian mencetak salah satu
bilangan yang nilainya terbesar.
57.
58.
59. Soal Susun program untuk menginput 3 (tiga) buah
bilangan bulat, (dianggap ketiga buah bilangan
tersebut nilainya tidak sama satu dengan yang lain),
kemudian mencetak salah satu bilangan yang
nilainya terbesar.
BA
175 17
KEYBOARD
SCREEN
cin
MEMORY
cout
5
8
17
8
C
64. START
input
input
A
B
?
False True
input C
A B C
Menggunakan 3 variabel
Apa yang dibandingkan
untuk pertama kali :
A dengan B
B dengan A
A dengan C
C dengan A
B dengan C
C dengan B
65. A B C
Menggunakan 3 variabel
B > A
B < A
B > C
B < C
A > B
A < B
A > C
A < C
C > A
C < A
C > B
C < B
Pilih yang mudah
START
input
input
A
B
?
False True
input C
66. A B C
Menggunakan 3 variabel
START
input
input
A
B
A > B
False True
input C
A BA B
67. A B C
Menggunakan 3 variabel
START
input
input
A
B
A > B
False True
input C
A B
Mencetak
atau
masih
membandingkan
?
A B
68. A B C
Menggunakan 3 variabel
A > C
C > A
B > C
C > B
START
input
input
A
B
A > B
False True
input C
A B
TrueFalse
?
A B
Pilih yang
mana
?
69. A B C
Menggunakan 3 variabel
A > C
C > A
B > C
C > B
START
input
input
A
B
A > B
False True
input C
A B
TrueFalse
?
A B
Pilih yang mana saja
tidak mendatangkan
error. Hanya saja
secara logika, mana
yang tepat untuk
dipilih
70. A B C
Menggunakan 3 variabel
A > C
C > A
B > C
C > B
START
input
input
A
B
A > B
False True
input C
A B
Dari ilustrasi
ini terlihat
jelas bahwa A
yang harus
dibandingkan
dengan C
untuk mencari
nilai yang
terbesarA B A B
TrueFalse
?
71. A B C
Menggunakan 3 variabel
START
input
input
A
B
A > B
False True
input C
A BA B
TrueFalse
A > C
Mencetak
atau
masih
membandingkan
?
72. A B C
Menggunakan 3 variabel
START
input
input
A
B
A > B
False True
input C
A BA B
TrueFalse
A > C
Mencetak
atau
masih
membandingkan
?
A B C A B C
atau
Kondisi bila
A > C true
73. A B C
Menggunakan 3 variabel
START
input
input
A
B
A > B
False True
input C
A BA B
TrueFalse
A > C
Bisakah diambil
kesimpulan
bahwa A yang
terbesar
?
A B C A B C
atau
Kondisi bila
A > C true
74. A B C
Menggunakan 3 variabel
START
input
input
A
B
A > B
False True
input C
A BA B
A B C A B C
atau
TrueFalse
A > C
75. A B C
Menggunakan 3 variabel
START
input
input
A
B
A > B
False True
input C
A BA B
TrueFalse
A > C
print A
A B C A B C
atau
Kondisi bila
A > C true
76. A B C
Menggunakan 3 variabel
START
input
input
A
B
A > B
False True
input C
A BA B
TrueFalse
A > C
print A
77. A B C
Menggunakan 3 variabel
START
input
input
A
B
A > B
False True
input C
A BA B
TrueFalse
A > C
print A
Perlukah
membandingkan
B dengan C disini
?
Atau
Dapatkah diambil
kesimpulan bahwa
C adalah yang
terbesar
78. A B C
Menggunakan 3 variabel
START
input
input
A
B
A > B
False True
input C
A BA B
TrueFalse
A > C
print A
Perlukah
membandingkan
B dengan C disini
?
A B C
Atau
Dapatkah diambil
kesimpulan bahwa
C adalah yang
terbesar
Kondisi bila
A > C False
Bila A > C False
artinya
A < C
Atau C > A
79. A B C
Menggunakan 3 variabel
START
input
input
A
B
A > B
False True
input C
A BA B
TrueFalse
A > C
print A
Perlukah
membandingkan
B dengan C disini
?
A B C
Atau
Dapatkah diambil
kesimpulan bahwa
C adalah yang
terbesar
80. A B C
Menggunakan 3 variabel
START
input
input
A
B
A > B
False True
input C
A BA B
A B C A B C
atau
TrueFalse
A > C
print A
Perlukah
membandingkan
B dengan C disini
?
A B C
Atau
Dapatkah diambil
kesimpulan bahwa
C adalah yang
terbesar
81. A B C
Menggunakan 3 variabel
START
input
scanf
A
B
A > B
False True
input C
A BA B
A B C A B C
atau
TrueFalse
A > C
print Aprint C
A B C
82. A B C
Menggunakan 3 variabel
START
input
input
A
B
A > B
False True
input C
A BA B
A B C A B C
atau
TrueFalse
A > C
print AB > CA B C
Pasti
Kesini
Tidak
Pernah
kesini
B > C pasti False
Membandingkan sesuatu yang pasti
False atau True adalah pekerjaan
yang tidak bermanfaat
Pasti
False
83. A B C
Menggunakan 3 variabel
START
input
input
A
B
A > B
False True
input C
A BA B
A B C A B C
atau
TrueFalse
A > C
print Aprint C
A B C
85. START
input
input
A
B
A > B
False True
input C
A BA B
A B C A B C
atau
TrueFalse
A > C
print Aprint C
Mencetak
atau
masih
membandingkan
?
86. START
input
input
A
B
A > B
False True
input C
A BA B
A B C A B C
atau
TrueFalse
A > C
print Aprint C
TrueFalse
?
A > C
C > A
B > C
C > B
87. START
input
input
A
B
A > B
False True
input C
A BA B
A B C A B C
atau
TrueFalse
A > C
print Aprint C
TrueFalse
B > C
B yang besar,
jadi B yang
dibandingkan
dengan C
90. START
input
input
A
B
A > B
False True
input C
A BA B
A B C A B C
atau
TrueFalse
A > C
print Aprint C
TrueFalse
B > C
print Bprint C
A B C
91. START
input
input
A
B
A > B
False True
input C
A BA B
A B C A B C
atau
TrueFalse
A > C
print Aprint C
TrueFalse
B > C
print Bprint C
A B C
92. START
input
input f
A
B
A > B
False True
input C
A BA B
A B C A B C
atau
TrueFalse
A > C
print Aprint C
TrueFalse
B > C
print Bprint C
A B C
93. A > B
False True A BA B
A B C A B C
atau
TrueFalse
A > C
print Aprint C
TrueFalse
B > C
print Bprint C
A B C A B CA B C A B C
atau
94.
95. #include <iostream.h>
void main()
{
int A,B,C;
cin >> A;
cin >> B);
cin >> C);
if(A > B)
{
if(A > C)
cout << A ;
else
cout << C ;
}
else
{
if(B > C)
cout << B ;
else
cout << C ;
}
}
Cara-1
START
input
input
print
END
A
B
print
A > B
false true
input C
A > CB > C
printprint
truetruefalse false
ACBC
A B C
Menggunakan 3 variabel
96. #include <iostream.h>
void main()
{
int A,B,C;
cin >> A ;
cin >> B ;
cin >> C ;
if (A > B)
if (A > C)
cout << A ;
else
cout << C ;
else
if (B > C)
cout << B ;
else
cout << C);
}
Karena setiap blok instruksi hanya terdiri dari satu
instruksi, maka program diatas dapat ditulis
menjadi :
A B C
Menggunakan 3 variabel
97.
98. 5 7 9
A B C
Menggunakan 3 variabel
5 9 7
7 5 9
7 9 5
9 5 7
9 7 5
Ada 6 kemungkinan
variasi ketiga buah
nilai
99. START
input
input
A
B
A > B
False True
input C
TrueFalse
A > C
TrueFalse
B > C
1 2 3 4
5 7 9
A B C
1
Ada 4 titik , , dan
Untuk data diatas, maka flow akan menuju titik . . . . . ?
1 2 3 4
100. START
input
input
A
B
A > B
False True
input C
TrueFalse
A > C
TrueFalse
B > C
1 2 3 4
5 7 9
A B C
5 7
7 9
Untuk data diatas, maka flow akan menuju
atau berakhir pada titik : 1
101. START
input
input
A
B
A > B
False True
input C
TrueFalse
A > C
TrueFalse
B > C
1 2 3 4
5 9 7
A B C
2
Ada 4 titik , , dan
Untuk data diatas, maka flow akan menuju titik . . . . . ?
1 2 3 4
102. START
input
input
A
B
A > B
False True
input C
TrueFalse
A > C
TrueFalse
B > C
1 2 3 4
5 9 7
A B C
5 9
9 7
Untuk data diatas, maka flow akan menuju
atau berakhir pada titik : 2
103. START
input
input
A
B
A > B
False True
input C
TrueFalse
A > C
TrueFalse
B > C
1 2 3 4
7 5 9
A B C
3
Ada 4 titik , , dan
Untuk data diatas, maka flow akan menuju titik . . . . . ?
1 2 3 4
104. START
input
input
A
B
A > B
False True
input C
TrueFalse
A > C
TrueFalse
B > C
1 2 3 4
7 5 9
A B C
7 5
7 9
Untuk data diatas, maka flow akan menuju
atau berakhir pada titik : 3
105. START
input
input
A
B
A > B
False True
input C
TrueFalse
A > C
TrueFalse
B > C
1 2 3 4
7 9 5
A B C
4
Ada 4 titik , , dan
Untuk data diatas, maka flow akan menuju titik . . . . . ?
1 2 3 4
106. START
input
input
A
B
A > B
False True
input C
TrueFalse
A > C
TrueFalse
B > C
1 2 3 4
7 9 5
A B C
7 9
9 5
Untuk data diatas, maka flow akan menuju
atau berakhir pada titik : 2
107. START
input
input
A
B
A > B
False True
input C
TrueFalse
A > C
TrueFalse
B > C
1 2 3 4
9 5 7
A B C
5
Ada 4 titik , , dan
Untuk data diatas, maka flow akan menuju titik . . . . . ?
1 2 3 4
108. START
input
input
A
B
A > B
False True
input C
TrueFalse
A > C
TrueFalse
B > C
1 2 3 4
9 5 7
A B C
9 5
9 7
Untuk data diatas, maka flow akan menuju
atau berakhir pada titik : 4
109. START
input
input
A
B
A > B
False True
input C
TrueFalse
A > C
TrueFalse
B > C
1 2 3 4
9 7 5
A B C
6
Ada 4 titik , , dan
Untuk data diatas, maka flow akan menuju titik . . . . . ?
1 2 3 4
110. START
input
input
A
B
A > B
False True
input C
TrueFalse
A > C
TrueFalse
B > C
1 2 3 4
9 7 5
A B C
9 7
9 5
Untuk data diatas, maka flow akan menuju
atau berakhir pada titik : 4
111.
112. #include <iostream.h>
void main()
{
int A,B,C, MAX;
cin >> A >> B >> C;
MAX = A;
if (B > MAX)
MAX = B;
if (C > MAX)
MAX = C;
cout << MAX;
}
Cara-2
A B C MAX
Menggunakan 4 variabel
START
input
print
END
A, B, C
MAX
B > MAX
false
true
MAX = B
MAX = A
C > MAX
false
true
MAX = C
113.
114. #include <iostream.h>
void main()
{
int A,B,C, MAX;
cin >> A;
MAX = A;
cin >> B;
if (B > MAX)
MAX = B;
cin >> C;
if (C > MAX)
MAX = C;
cout << MAX;
}
input
input
printf
A
B
MAX
B > MAX
false
true
MAX = B
MAX = A
C > MAX
false
true
MAX = C
input C
Cara-3
A B C MAX
117. #include <iostream.h>
void main()
{ int A, MAX;
cin >> A;
MAX = A;
cin >> A;
if (A > MAX)
MAX = A;
cin >> A;
if (A > MAX)
MAX = A;
cout << MAX;
}
input
scanf
printf
A
A
MAX
A > MAX
false
true
MAX = A
MAX = A
A > MAX
false
true
MAX = A
input A
Algoritma ini nanti yang menjadi dasar
algoritma pencarian bilangan terbesar atau
terkecil dari sejumlah bilangan yang ada
atau bilangan yang diinput.
Cara-4
118.
119. #include <iostream.h>
void main()
{
int A,B,C;
cin >> A >> B >> C;
if (A>B && A>C) cout << A;
else
{ if (B>A && B>C) cout << B;
else
cout << C;
}
}
BA
175
17KEYBOARD
SCREEN
cin
MEMORY
cout
5
17
8
8
C
Dengan menggunakan
Logical Operator AND (&&)
Menggunakan multi conditions
dengan logical operator AND
Cara-5
120. #include <iostream.h>
void main()
{
int A,B,C;
cin >> A >> B >> C;
if (A>B && A>C)
cout << A;
else
{ if (B>A && B>C)
cout << B;
else
cout << C;
}
}
Sebenarnya disini cukup membanding-
kan B dengan C karena bila
pemeriksaan pertama if (A>B && A>C)
hasilnya FALSE
maka A sudah bukan yang terbesar,
tinggal B atau C yang terbesar
Hanya untuk keseragaman saja dibuat
lagi if (B>A && B>C), dengan cara ini
berpikirnya lebih mudah
START
input
print
END
A,B,C
printprint
true
truefalse
A
BC
A>B && A>C
B>A && B>C
B > C
Ini sebenarnya bisa diganti
cukup dengan :
121. #include <iostream.h>
void main()
{
int A,B,C;
cin >> A >> B >> C;
if (A>B && A>C)
cout << A;
else
{ if (B>C)
cout << B;
else
cout << C;
}
}
START
scanf
printf
END
A,B,C
printfprintf
true
truefalse
A
BC
A>B && A>C
B>C
122.
123. #include <iostream.h>
void main()
{
int A,B,C;
cin >> A >> B >> C;
if (A>B && A>C) cout << A;
if (B>A && B>C) cout << B;
if (C>A && C>B) cout << C;
}
BA
175
17KEYBOARD
SCREEN
cin
MEMORY
cout
5
17
8
8
C
Cara-6
Berpikir lebih praktis, tapi computer-time tidak efisien
124. #include <iostream.h>
void main()
{
int A,B,C;
cin >> A >> B >> C;
if (A>B && A>C)
cout << A;
if (B>A && B>C)
cout << B;
if (C>A && C>B)
cout << C;
}
START
input
print
END
A,B,C
true
A
A>B && A>C
B>A && B>C
print
true
B
C>A && C>B
print
true
C
125.
126. Soal
Susun program untuk menginput 4
(empat) buah bilangan bulat,
(dianggap ketiga buah bilangan
tersebut nilainya tidak sama satu
dengan yang lain), kemudian
mencetak salah satu bilangan yang
nilainya terbesar.
127. Jawab-2 Cara-1
Menggunakan 5 variabel, 4 variabel untuk input. 1 variabel
untuk MAX
Bila bilangan yang diinput adalah 5, 17, 8 dan 12,
maka tentunya akan tercetak 17
BA
175
17KEYBOARD
SCREEN
scanf
MEMORY
printf
5
17
8
12
8
C
12
D
134. START
input A, B,C, D
A>B
A>C
A>DC>D
B>C
B>DC>D
5 8 12 17
A B C D
1 2 3 4 5 6 7 8
Untuk nilai yang diinput seperti diatas,
Maka flow akan menuju nomor : ………
135. Soal
Susun program untuk menginput 100
(seratus) buah bilangan bulat,
(dianggap ketiga buah bilangan
tersebut nilainya tidak sama satu
dengan yang lain), kemudian
mencetak salah satu bilangan yang
nilainya terbesar.
151. Jawab Soal-11 Cara-2
Menggunakan 2 variabel,
variabel : A khusus untuk menampung input
variabel : B khusus untuk menampung nilai terbesar
Bila bilangan yang diinput adalah 5, 17, 8 dan 12,
maka tentunya akan tercetak 17
AKEYBOARD
SCREEN
cin A
MEMORY
cout MAX
5
17
8
12
17
MAX
156. #include <iostream.h>
void main()
{ int A, MAX;
cin >> A;
MAX = A;
cin >> A;
if (A > MAX)
MAX = A;
cin >> A;
if (A > MAX)
MAX = A;
cin >> A;
if (A > MAX)
MAX = A;
cout << MAX;
}
input
input
print
A
A
MAX
A> MAX
MAX = A
MAX = A
A>MAX
MAX = A
A>MAX
MAX = A
input A
input A
157. #include <iostream.h>
void main()
{
int A, i, MAX;
cin >> A;
MAX = A;
for (i=1; i <= 3; i=i+1)
{
cin >> A;
if (A > MAX)
MAX = A;
}
cout << MAX;
}
Menginput 4
buah bilangan
dan mencetak
salah satu
bilangan yang
nilainya
terbesar
Instruksi for belum diterangkan penggunaannya
disini hanya dipinjam satu model penggunaan
158. #include <iopstream.h>
void main()
{ int A, i, MAX;
cin >> A;
MAX = A;
i = 1;
while (i <= 3)
{
cin >> A;
if (A > MAX)
MAX = A;
i = i + 1;
}
cout << MAX;
}
Instruksi while belum diterangkan penggunaannya
disisni hanya dipinjam satu model penggunaan
159. 1599.
Soal
Susun program untuk menginput 100
(seratus) buah bilangan bulat,
(dianggap ketiga buah bilangan
tersebut nilainya tidak sama satu
dengan yang lain), kemudian
mencetak salah satu bilangan yang
nilainya terbesar.
KEMBALI KE-
160.
161. #include <iostream.h>
void main()
{
int A, i, MAX;
cin >> A;
MAX = A;
for (i=1; i <= ...; i=i+1)
{
cin >> A;
if (A > MAX)
MAX = A;
}
cout << MAX;
}
Menginput 100
buah bilangan
dan mencetak
yang terbesar
162. #include <iostream.h>
void main()
{
int A, i, MAX;
cin >> A;
MAX = A;
for (i=1; i <= 99; i=i+1)
{
cin >> A;
if (A > MAX)
MAX = A;
}
cout << MAX;
}
Menginput 100
buah bilangan
dan mencetak
yang terbesar
163. 1639.
Soal
Susun program untuk menginput 3
(tiga) buah bilangan bulat, (dianggap
ketiga buah bilangan tersebut nilainya
tidak sama satu dengan yang lain),
kemudian cetaklah ketiga bilangan
tersebut sedemikian rupa sehingga
tercetak urut mulai nilai terkecil
sampai dengan nilai terbesar.
164. Bila bilangan yang diinput adalah 5, 17 dan 8, maka tentunya akan tercetak 5 8 17
atau tercetak : 5
8
17
5 8 17
KEYBOARD
print
5
17
8
BA
175 8
C
input
165. FLOWCHART
cara-1 START
input A,B,C
A < B
ABBA
AB , A disebelah kiri B
maksudnya A lebih kecil dati B
BA , B disebelah kiri A
maksudnya B lebih kecil dati A
B
A , Belum diketahui siapa yang lebih besar
170. input
A,B,C
A,B,C
A < B
B < C
AB
ABC
C
AB
BA
C
AB
A dan C kedua-duanya lebih kecil dari B,
tapi A dan C belum diketahui siapa yang
lebih besar atau yang lebih kecil
193. START
input
A,B,C
END
A,B,C
A,C,B
A < B
B < C
A < C
C,A,B
AB
ABC
C
AB
ACBCABB,A,C
B,C,A
A < C
B < C
C,A,B
BAC
C
BA
BCACBA
BA
#include <iostream.h>
void main()
{ int A,B,C;
cin >> A >> B >> C;
if(A<B)
{ if(B<C)
cout << A << “ “ << B << “ “ << C;
else
{ if(A<C)
cout << A << “ “ << C << “ “ << B;
else
cout << C << “ “ << A << “ “ << B;
}
}
else
{ if(A<C)
cout << B << “ “ << A << “ “ << C;
else
{ if(B<C)
cout << B << “ “ << C << “ “ << A;
else
cout << C << “ “ << B << “ “ << A;
}
}
}
194. A,B,C
A,C,B
A < B
B < C
A < C
C,A,B
AB
ABC
C
AB
ACBCAB
if(A<B)
{ if(B<C)
cout << A << “ “ << B << “ “ << C;
else
{if(A<C)
cout << A << “ “ << C << “ “ << B;
else
cout << C << “ “ << A << “ “ << B;
}
}
else
195. B,A,C
B,C,A
A < C
B < C
C,A,B
BAC
C
BA
BCACBA
}
else
{ if(A<C)
cout << B << “ “ << A << “ “ << C;
else
{if(B<C)
cout << B << “ “ << C << “ “ << A;
else
cout << C << “ “ << B << “ “ << A;
}
}
}
196. Soal-13 Susun program untuk menginput tiga
(3) buah bilangan bulat (misal A, B dan C
dimana A<>B<>C<>A), kemudian mencetak
ketiga nilai tersebut urut dari kecil ke besar.
Cara-2