Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Introduction using 03b to Algorithm C / C++ teknik dasar Algoritma.

Presentasi serupa


Presentasi berjudul: "Introduction using 03b to Algorithm C / C++ teknik dasar Algoritma."— Transcript presentasi:

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

30

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

66

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


Download ppt "Introduction using 03b to Algorithm C / C++ teknik dasar Algoritma."

Presentasi serupa


Iklan oleh Google