Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
Diterbitkan olehIvan Tedja Telah diubah "6 tahun yang lalu
1
Introduction using 03b to Algorithm C / C++ teknik dasar Algoritma
2
Latihan Membaca Flowchart
3
5 7 9 5 9 7 7 5 9 7 9 5 9 5 7 9 7 5 Menggunakan 3 variabel A B C
Ada 6 kemungkinan variasi ketiga buah nilai 7 5 9 7 9 5 9 5 7 9 7 5
4
1 START 5 7 9 A B C input A Soal input B input C False A > B True False True False True B > C A > C 1 2 3 4 Ada 4 titik , , dan Untuk data diatas, maka flow akan menuju titik ? 1 2 3 4
5
START 5 7 9 A B C input A Jawab input B input C False A > B True 5 7 False True False True B > C A > C 1 2 3 4 7 9 Untuk data diatas, maka flow akan menuju atau berakhir pada titik : 1
6
2 START 5 9 7 A B C input A Soal input B input C False A > B True False True False True B > C A > C 1 2 3 4 Ada 4 titik , , dan Untuk data diatas, maka flow akan menuju titik ? 1 2 3 4
7
START 5 9 7 A B C input A Jawab input B input C False A > B True 5 9 False True False True B > C A > C 1 2 3 4 9 7 Untuk data diatas, maka flow akan menuju atau berakhir pada titik : 2
8
3 START 7 5 9 A B C input A Soal input B input C False A > B True False True False True B > C A > C 1 2 3 4 Ada 4 titik , , dan Untuk data diatas, maka flow akan menuju titik ? 1 2 3 4
9
START 7 5 9 A B C input A Jawab input B input C False A > B True 7 5 False True False True B > C A > C 1 2 3 4 7 9 Untuk data diatas, maka flow akan menuju atau berakhir pada titik : 3
10
4 START 7 9 5 A B C input A Soal input B input C False A > B True False True False True B > C A > C 1 2 3 4 Ada 4 titik , , dan Untuk data diatas, maka flow akan menuju titik ? 1 2 3 4
11
START 7 9 5 A B C input A Jawab input B input C False A > B True 7 9 False True False True B > C A > C 1 2 3 4 9 5 Untuk data diatas, maka flow akan menuju atau berakhir pada titik : 2
12
5 START 9 5 7 A B C input A Soal input B input C False A > B True False True False True B > C A > C 1 2 3 4 Ada 4 titik , , dan Untuk data diatas, maka flow akan menuju titik ? 1 2 3 4
13
START 9 5 7 A B C input A Jawab input B input C False A > B True 9 5 False True False True B > C A > C 1 2 3 4 9 7 Untuk data diatas, maka flow akan menuju atau berakhir pada titik : 4
14
6 START 9 7 5 A B C input A Soal input B input C False A > B True False True False True B > C A > C 1 2 3 4 Ada 4 titik , , dan Untuk data diatas, maka flow akan menuju titik ? 1 2 3 4
15
START 9 7 5 A B C input A Jawab input B input C False A > B True 9 7 False True False True B > C A > C 1 2 3 4 9 5 Untuk data diatas, maka flow akan menuju atau berakhir pada titik : 4
16
Cara-2
17
Cara-2 #include <iostream.h> void main() { int A,B,C, MAX;
START #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; } input A, B, C MAX = A B > MAX true MAX = B false C > MAX true MAX = C false print MAX A B C MAX Menggunakan 4 variabel END
18
Cara-3
19
#include <iostream.h> void main() { int A,B,C, MAX;
Cara-3 #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 A MAX = A input B true B > MAX false MAX = B input C true C > MAX false MAX = C MAX A B C MAX printf
20
Cara-4
21
Cara-4 Menggunakan hanya 2 variabel. Variabel A khusus untuk menampung input, dan variabel MAX khusus mencatat atau menyimpan nilai terbesar. 5 17 8 cin 8 17 A 17 cout KEYBOARD MAX MEMORY SCREEN
22
#include <iostream.h> void main() { int A, MAX; cin >> A;
Cara-4 input A #include <iostream.h> void main() { int A, MAX; cin >> A; MAX = A; if (A > MAX) cout << MAX; } MAX = A scanf A A > MAX true false MAX = A input A true A > MAX false MAX = A Algoritma ini nanti yang menjadi dasar algoritma pencarian bilangan terbesar atau terkecil dari sejumlah bilangan yang ada atau bilangan yang diinput. printf MAX
23
Cara-5
24
Cara-5 Menggunakan multi conditions dengan logical operator AND
17 8 cin 5 17 8 17 A B C cout KEYBOARD MEMORY Dengan menggunakan Logical Operator AND (&&) SCREEN #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; cout << C; }
25
#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; cout << C; } START input A,B,C A>B && A>C true print B>A && B>C A false true print print C B Sebenarnya disini cukup membanding-kan B dengan C karena bila pemeriksaan pertama if (A>B && A>C) hasilnya FALSE maka A sudah pasti 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 END Ini sebenarnya bisa diganti cukup dengan : B > C
26
#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; cout << C; } START scanf A,B,C A>B && A>C true printf B>C A false true printf printf C B END
27
Cara-6
28
Cara-6 17 5 8 Berpikir lebih praktis, tapi computer-time tidak efisien
cin cout 17 5 8 A B C KEYBOARD SCREEN MEMORY #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; }
29
#include <iostream.h> void main() { int A,B,C;
START input A,B,C #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; } A>B && A>C true print A B>A && B>C true print B C>A && C>B true print C END
31
Soal-11 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. Soal 11
32
Jawab-11 Cara-1 Menggunakan 5 variabel, 4 variabel untuk input. 1 variabel untuk MAX 5 17 8 12 17 cout cin 5 17 8 12 A B C D KEYBOARD SCREEN MEMORY Bila bilangan yang diinput adalah 5, 17, 8 dan 12, maka tentunya akan tercetak 17
33
FLOWCHART Cara-1 START input A,B,C,D
34
5 17 8 12 A B C D START inputf A, B,C, D A>B B>C A>C C>D
B>D C>D A>D print D print C print D print B print D print C print D print A END
35
bersambung #include <iostream.h> void main() { int A,B,C,D;
cin >> A >> B >> C >> D; if(A > B) {if(A > C) {if(A > D) cout << A; else cout << D; } {if(C > D) cout << C; else {if (B > C) {if(B > D) cout << B; cout << D; } {if(C > D) cout << C; bersambung
36
#include <iostream.h> void main() { int A,B,C,D;
START #include <iostream.h> void main() { int A,B,C,D; cin >> A >> B >> C >> C; if(A > B) {if(A > C) {if(A > D) cout << A; else cout << D; } {if(C > D) cout << C; - input A, B,C, D A>B A>C C>D A>D print D print C print D print A
37
else - else {if (B > C) {if(B > D) cout << B;
cout << D; } {if(C > D) cout << C; cout << D ; else A>B B>C C>D B>D prinf D print C print D print B
38
Latihan Membaca Flowchart
39
Untuk nilai yang diinput seperti diatas,
START 5 8 12 17 A B C D input A, B,C, D A>B B>C A>C C>D B>D C>D A>D 1 2 3 4 5 6 7 8 Untuk nilai yang diinput seperti diatas, Maka flow akan menuju nomor : ………
40
Soal-12 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. Soal 12
41
Untuk dapat menyelesaikan soal ini, perhatikan kembali soal no-11
dikerjakan dengan cara lain
42
Sebutkan nilai terbesar dari beberapa nilai yang diperlihatkan
Konsep berpikir : Sebutkan nilai terbesar dari beberapa nilai yang diperlihatkan berikut ini :
43
12
44
7
45
17
46
10
47
15
48
25
49
15
50
19
51
22
52
20
53
Berapa nilai yang terbesar
?
54
Yang terbesar 25
55
Konsep : Selalu menyimpan nilai terbesar dalam ingatan
56
variabel : A khusus untuk menampung input
Jawab Soal-11 Cara-2 Menggunakan 2 variabel, variabel : A khusus untuk menampung input variabel : MAX khusus untuk menampung nilai terbesar 5 17 8 12 cin A 17 cout MAX 17 A MAX KEYBOARD MEMORY SCREEN Bila bilangan yang diinput adalah 5, 17, 8 dan 12, maka tentunya akan tercetak 17
57
5 5 A 5 . Input 5 ke A 17 . Simpan 5 di MAX 8 12 MAX
9. 57 5 17 8 12 . Input 5 ke A . Simpan 5 di MAX 5 5 A KEYBOARD MAX SCREEN MEMORY Cara ini hanya menggunakan 2 variabel. Variabel A khusus menerima input Variabel MAX khusus menampung nilai terbesar
58
17 17 A 5 . Input 17 ke A 17 . 17 > MAX Simpan 17 di MAX 8 12 MAX
9. 58 5 17 8 12 . Input ke A . 17 > MAX Simpan 17 di MAX 17 17 A KEYBOARD MAX SCREEN MEMORY Cara ini hanya menggunakan 2 variabel. Variabel A khusus menerima input Variabel MAX khusus menampung nilai terbesar
59
8 17 A 5 . Input 8 ke A 17 . 8 tidak > MAX MAX tetap 17 8 12 MAX
9. 59 5 17 8 12 . Input 8 ke A . 8 tidak > MAX MAX tetap 17 8 17 A KEYBOARD MAX SCREEN MEMORY Cara ini hanya menggunakan 2 variabel. Variabel A khusus menerima input Variabel MAX khusus menampung nilai terbesar
60
12 17 A 5 . Input 12 ke A 17 . 12 tidak > MAX MAX tetap 17 8 12
9. 60 5 17 8 12 . Input ke A . 12 tidak > MAX MAX tetap 17 12 17 A KEYBOARD MAX SCREEN MEMORY
61
12 17 A 5 17 8 . Data habis Cetak MAX 12 17 MAX KEYBOARD SCREEN
9. 61 5 17 8 12 . Data habis Cetak MAX 12 17 17 A KEYBOARD MAX SCREEN MEMORY
62
#include <iostream.h> void main() { int A, MAX; cin >> A;
MAX = A; if (A > MAX) cout << MAX; } input MAX=A A>MAX A print MAX
63
#include <iostream.h> void main() { int A, i, MAX;
cin >> A; MAX = A; for (i=1; i <= 3; i=i+1) if (A > MAX) } 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
64
#include <iopstream.h>
void main() { int A, i, MAX; cin >> A; MAX = A; i = 1; while (i <= 3) { if (A > MAX) i = i + 1; } cout << MAX; Instruksi while belum diterangkan penggunaannya disisni hanya dipinjam satu model penggunaan
65
KEMBALI KE- Soal-12 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. Soal 9. 65 12
67
Menginput 100 buah bilangan dan mencetak yang terbesar #include <iostream.h> void main() { int A, i, MAX; cin >> A; MAX = A; for (i=1; i <= ...; i=i+1) if (A > MAX) } cout << MAX;
68
Menginput 100 buah bilangan dan mencetak yang terbesar #include <iostream.h> void main() { int A, i, MAX; cin >> A; MAX = A; for (i=1; i <= 99; i=i+1) if (A > MAX) } cout << MAX;
69
Soal-13 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. Soal 9. 69 13
70
Bila bilangan yang diinput adalah 5, 17 dan 8, maka tentunya akan tercetak 5 8 17 atau tercetak : 5
KEYBOARD A B C print 5 8 17
71
cara-1 AB , A disebelah kiri B maksudnya A lebih kecil dati B
FLOWCHART cara-1 START input A,B,C BA AB A < B 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
72
FLOWCHART cara-1 START input A,B,C BA AB A < B ?
73
FLOWCHART cara-1 START input A,B,C BA AB A < B B < C
74
FLOWCHART cara-1 START input A,B,C BA AB A < B ABC B < C
75
input A,B,C BA AB A < B B < C ABC A,B,C
76
input A,B,C BA AB A < B C AB B < C ABC A,B,C 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
77
input A,B,C BA AB A < B C AB B < C ABC ? A,B,C
78
input A,B,C BA AB A < B C AB B < C ABC A < C A,B,C
79
input A,B,C BA AB A < B C AB B < C ABC ? A < C A,B,C
80
input A,B,C BA AB A < B C AB B < C ABC A < C ACB A,B,C
81
input A,B,C BA AB A < B C AB B < C ABC A < C ACB A,B,C A,C,B
82
? input A,B,C BA AB A < B C AB B < C ABC A < C ACB A,B,C
83
input A,B,C BA AB A < B C AB B < C ABC CAB A < C ACB A,B,C A,C,B
84
input A,B,C BA AB A < B C AB B < C ABC CAB A < C ACB A,B,C C,A,B A,C,B
85
input A,B,C BA AB A < B C AB B < C ABC CAB A < C ACB A,B,C C,A,B A,C,B
86
input A,B,C BA AB A < B C AB B < C ABC CAB A < C ACB A,B,C C,A,B A,C,B
87
input A,B,C BA AB A < B C AB A < C BAC B < C ABC CAB A < C ACB A,B,C C,A,B A,C,B
88
input A,B,C BA AB A < B C AB A < C BAC B < C ABC CAB B,A,C A < C ACB A,B,C C,A,B A,C,B
89
START input A,B,C BA AB A < B C BA C AB A < C BAC B < C ABC CAB B,A,C A < C ACB A,B,C C,A,B A,C,B
90
? START input A,B,C BA AB A < B C BA C AB A < C BAC B < C ABC
91
START input A,B,C BA AB A < B C BA C AB A < C BAC B < C ABC CAB B < C B,A,C A < C ACB A,B,C C,A,B A,C,B
92
START input A,B,C BA AB A < B C BA C AB A < C BAC B < C ABC BCA CBA CAB B < C B,A,C A < C ACB A,B,C C,A,B A,C,B
93
START input A,B,C BA AB A < B C BA C AB A < C BAC B < C ABC BCA CBA CAB B < C B,A,C A < C ACB A,B,C B,C,A C,A,B A,C,B
94
START input A,B,C BA AB A < B C BA C AB A < C BAC B < C ABC BCA CBA CAB B < C B,A,C A < C ACB A,B,C C,A,B B,C,A C,A,B A,C,B
95
START input A,B,C BA AB A < B C BA C AB A < C BAC B < C ABC BCA CBA CAB B < C B,A,C A < C ACB A,B,C C,A,B B,C,A C,A,B A,C,B
96
START input A,B,C BA AB A < B C BA C AB A < C BAC B < C ABC BCA CBA CAB B < C B,A,C A < C ACB A,B,C C,A,B B,C,A C,A,B A,C,B
97
START input A,B,C BA AB A < B C BA C AB A < C BAC B < C ABC BCA CBA CAB B < C B,A,C A < C ACB A,B,C C,A,B B,C,A C,A,B A,C,B END
98
START input A,B,C BA AB A < B C BA C AB A < C BAC B < C ABC BCA CBA CAB B < C B,A,C A < C ACB A,B,C C,A,B B,C,A C,A,B A,C,B END
99
#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; cout << C << “ “ << A << “ “ << B; } cout << B << “ “ << A << “ “ << C; { if(B<C) cout << B << “ “ << C << “ “ << A; cout << C << “ “ << B << “ “ << A; START input A,B,C END A,C,B A < B B < C A < C C,A,B AB ABC C ACB CAB B,A,C B,C,A BAC BA BCA CBA
100
cout << A << “ “ << B << “ “ << C; else
if(A<B) { if(B<C) cout << A << “ “ << B << “ “ << C; else {if(A<C) cout << A << “ “ << C << “ “ << B; cout << C << “ “ << A << “ “ << B; } A < B AB C AB B < C ABC A < C A,B,C CAB ACB C,A,B A,C,B
101
cout << B << “ “ << A << “ “ << C;
} else { if(A<C) cout << B << “ “ << A << “ “ << C; {if(B<C) cout << B << “ “ << C << “ “ << A; cout << C << “ “ << B << “ “ << A; C BA A < C BAC CBA B < C BCA B,A,C C,A,B B,C,A
102
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
103
START input A,B,C A<B && B<C A<C&&C<B print A,B,C B<A&&A<C print A,C,B print B<C&&C<A B,A,C C<A&&A<B print B,C,A print C,B,A print C,A,B END
104
#include <iostream.h>
void main() {int A,B,C; cin >> A >> B >> C; if(A<B && B<C) cout << A << “ “ << B << “ “ << C; else {if(A<C && C<B) cout << A << “ “ << C << “ “ << B; {if(B<A && A<C) cout << B << “ “ << A << “ “ << C; {if(B<C && C<A) cout << B << “ “ << C << “ “ << A; {if(C<A && A<B) cout << C << “ “ << A << “ “ << B; cout << C << “ “ << B << “ “ << A; }
105
seleseai Tahap-3
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.