Analisis dan desain Algoritma (PG157)
{Pertemuan 7
Struktur Perulangan
Lanjutan}Outline
Nested Loop
Contoh dan Latihan yang melibatkan Struktur Perulangan
255 Pendahuluan ? include<stdio.h>
# J void main()
1 { int J;
2 for ( J=1; J<=5; J++ )
3
4 {
- 5
- 6
Loop
} }
Berapa kali loop dikerjakan ?
255 Pendahuluan
J=1 J=1
int J; for ( J=1 ; J<=5; J++)
false true J<=5
{
J<=5
true
false
- Loop
- J++
}
J++ atau
J=1 J++
true J<=5 false Pendahuluan
J=1
#include<stdio.h> main()
false J<=5
{ int J;
true
J = 1;
- while ( J<=5 )
- {
atau J=J+1
J=1
- J++;
J=J+1
}
} Loop
true J<=5 false
#include<stdio.h> void main() { int J;
J = 1; while ( J<=5 ) {
- J++; }
} #include<stdio.h> void main() { int J;
for ( J=1; J<=5; J++) {
}
} Pendahuluan
#include<stdio.h> void main() { int I, J; for ( I=1; I<=3; I++) { } }
Nested Loop dengan for( )
Pemahaman Nested Loop
#include<stdio.h> void main() { int I, J; for ( I=1; I<=3; I++) { } }
for ( J=1; J<=5; J++) { }
for ( J=1; J<=5; J++) { }
- (A) (B)
{ } printf(“\nJakarta”)
#include<stdio.h> main() { int I, J; for ( I=1; I<=3; I++) { } } for ( J=1; J<=5; J++)
Tercetak : Jakarta Jakarta Jakarta Jakarta Jakarta printf(“\nJakarta”)
Tercetak : Jakarta Jakarta
- Jakarta Jakarta 15 kali
I=1
#include<stdio.h>
false
void main()
I<=3
{ int I, J;
true
for ( I=1; I<=3; I++)
J=1
{
false
for ( J=1; J<=5; J++)
Outer J<=5 loop
{
true
Inner loop
- Outer
loop
- Inner
- loop }
J++
} }
I++
258 fa ls e true
I=1 I<=3
- 258
I++ J=1
J<=5 Inner loop
J++
true fa ls e keluar
O u te r lo o p
#include<stdio.h> void main() { int I, J; for ( I=1; I<=3; I++) { } } for ( J=1; J<=5; J++)
{ } Latihan di Kelas
Buatlah Flowchart untuk mencetak beberapa deret berikut ini:
1. 10 20 30 40 50 60 70 80 90 100 2. 100 95 90 85 80 75 70 65 60 55 3. 1 2 4 8 16 32 64 128 256 512 1024 4. 5 8 12 17 23 30 38 47 57 68 5. 1 1 2 3 5 8 13 21 34 55
Latihan di Kelas
1. Seseorang mengendarai sepeda dengan kecepatan tetap 2
meter/detik. Susun program untuk mencetak berapa meter
yang dia tempuh setelah bersepeda selama 100 detik.2. Seseorang menyimpan uang Rp. 1.000.000 di bank dengan bunga ber-bunga 2% perbulan. Jadi setelah satu bulan uangnya menjadi Rp. 1.020.000. Satu bulan berikutnya uang Rp. 1.020.000 ini mendapat bunga lagi 2%, yaitu Rp.20.400 sehingga setelah 2 bulan uangnya menjadi Rp. 1.020.000 +
Rp. 20.400 = Rp. 1.040.400. Demikian seterusnya (bunga
bulan ini ditambahkan ke saldo uangnya dan mendapatkan
bunga lagi pada bulan berikutnya) . Susun program untuk
menghitung dan mencetak jumlah uangnya setelah 10 bulan.Susun program untuk mencetak nilai- nilai ( 1- 15) sehingga tercetak sebagai berikut :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 a.
b.
1 c.
2 1 2 3 4 5
3 6 7 8 9 10
4 11 12 13 14 15
5
6
7 d.
1 2 3
8
9 4 5 6
10 7 8 9
11 10 11 12
12
13 13 14 15
14
15 SOAL : Susun program untuk mencetak nilai 1-15, sehingga tercetak sebagai berikut : a. 1 b. 1 2 3 4 5 2 3
6 7 8 9 4 5 6 10 11 12 7 8 9 10 13 14 11 12 13 14 15
15
c. 1
d. 1 2 3 4 5 2 3 6 7 8 9 4 5 6 10 11 12 7 8 9 10 13 14 11 12 13 14 15
15 SOAL : Apa yang tercetak bila program berikut ini dijalankan : a.
#include<stdio.h> void main() { int I, J, T ;
T = 0 ;
for ( I=1; I<=3; I++) { for(J =
I ; J<=5; J++) { T = T + J;
printf(“%3i”, T );
}
printf(“\n); } } b.
#include<stdio.h> void main() { int I, J, T ;
T = 0 ;
for ( I=1; I<=3; I++) { for(J =
I ; J<=5; J++) { T = T + J; }
printf(“%3i”, T ); printf(“\n); } } SOAL : Apa yang tercetak bila program berikut ini dijalankan : a.
#include<stdio.h> void main() { int I, J, T ;
T = 0 ;
for ( I=1; I<=3; I++) { for(J =
I ; J<=5; J++) { T = T + J; }
} printf(“%3i”, T ); } SOAL : Apa yang tercetak bila program berikut ini dijalankan : a.
#include<stdio.h> void main() { int I, J, T ;
T = 0 ;
for ( I=1; I<=3; I++) { for(J =
I ; J<=5; J++) { T = T + J;
printf(“%3i”, T );
}
printf(“\n); } } b.
#include<stdio.h> void main() { int I, J, T ;
T = 0 ;
for ( I=1; I<=3; I++) { for(J =
I ; J<=5; J++) { T = T + J; }
printf(“%3i”, T ); printf(“\n); } } c. #include<stdio.h> main() { int I, J, T ;
T = 0 ; for ( I=1; I<=3; I++) { for(J =
I ; J<=5; J++) { T = T + J; }
} printf(“%3i”, T ); } Terima kasih…