Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

291.

Presentasi serupa


Presentasi berjudul: "291."— Transcript presentasi:

1 291

2 11. 2 11.6 Mengisi Array Dengan Data Yang Diketik Melalui Keyboard 291

3 Memory 5 5 Ilustrasi menginput data melalui keyboard
11. 3 Ilustrasi menginput data melalui keyboard Memory 5 5 KEYBOARD SCREEN Data yang diketik melalui keyboard harus diterima oleh sebuah variabel.

4 Memory 5 Ilustrasi menginput data melalui keyboard 5
11. 4 Ilustrasi menginput data melalui keyboard Memory 5 5 KEYBOARD SCREEN Data yang diketik melalui keyboard dapat diterima oleh sebuah variabel atau sebuah elemen array.

5 5 Memory Ilustrasi menginput data melalui keyboard 5 5
11. 5 Ilustrasi menginput data melalui keyboard 5 Memory 5 KEYBOARD 5 SCREEN Data yang diketik melalui keyboard dapat diterima oleh sebuah variabel kemudian disalin kesebuah elemen array.

6 Contoh-1. Dalam lembar dokumen ada data berupa nilai ujian mahasiswa,
integer positip sebagai berikut: 57, 75, 90, 55, 60, 62, 72, 58, 76, 69, 67, 82, 65, 48, 79, 64, 50, dst. Sudah ada (sudah dibuat) array satu dimensi int A[11], belum ada isinya. Soal : Susun program untuk menginput data dari luar melalui keyboard, dan mengisinya ke dalam array sehingga isi array menjadi : 57 75 90 55 60 62 72 58 76 69 67

7 Data yang diinput dari Keyboard
57, 75, 90, 55, 60, 62, 72, 58, 76, 69, 67, 82, 65, 48, 79, 64, 50, dst. Disimpan dalam array : int A[11] 57 75 90 55 60 62 72 58 76 69 67 Cara-1. int X,I; I = 0; while( I<= 10) { scanf(“%i”, &X ); A[I] = X; I++; } int X,I; for(I=0; I<=10; I++) { scanf(“%i”, &X ); A[I] = X; } 291

8 Data yang diinput dari Keyboard
57, 75, 90, 55, 60, 62, 72, 58, 76, 69, 67, 82, 65, 48, 79, 64, 50, dst. Disimpan dalam array : int A[11] 57 75 90 55 60 62 72 58 76 69 67 Cara-2. int I; I = 0; while( I<= 10) { scanf(“%i”, &A[I] ); I++; } int I; for(I=0; I<=10; I++) { scanf(“%i”, &A[I] ); } 291

9 11. 9

10 Contoh-2. Dalam lembar dokumen ada data berupa nilai ujian mahasiswa,
integer positip sebagai berikut: 57, 75, 90, 55, 60, 62, 72, 58, 76, 69, 67, 82, 65, 48, 79, 64, 50, dst. Sudah ada (sudah dibuat) array satu dimensi int A[11], belum ada isinya. Soal : Susun program untuk menginput data dari luar melalui keyboard. Bila data yang diinput nilainya < 60, tidak disimpan ke dalam array. Tapi bila nilai yang diinput >=60, maka disimpan ke dalam array sehingga isi array menjadi : 75 90 60 62 72 76 69 67 82 65 79

11 Cara-1. (hanya satu cara)
Contoh-2 Data yang diinput dari Keyboard 57, 75, 90, 55, 60, 62, 72, 58, 76, 69, 67, 82, 65, 48, 79, 64, 50, dst. Disimpan dalam array : int A[11] 75 90 60 62 72 76 69 67 82 65 79 Cara-1. (hanya satu cara) int X,I; I = 0; while( I<= 10) { scanf(“%i”, &X ); if(X>=60) A[I] = X; I++; } int X,I; for(I=0; I<=10; I++) { scanf(“%i”, &X ); if(X>=60) A[I] = X; } 291

12

13 11. 13 292 menginput String

14 Menginput String kedalam array
Contoh-3. Susun program (penggalan program) untuk menginput suatu kalimat dan memasukkannya ke dalam array satu dimensi. Kemudian cetak isi array tersebut Misal panjang kalimat tidak lebih dari 9 karakter (10 karakter dengan tanda ‘end’ hasil ketikan tombol <Enter>). 292

15 #include<stdio.h> void main() { char S[10]; scanf(“%s”, S);
Contoh-3. Susun program (penggalan program) untuk menginput suatu kalimat dan memasukkannya ke dalam array satu dimensi. Kemudian cetak isi array tersebut Misal panjang kalimat tidak lebih dari 9 karakter (10 karakter dengan tanda ‘end’ hasil ketikan tombol <Enter>. Jawab-3 Input dengan scanf( ) #include<stdio.h> void main() { char S[10]; scanf(“%s”, S); printf(“%s”, S); } atau dicetak dengan puts(S); 292

16 #include<stdio.h> void main() { char S[10]; int I;
Contoh-3. Susun program (penggalan program) untuk menginput suatu kalimat dan memasukkannya ke dalam array satu dimensi. Kemudian cetak isi array tersebut Misal panjang kalimat tidak lebih dari 9 karakter (10 karakter dengan tanda ‘end’ hasil ketikan tombol <Enter>. #include<stdio.h> void main() { char S[10]; int I; scanf(“%s”, S); I=0; while(S[I] != ‘\0’) { printf(“%c”, S[I]); I++; } 292

17 scanf( ) \0 292  Bila data yang di INPUT bila dicetak dengan :
printf( “%s “, S ); atau puts(S) Akan disimpan dalam variable array S ABC Tercetak : ABC (\0 = Tanda untuk batas nilai) A B C \0 ABC DE Tercetak : ABC A B C \0 Tercetak : ABC (b= blank didepan tidak ikut disimpan) bbABC A B C \0 “ABC DE” A B C \0 tercetak : “ABC ABCDEFGHI Tercetak : ABCDEFGHI (Untuk S[10] maksimum 9 karakter) A B C D E F G H I \0 ABCDEFGHIJ Error lebih dari 9 karakter 12345 1 2 3 4 5 \0 Tercetak karakter : 12345 \0 Tak ada yang tercetak 292

18 293

19 atau dicetak dengan puts(S); Jawab-3 Input dengan gets()
#include<stdio.h> void main() { char S[10]; gets(S); printf(“%s”, S); } atau dicetak dengan puts(S);

20 Jawab-3 Input dengan gets()
#include<stdio.h> void main() { char S[10]; int I; gets( S ); I=0; while(S[I] != ‘\0’) { printf(“%c”, S[I]); I++; }

21  ABC ABCbbDE bbABC “ABCbbDE” ABCDEFGHI ABCDEFGHIJ 12345
bila dicetak dengan : printf( “%s “, S ); atau puts(S) Bila data yang di INPUT dengan get(S) Akan disimpan dalam variable array S ABC A B C \0 Tercetak : ABC ABCbbDE Tercetak : ABC DE A B C D E \0 bbABC A B C \0 Tercetak : bbABC (b= blank) “ABCbbDE” A B C D E \0 tercetak : “ABC DE” ABCDEFGHI A B C D E F G H I \0 Tercetak : ABCDEFGHI ABCDEFGHIJ Error lebih dari 9 karakter 12345 1 2 3 4 5 \0 Tercetak : 12345 \0 Tak ada yang tercetak

22 Menginput String pada Bahasa Java :
lihat Bab 7 (tidak diuji)

23 Pada program Java, ada cara yang lebih mudah untuk menginput sebuah kalimat atau string melalui keyboard dengan menggunakan metode readLine(). Perhatikan contoh berikut ini : import java.io.*; public class Contoh { public static void main (String[] args ) { BufferedReader sebarisTeks = new BufferedReader ( new InputStreamReader(System.in) ); System.out.println( “Input Nama Kota : “); String S = “”; try { S = sebarisTeks.readLine(); } catch (IOException i) { System.out.println(“Nama Kota Anda : “ + S); Bila program diatas dijalankan, maka terlihat dilayar sebagai berikut : 294 Input Nama Kota : Jakarta Raya Nama Kota Anda : Jakarta Raya

24 11.7 Mencetak Isi Array Satu Dimensi
295

25 Contoh-1. Sudah ada array Satu Dimensi A[11], sudah ada isinya dengan ilustrasi sebagai berikut : 12 17 10 5 15 25 11 8 3 16 19 Susun program (penggalan program) untuk mencetak isi array tersebut sehingga tercetak dengan urutan sebagai berikut : 12 17 10 - 19 Program? 295

26 { printf(“\n%i”, A[I] ); }
Contoh-1. Sudah ada array Satu Dimensi A[11], sudah ada isinya dengan ilustrasi sebagai berikut : 12 17 10 5 15 25 11 8 3 16 19 Susun program (penggalan program) untuk mencetak isi array tersebut sehingga tercetak dengan urutan sebagai berikut : 12 17 10 - 19 for(I=0; I<= 10; I++) { printf(“\n%i”, A[I] ); } 295

27

28 Contoh-2. Sudah ada array Satu Dimensi A[11], sudah ada isinya dengan ilustrasi sebagai berikut : 12 17 10 5 15 25 11 8 3 16 19 Susun program (penggalan program) untuk mencetak isi array tersebut sehingga tercetak dengan urutan sebagai berikut : 19 16 3 8 11 - 12 Program? 295

29 { printf(“\n%i”, A[10-I] ); }
Contoh-2. Sudah ada array Satu Dimensi A[11], sudah ada isinya dengan ilustrasi sebagai berikut : 12 17 10 5 15 25 11 8 3 16 19 Susun program (penggalan program) untuk mencetak isi array tersebut sehingga tercetak dengan urutan sebagai berikut : 19 16 3 8 11 - 12 Cara-1 for(I=0; I<= 10; I++) { printf(“\n%i”, A[10-I] ); }

30 { printf(“\n%i”, A[I] ); }
Contoh-2. Sudah ada array Satu Dimensi A[11], sudah ada isinya dengan ilustrasi sebagai berikut : 12 17 10 5 15 25 11 8 3 16 19 Susun program (penggalan program) untuk mencetak isi array tersebut sehingga tercetak dengan urutan sebagai berikut : 19 16 3 8 11 - 12 Cara-2 for(I=10; >= 10; I--) { printf(“\n%i”, A[I] ); }

31 296 Contoh-3

32 Contoh-3. Sudah ada array Satu Dimensi A[11], sudah ada isinya dengan ilustrasi sebagai berikut : 12 17 10 5 15 25 11 8 3 16 19 Susun program (penggalan program) untuk mencetak isi array tersebut sehingga tercetak dengan urutan sebagai berikut : 12 10 15 11 3 19 Program? 296

33 { printf(“\n%i”, A[I] ); }
Contoh-3. Sudah ada array Satu Dimensi A[11], sudah ada isinya dengan ilustrasi sebagai berikut : 12 17 10 5 15 25 11 8 3 16 19 Susun program (penggalan program) untuk mencetak isi array tersebut sehingga tercetak dengan urutan sebagai berikut : 12 10 15 11 3 19 for(I=0; I<= 10; I+=2) { printf(“\n%i”, A[I] ); } 296

34

35 Contoh-4. Sudah ada array Satu Dimensi A[11], sudah ada isinya dengan ilustrasi sebagai berikut : 12 17 10 5 15 25 11 8 3 16 19 Susun program (penggalan program) untuk mencetak isi array yang nilainya lebih besar dari 10, sehingga tercetak dengan urutan sebagai berikut : 12 17 15 25 11 16 19 Program? 296

36 for(I=0; I<= 10; I++) { if(A[I] > 10 ) printf(“\n%i”, A[I] ); }
Contoh-4. Sudah ada array Satu Dimensi A[11], sudah ada isinya dengan ilustrasi sebagai berikut : 12 17 10 5 15 25 11 8 3 16 19 Susun program (penggalan program) untuk mencetak isi array yang nilainya lebih besar dari 10, sehingga tercetak dengan urutan sebagai berikut : 12 17 15 25 11 16 19 for(I=0; I<= 10; I++) { if(A[I] > 10 ) printf(“\n%i”, A[I] ); } 296

37

38 Contoh-5. Sudah ada array Satu Dimensi A[11], sudah ada isinya dengan ilustrasi sebagai berikut : 12 17 10 5 15 25 11 8 3 16 19 Susun program (penggalan program) untuk mencetak TOTAL seluruh isi array : Program? 296

39 T = 0; for(I=0; I<= 10; I++) { T = T + A[I]; } printf(“\n%i”, T );
Contoh-5. Sudah ada array Satu Dimensi A[11], sudah ada isinya dengan ilustrasi sebagai berikut : 12 17 10 5 15 25 11 8 3 16 19 Susun program (penggalan program) untuk mencetak TOTAL seluruh isi array : T = 0; for(I=0; I<= 10; I++) { T = T + A[I]; } printf(“\n%i”, T ); 296

40

41 Contoh-6. Sudah ada array Satu Dimensi A[11], sudah ada isinya dengan ilustrasi sebagai berikut : 12 17 10 5 15 25 11 8 3 16 19 Susun program (penggalan program) untuk mencetak isi array yang nilainya merupakan bilangan genap. Program? 296

42 printf(“\n%i”, A[I]; ); }
Contoh-6. Sudah ada array Satu Dimensi A[11], sudah ada isinya dengan ilustrasi sebagai berikut : 12 17 10 5 15 25 11 8 3 16 19 Susun program (penggalan program) untuk mencetak isi array yang nilainya merupakan bilangan genap. for(I=0; I<= 10; I++) { if( A[I] % 2 == 0 ) printf(“\n%i”, A[I]; ); } 296

43 297

44

45 11. 45 Contoh-7. Sudah ada array Satu Dimensi yang dibuat dengan char A[15], sudah ada isinya dengan ilustrasi sebagai berikut : A B C D E F G H I J K L M N O Susun program (penggalan program) untuk mencetak isi array tersebut sehingga tercetak dengan urutan sebagai berikut : A B C D E F G H I J K L M N O Ada 3 baris (diatur oleh I : 1-3 ) setiap baris ada 5 karakter (diatur oleh J : 1-5 ) Jawab-7 Cara-1 menggunakan nested loop N = 0; for(I=1; I <= 3; I++) { for(J=1; J<=5; J++) { printf(“%2c”, A[ N ] ); N = N + 1; } printf(“\n”); Digunakan format 2c agar ada jarak satu spasi antar karakter yang tercetak printf(“\n”) untuk turun satu spasi I dan J digunakan untuk pembentuk loop (nested loop) N digunakan untuk indeks penunjuk elemen array N tidak dihubungkan dengan nilai I dan J, tapi N berdiri sendiri mulai dari 0 (nol) dan selalu naik 1 Perkembangan nilai I, J dan N I 1 2 3 J 1 2 3 4 5 N 1 2 3 4 5 6 7 8 9 10 11 12 13 14 Dari daftar nilai I, J dan N, terlihat bahwa nilai N dapat dibentuk dengan menggunakan nilai I dan J dengan rumus : N = ( I-1)*5 + J-1 sehingga program diatas dapat dibuat tanpa menggunakan variabel N sebagai berikut : Cara-2 Tidak menggunakan variabel N N = 0; for( I=1; I <= 3; I++) {for(J=1; J<=5; J++ ) { printf(“%2c”, A[(I-1)*5 + J-1]); } printf(“\n”);

46 A B C D E F G H I J K L M N O Program? Contoh-7
Sudah ada array Satu Dimensi yang dibuat dengan char A[15], sudah ada isinya dengan ilustrasi sebagai berikut : A B C D E F G H I J K L M N O Susun program (penggalan program) untuk mencetak isi array tersebut sehingga tercetak dengan urutan sebagai berikut : A B C D E F G H I J K L M N O Program? 297

47 A F K B G L C H M D I N E J O a. A B C D E F G H I J K L M N O b. c. A
A B C D E F G H I J K L M N O a. A B C D E F G H I J K L M N O b. c. A B C D E F G H I J K L M N O A B C D E F G H I J K L M N O A F K B G L C H M D I N E J O f. d. A B C D E F G H I J K L M N O e. A B C D E F G H I J K L M N O

48 A B C D E F G H I J K L M N O Program? Contoh-7
Sudah ada array Satu Dimensi yang dibuat dengan char A[15], sudah ada isinya dengan ilustrasi sebagai berikut : A B C D E F G H I J K L M N O Susun program (penggalan program) untuk mencetak isi array tersebut sehingga tercetak dengan urutan sebagai berikut : A B C D E F G H I J K L M N O Program? 297

49 A B C D E F G H I J K L M N O Char A[15][ a. Tercetak : Cara-1.
A B C D E F G H I J K L M N O Char A[15][ a. Tercetak : A B C D E F G H I J K L M N O Cara-1. Pakai for(): for(I=0; I<=14; I++) { printf(“%c “, A[I] ); } Pakai while() I=0; While(I<=14) { printf(“%c “, A[I] ); I++; }

50 A B C D E F G H I J K L M N O Char A[15][ a. Tercetak : Cara-2.
A B C D E F G H I J K L M N O Char A[15][ a. Tercetak : A B C D E F G H I J K L M N O Cara-2. Pakai for(): N=0; for(I=0; I<=14; I++) { printf(“%c “, A[N] ); N++; } Pakai while() N=0; I=0; While(I<=14) { printf(“%c “, A[N] ); N++; I++; }

51 A B C D E F G H I J K L M N O Char A[15][ a. Tercetak : Cara-1
A B C D E F G H I J K L M N O Char A[15][ a. Tercetak : A B C D E F G H I J K L M N O Cara-1 for(I=0; I<=14; I++) { printf(“%c “, A[I] ); } Cara-2 N=0; for(I=0; I<=14; I++) { printf(“%c “, A[N] ); N++; }

52 A B C D E F G H I J K L M N O Char A[15][ a. Tercetak : Cara-1 I=0;
A B C D E F G H I J K L M N O Char A[15][ a. Tercetak : A B C D E F G H I J K L M N O Cara-1 I=0; While(I<=14) { printf(“%c “, A[I] ); I++; } Cara-2 N=0; I=0; While(I<=14) { printf(“%c “, A[N] ); N++; I++; }

53 A B C D E F G H I J K L M N O Char A[15][ a. Tercetak : Cara-3
A B C D E F G H I J K L M N O Char A[15][ a. Tercetak : A B C D E F G H I J K L M N O Cara-3 for(I=0; I<=2; I++) { for(J=0;J<=4;J++) { printf(“%c “, A[………………………] ); } Cara-4 N=0; for(I=0; I<=2; I++) { for(J=0;J<=4;J++) { printf(“%c “, A[N] ); N++; }

54 A B C D E F G H I J K L M N O Char A[15][ a. Tercetak : Cara-1 I=0;
A B C D E F G H I J K L M N O Char A[15][ a. Tercetak : A B C D E F G H I J K L M N O Cara-1 I=0; While(I<=14) { printf(“%c “, A[I] ); I++; } Cara-2 N=0; I=0; While(I<=14) { printf(“%c “, A[N] ); N++; I++; }

55 Contoh-7b Sudah ada array Satu Dimensi yang dibuat dengan char A[15], sudah ada isinya dengan ilustrasi sebagai berikut : A B C D E F G H I J K L M N O Susun program (penggalan program) untuk mencetak isi array tersebut sehingga tercetak dengan urutan sebagai berikut : A B C D E F G H I J K L M N O Program? 297

56 A B C D E F G H I J K L M N O Program? Contoh-7c.
Sudah ada array Satu Dimensi yang dibuat dengan char A[15], sudah ada isinya dengan ilustrasi sebagai berikut : A B C D E F G H I J K L M N O Susun program (penggalan program) untuk mencetak isi array tersebut sehingga tercetak dengan urutan sebagai berikut : A B C D E F G H I J K L M N O Program? 297

57 A B C D E F G H I J K L M N O Program? Contoh-7d.
Sudah ada array Satu Dimensi yang dibuat dengan char A[15], sudah ada isinya dengan ilustrasi sebagai berikut : A B C D E F G H I J K L M N O Susun program (penggalan program) untuk mencetak isi array tersebut sehingga tercetak dengan urutan sebagai berikut : A B C D E F G H I J K L M N O Program? 297

58 A B C D E F G H I J K L M N O Program? Contoh-7e.
Sudah ada array Satu Dimensi yang dibuat dengan char A[15], sudah ada isinya dengan ilustrasi sebagai berikut : A B C D E F G H I J K L M N O Susun program (penggalan program) untuk mencetak isi array tersebut sehingga tercetak dengan urutan sebagai berikut : A B C D E F G H I J K L M N O Program? 297

59 A F K B G L C H M D I N E J O Program? Contoh-7f.
Sudah ada array Satu Dimensi yang dibuat dengan char A[15], sudah ada isinya dengan ilustrasi sebagai berikut : A B C D E F G H I J K L M N O Susun program (penggalan program) untuk mencetak isi array tersebut sehingga tercetak dengan urutan sebagai berikut : A F K B G L C H M D I N E J O Program? 297

60 A B C D E F G H I J K L M N O Contoh-7. I J N Tercetak : 1 2 3 1 2 3 4
A B C D E F G H I J K L M N O I J N Tercetak : A B C D E F G H I J K L M N O 1 2 3 1 2 3 4 5 1 2 3 4 5 6 7 8 9 10 11 12 13 14 Cara-1, menggunakan nested loop N = 0; for(I=1; I <= 3; I++) { for(J=1; J<=5; J++) { printf(“%2c”, A[ N ] ); N = N + 1; } printf(“\n”); 297

61 Contoh-7. A B C D E F G H I J K L M N O I J N 1 2 3 1 2 3 4 5 1 2 3 4
A B C D E F G H I J K L M N O Tercetak : A B C D E F G H I J K L M N O I J N 1 2 3 1 2 3 4 5 1 2 3 4 5 6 7 8 9 10 11 12 13 14 N = 0; for(I=1; I <= 3; I++) { for(J=1; J<=5; J++) { printf(“%2c”, A[ N ] ); N = N + 1; } 297

62 A B C D E F G H I J K L M N O Contoh-7. Tercetak :
A B C D E F G H I J K L M N O I J (I-1)*5 + J-1 Tercetak : A B C D E F G H I J K L M N O 1 2 3 1 2 3 4 5 1 2 3 4 5 6 7 8 9 10 11 12 13 14 Cara-2, Tidak menggunakan variabel N for(I=1; I <= 3; I++) { for(J=1; J<=5; J++) { printf(“%2c”, A[(I-1)*5 + j-1 ] ); } printf(“\n”); 297

63 Cara-3, Tidak menggunakan Nested Loop Menggunakan MOD
Contoh-7. A B C D E F G H I J K L M N O Tercetak : A B C D E F G H I J K L M N O I I % 5 = 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 2 3 4 Cara-3, Tidak menggunakan Nested Loop Menggunakan MOD for(I=1; I<=15; I++ ) { printf(“%2c”, A[ I-1] ); if ( I%5 == 0) printf(“\n”); } 298

64 Cara-4, Tidak menggunakan MOD
Contoh-7. A B C D E F G H I J K L M N O Tercetak : A B C D E F G H I J K L M N O I n 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 2 3 4 5 Cara-4, Tidak menggunakan MOD n = 0; for(I=0; I <= 14; I++ ) { printf(“%2c”, A[ I] ); n = n + 1; if(n == 5) { printf(“\n”); n = 0; } } 298

65 n = 0; for(I=0; I <= 14; I++ ) { printf(“%2c”, A[ I] ); n = n + 1; if(n == 5) { printf(“\n”); n = 0; } } Perkembangan nilai I dan nilai n while (I<=14) n = n+1 if (n==5) printf ( “\n” ) nilai n sekarang I n printf I++ 1 2 3 4 5 6 7 8 9 10 dst 1 2 3 4 dst T dst A[0] A[1] A[2] A[3] A[4] A[5] A[6] A[7] A[8] A[9] A[10] dst 1 2 3 4 5 dst F F F F True 1 dst pindah baris tetap = 1 tetap = 2 tetap = 3 tetap = 4 menjadi 0 dst 1 2 3 4 5 6 7 8 9 10 11 dst

66 Contoh-8. Sudah ada array Satu Dimensi yang dibuat dengan char A[15],
sudah ada isinya dengan ilustrasi sebagai berikut : A B C D E F G H I J K L M N O Susun program (penggalan program) untuk mencetak isi array tersebut sehingga tercetak dengan urutan sebagai berikut : A B C D E F G H I J K L M N O Ada 5 baris, ----> I = 1 to 5 Baris 1, I=1 --> J = 1 to 1 atau 1 to I Baris 2, I=2 --> J = 1 to 2 atau 1 to I Baris 3, I=3 --> J = 1 to 3 atau 1 to I Baris 4, I=4 --> J = 1 to 4 atau 1 to I Baris 5, I=5 --> J = 1 to 5 atau 1 to I Jawab-8 Cara-1 menggunakan nested loop atau N = 0; I = 1; while( I<= 5) {J = 1; while (J <= I) { printf(“%2c”, A[N]); N = N + 1; J++; } printf(“\n”); I++; N = 0; for( I=1; I <= 5; I++) {for(J=1; J<=I; J++ ) { printf(“%2c”, A[ N ] ); N = N + 1; } printf(“\n”); Batas tertinggi nilai J adalah I Perkembangan nilai I, J dan N I 1 2 3 4 5 J 1 2 3 4 5 N 1 2 3 4 5 6 7 8 9 10 11 12 13 14 I dan J digunakan untuk pembentuk loop (nested loop) N digunakan untuk indeks penunjuk elemen array N tidak dihubungkan dengan nilai I dan J, tapi N berdiri sendiri mulai dari 0 (nol) dan selalu naik 1, sampai dengan sebanyak yang diatur oleh loop

67 11. 67 Contoh-8. Sudah ada array Satu Dimensi yang dibuat dengan char A[15], sudah ada isinya dengan ilustrasi sebagai berikut : A B C D E F G H I J K L M N O Susun program (penggalan program) untuk mencetak isi array tersebut sehingga tercetak dengan urutan sebagai berikut : A B C D E F G H I J K L M N O Ada 5 baris, ----> I = 1 to 5 Baris 1, I=1 --> J = 1 to 1 atau 1 to I Baris 2, I=2 --> J = 1 to 2 atau 1 to I Baris 3, I=3 --> J = 1 to 3 atau 1 to I Baris 4, I=4 --> J = 1 to 4 atau 1 to I Baris 5, I=5 --> J = 1 to 5 atau 1 to I Jawab-8 Cara-1 menggunakan nested loop atau N = 0; I = 1; while( I<= 5) {J = 1; while (J <= I) { printf(“%2c”, A[N]); N = N + 1; J++; } printf(“\n”); I++; N = 0; for( I=1; I <= 5; I++) {for(J=1; J<=I; J++ ) { printf(“%2c”, A[ N ] ); N = N + 1; } printf(“\n”); Batas tertinggi nilai J adalah I Perkembangan nilai I, J dan N I 1 2 3 4 5 J 1 2 3 4 5 N 1 2 3 4 5 6 7 8 9 10 11 12 13 14 I dan J digunakan untuk pembentuk loop (nested loop) N digunakan untuk indeks penunjuk elemen array N tidak dihubungkan dengan nilai I dan J, tapi N berdiri sendiri mulai dari 0 (nol) dan selalu naik 1, sampai dengan sebanyak yang diatur oleh loop

68 11. 68 Contoh-9. Sudah ada array Satu Dimensi yang dibuat dengan char A[15], sudah ada isinya dengan ilustrasi sebagai berikut : A B C D E F G H I J K L M N O Susun program (penggalan program) untuk mencetak isi array tersebut sehingga tercetak dengan urutan sebagai berikut : A B C D E F G H I J K L M N O Ada 5 baris, ----> I = 1 to 5 Baris 1, I=1 --> J = 1 to 5 atau 1 to 6-I Baris 2, I=2 --> J = 1 to 4 atau 1 to 6-I Baris 3, I=3 --> J = 1 to 3 atau 1 to 6-I Baris 4, I=4 --> J = 1 to 2 atau 1 to 6-I Baris 5, I=5 --> J = 1 to 1 atau 1 to 6-I Jawab-9 atau N = 0; I = 1; while( I<= 5) { J = 1; while( J<=6-I) { printf(“%2c”,A[N]); N = N + 1; J++; } printf(“\n”); I++; N = 0; for( I=1; I <= 5; I++) { for(J=1; J<=6-I; J++ ) { printf(“%2c”,A[N]); N = N + 1; } printf(“\n”); Dalam setiap loop batas tertinggi nilai J adalah = 6-I Perkembangan nilai I, J dan N I 1 2 3 4 5 J 1 2 3 4 5 N 1 2 3 4 5 6 7 8 9 10 11 12 13 14 I dan J digunakan untuk mengatur loop (nested loop) N digunakan untuk indeks penunjuk elemen array N tidak dihubungkan dengan nilai I dan J, tapi N berdiri sendiri mulai dari 0 (nol) dan selalu naik 1, sampai dengan sebanyak yang diatur oleh loop

69 11. 69 Contoh-10. Sudah ada array Satu Dimensi yang dibuat dengan char A[15], sudah ada isinya dengan ilustrasi sebagai berikut : A B C D E F G H I J K L M N O Susun program (penggalan program) untuk mencetak isi array tersebut sehingga tercetak dengan urutan sebagai berikut : A F K B G L C H M D I N E J O Ada 5 baris, ----> I = 0 to 4 Baris 1, I=0 --> dicetak : A[0], A[5], A[10] Baris 2, I= atau : A[I], A[I+5], A[I+10] Baris 3, I=2 Baris 4, I=3 Baris 5, I=4 Jawab-10 I = 0; while( I<= 4) { printf(“%c %c %c \n”, A[I], A[I+5], A[I+10] ); I++; } pada satu harga I dicetak 3 elemen array ada jarak satu spasi Contoh-11. Sudah ada array Satu Dimensi yang dibuat dengan char A[16], sudah ada isinya dengan ilustrasi sebagai berikut : A B C D E F G H I J K L M N O P Susun program (penggalan program) untuk mencetak isi array tersebut sehingga tercetak dengan urutan sebagai berikut : A B D G K P A B C D E F G H I J K L M N O P Nilai I : Jawab.11 X = 1; I = 0; while( I<= 15) { printf(“\n%c”,A[I]); I = I + X; X++; } X sebagai penambah nilai I. X nilai awalnya dibuat = 1 I tidak ditambah 1 tapi ditambah dengan X dimana X awalnya = 1 dan selalu naik 1

70 11. 70 11.8 Menyalin isi array ke array lain.
Contoh-1. Sudah ada array A Satu Dimensi yang dibuat dengan int A[11]. Sudah ada isinya dengan ilustrasi sebagai berikut : A 12 17 10 5 15 25 11 7 25 16 19 Sudah ada array B Satu Dimensi yang dibuat dengan int B[11]. Belum diisi dengan ilustrasi sebagai berikut : B Susun program untuk menyalin isi array A ke array B, sehingga isi array B menjadi : B 12 17 10 5 15 25 11 7 25 16 19 Jawab-1 Ilustrasi proses: A 12 17 10 5 15 25 11 7 25 16 19 B 12 17 10 5 15 25 11 7 25 16 19 Cara-1. Cara-2. Cara-3. I = 0; while( I<= 10) { B[I] = A[I]; I++; } I = 0; J = 0; while( I<= 10) { B[J] = A[I]; J++; I++; } I = 10; while( I>= 0) {B[I] = A[I]; I--; } Disalin dari A[0] sampai dengan A[10] Disalin dari A[10] sampai dengan A[0] Disalin dari A[0] sampai dengan A[10] A dengan indeks I, dan B dengan indeks J

71 11. 71 Contoh-2. Sudah ada array A Satu Dimensi yang dibuat dengan int A[11]. Sudah ada isinya dengan ilustrasi sebagai berikut : A 12 17 10 5 15 25 11 7 25 16 19 Sudah ada array B Satu Dimensi yang dibuat dengan int B[11]. Belum diisi dengan ilustrasi sebagai berikut : B Susun program untuk menyalin isi array A ke array B, sehingga isi array B menjadi : B 19 16 25 7 11 25 15 5 10 17 12 Jawab-2 Ilustrasi Proses A 12 17 10 5 15 25 11 7 25 16 19 B 19 16 25 7 11 25 15 5 10 17 12 Cara-1. Cara-2. Cara-3. I = 0; while( I<= 10) { B[10-I] = [I]; I++; } I = 0; J = 10; while( I<= 10) { B[J] = A[I]; I++; J--; } I = 10; while( I>= 0) { B[10-I] = A[I]; I--; } Disalin dari A[0] ke B[10] sampai dengan A[10] ke A[0] Disalin dari A[0] ke B[10] sampai dengan A[10] ke A[0] dimana A menggunakan indeks I dan B menggunakan indeks J Disalin dari A[10] ke B[0] sampai dengan A[0] ke B[10]

72 11. 72 Contoh-3. Sudah ada array A Satu Dimensi yang dibuat dengan int A[11]. Sudah ada isinya dengan ilustrasi sebagai berikut : A 12 17 10 5 15 25 11 7 25 16 19 Sudah ada array B Satu Dimensi yang dibuat dengan int B[11]. Belum diisi dengan ilustrasi sebagai berikut : B Susun program untuk menyalin isi array A yang nilainya lebih besar dari 15 ke array B, sehingga isi array B menjadi : B 17 25 25 16 19 Jawab-3 Ilustrasi proses: A 12 17 10 5 15 25 11 7 25 16 19 B 17 25 25 16 19 Cara-1. Cara-2. Cara-3. I = 0; while( I<= 10) {if(A[I] > 15) B[I] = A[I]; I++; } I = 0; J = 0; while( I<= 10) {if(A[I] > 15) B[J] = A[I]; J++; I++; } I = 10; while( I>= 0) {ifA[I] > 15) B[I]=A[I]; I--; } Disalin dari A[0] sampai dengan A[10] Disalin dari A[10] sampai dengan A[0] Disalin dari A[0] sampai dengan A[10] A dengan indeks I, dan B dengan indeks J

73 11. 73 Contoh-4. Sudah ada array A Satu Dimensi yang dibuat dengan int A[11]. Sudah ada isinya dengan ilustrasi sebagai berikut : A 12 17 10 5 15 25 11 7 25 16 19 Sudah ada array B Satu Dimensi yang dibuat dengan int B[11]. Belum diisi dengan ilustrasi sebagai berikut : B Susun program untuk menyalin isi array A yang nilainya lebih besar dari 15 ke array B, sehingga isi array B menjadi : B 17 25 25 16 19 Jawab-4 Ilustrasi proses: A 12 17 10 5 15 25 11 7 25 16 19 B 17 25 25 16 19 Cara-1. I = 0; J = 0; while( I<= 10) { if(A[I] > 15) { B[J] = A[I]; J++; } I++; } J baru ditambah dengan 1 bila sudah mengisi satu elemen pada array B Array A dengan indeks I, dan array B dengan indeks J.

74 11. 74 Contoh-5. Sudah ada array A Satu Dimensi yang dibuat dengan int A[11]. Sudah ada isinya dengan ilustrasi sebagai berikut : A 12 17 10 5 15 25 11 7 25 16 19 Sudah ada array B Satu Dimensi yang dibuat dengan int B[11]. Belum diisi dengan ilustrasi sebagai berikut : B Susun program untuk menyalin 6 elemen pertama isi array A , ke array B, sehingga isi array B menjadi : B 12 17 10 5 15 25 Jawab-5 Ilustrasi proses: Array A naik satu langkah A 12 17 10 5 15 25 11 7 25 16 19 B 12 17 10 5 15 25 Array B naik dua langkah Cara-1. I = 0; J = 0; while( I<= 10) { B[J] = A[I]; J+=2; I++; } J selalu ditambah 2, sedangkan I selalu ditambah 1 Array A naik satu langkah, array B naik 2 langkah.

75 11. 75 Contoh-6. Sudah ada array A Satu Dimensi yang dibuat dengan int A[11]. Sudah ada isinya dengan ilustrasi sebagai berikut : A 12 17 10 5 15 25 11 7 25 16 19 Sudah ada array B Satu Dimensi yang dibuat dengan int B[11]. Belum diisi dengan ilustrasi sebagai berikut : B Susun program untuk menyalin 5 elemen pertama isi array A , ke array B, sehingga isi array B menjadi : B 12 17 10 5 15 Jawab Ilustrasi proses: A 12 17 10 5 15 25 11 7 25 16 19 Array A selalu naik satu langkah B 12 17 10 5 15 Array B selalu naik X langkah, dimana X awalnya = 1, kemudian X selalu naik 1. Cara-1. I = 0; J = 0; while( I<= 10) { B[J] = A[I]; J+=X; X++; I++; } J selalu ditambah X, dimana X selalu ditambah 1

76 11. 76 11.9. Soal-Soal Latihan Mandiri.
Soal-1. Sudah ada array A Satu Dimensi yang dibuat dengan int A[9]. Belum ada isinya dengan ilustrasi sebagai berikut : Gambarkan kembali array tersebut lengkap dengan isinya bila diisi dengan program sebagai berikut : a. I=0; while(I<=8) { A[I] = I; I++; } b. I=0; while(I<=8) { A[I] = I; I+=2; } c. I=8; while(I>=0) { A[I] = I; I--; } d. I=0; while(I<=8) { A[I] = I*2+1; I++; } e. I=0; while(I<=8) { A[I] = pow(2,(I-1)); I++; } f. N =1; I=0; while(I<=8) { A[I] = N; N++; I++; } g. N =1; I=0; while(I<=8) { A[I] = N; N+=2; I++; } h. N =5; I=0; while(I<=8) { A[I] = N; N+=3; I++; } i. N =1; I=0; while(I<=8) { A[I] = N; N++; I+=N; } j. N = 1; X = 1; I = 0; while(I<=8) { A[I] = N; N+=X; X+=1; I++; } k. N = 1; X = 1; I = 0; while(I<=8) { A[I] = N; N++; X+=1; I+=X; }

77 11. 77 Soal-2. Sudah ada array A Satu Dimensi yang dibuat dengan int A[11]. Belum ada isinya dengan ilustrasi sebagai berikut : Susun program (penggalan program) untuk mengisi array tersebut sehingga isinya menjadi sebagai berikut : a. 1 2 3 4 5 6 b. 1 3 5 7 9 11 c. 1 3 6 10 d. 2 5 9 e. 2 6 12 20 30 f. 100 95 85 70 50 g. 5 4 3 2 1 h. 1 2 3 4 5 i. 1 3 6 10

78 11. 78 Soal-3. Sudah ada array A Satu Dimensi yang dibuat dengan int A[11]. Belum ada isinya dengan ilustrasi sebagai berikut : Dalam dokumen ada data tertulis dengan urutan sebagai berikut : 12, 15, 7, 10, 5, 2, 17, 25, 9, 20, 35, 28, 14, 11, 999 (999 sebagai End Of Data) Susun program (penggalan program) untuk menginput data dalam dokumen diatas, satu persatu (mulai dari urutan paling kiri) dan menyimpannya kedalam array sehingga isi array menjadi : a. 12 15 7 10 5 2 17 25 9 20 35 b. 35 20 9 25 17 2 5 10 7 15 12 diisi berurutan dari belakang c. 12 15 7 10 5 2 Yang disimpan hanya bila data yang diinput bernilai lebih besar dari 9.Disimpan sesuai dengan urutan letak data dalam dokumen, Diinput sebatas data yang ada dan sebatas tempat array yang tersedia. d. 12 15 10 17 25 20 35 Yang disimpan hanya bila data yang diinput bernilai lebih besar dari 9. Disimpan berderetan dalam array, Diinput sebatas data yang ada dan sebatas tempat array yang tersedia. e. 12 15 10 17 25 20 35 28 14 Yang disimpan hanya bila nilai yang diinput yang bernilai ganjil. Nilai yang diinput sebatas nilai yang ada, dan sebatas tempat yang tersedia Nilai 999 hanya sebagai batas, tidak ikut disimpan f. 15 7 5 17 25 9 35 11 Yang disimpan hanya bila data yang diinput yang bernilai ganjil. Disimpan dalam array sesuai dengan tata letak (urutannya) dalam okumen. Nilai yang diinput sebatas nilai yang ada, dan sebatas tempat yang tersedia Nilai 999 hanya sebagai batas, tidak ikut disimpan g. 15 7 5 17 25 9 35

79 11. 79 Soal-4. Sudah ada array A Satu Dimensi yang dibuat dengan int A[12]. Sudah ada isinya dengan ilustrasi sebagai berikut : 12 15 7 10 5 2 17 25 9 20 35 14 Susun program (penggalan program) untuk mencetak isi array tersebut sehingga tercetak sebagai berikut : Catatan : Setiap nilai menempati 4 lokasi (space) a. b. c. (hanya yang bernilai lebih besar dari 9) d (hanya yang bernilai ganjil) Untuk Soal e, f dan g, setiap baris, maksimal 3 buah nilai e. f. 35 14 g. 35 ( hanya yang bernilai lebih besar dari 9) ( hanya yang bernilai ganjil) Soal-5. Sudah ada array Satu Dimensi yang dibuat dengan char A[15], sudah ada isinya dengan ilustrasi sebagai berikut : A B C D E F G H I J K L M N O Susun program (penggalan program) untuk mencetak isi array tersebut sehingga tercetak sebagai berikut : a. A B C D E F G H I J K L M N O b. A B C D E F G H I J K L M N O c. A B C D E F G H I J K L M N O d. A B C D E F G H I J K L M N O e. A B C D E F G H I J K L M N O f. A B C D E F G H O N M L K J I H g. A B C D E F G H I J K L M N O h. A B D G K

80 11. 80 Soal-6. Sudah ada array A Satu Dimensi yang dibuat dengan int A[12]. Sudah ada isinya dengan ilustrasi sebagai berikut : 12 15 7 10 5 2 17 25 9 20 35 14 Apa yang tercetak bila array diatas dicetak dengan instruksi (penggalan program) berikut ini : a. I=0; while(I<=11) {printf(“%4i”, A[I]); I++; } b. I=0; while(I<=11) {printf(“\n%4i”, A[I]); I+=4; } c. I=0; while(I<=11) {printf(“%4i”, A[11-I]); I++; } d. I=0; while(I<=11) {printf(“\n%4i”, A[I*2+1]); I+=3; } e. I=0; while(I<=11) {if(I<20) printf(“%4i”, A[I]); I++; } f. I=0; while(I<=11) {if(I%2 == 0) printf(“%4i”, A[I]); I++; } g. I=0; while(I<=11) {if(fmod(I,2) == 0) printf(“%4i”, A[I]); I++; } h. N=1; I=0; while(I<=11) { printf(“%4i”, A[N]); N++; I+=2; } g. N=1; I=0; while(I<=11) { printf(“%4i”, A[N]); N++; I+=N; } h. N=1; X=1; I=0; while(I<=11) { printf(“%4i”, A[N]); N++; I+=X; X++; }

81 11. 81 Soal-7. Sudah ada array Satu Dimensi yang dibuat dengan char A[15], sudah ada isinya dengan ilustrasi sebagai berikut : A B C D E F G H I J K L M N O Apa yang tercetak bila array diatas dicetak dengan instruksi (penggalan program berikut ini : a. I=0; while(I<=4) {J=0; while(J<=2) {printf(“%3c”, A[I*3 + J]); J++; } printf(“\n”); I++; b. N=0; I=0; while(I<=4) { J=0; while(J<=2) { printf(“%3c”, A[N]); J++; } printf(“\n”); I++; c. I=0; while(I<=14) { printf(“%3c”, A[I]); if((I+1)%3 == 0) printf(“\n”); I++; } d. N=0; I=0; while(I<=14) { printf(“%3c”, A[I]); N++; if( N == 3) { printf(“\n”); N = 0; } I++; e. N=0; I=1; while(I<=4) { J=I; while(J<=4) { printf(“%3c”, A[N]); J++; } printf(“\n”); I++; f. N=0; I=1; while(I<=4) { J=1; while(J<=I) { printf(“%3c”, A[N]); J++; } printf(“\n”); I++;

82 11. 82 Soal-8. Sudah ada array Satu Dimensi yang dibuat dengan char A[15], sudah ada isinya dengan ilustrasi sebagai berikut : A B C D E F G H I J K L M N O Apa yang tercetak bila array diatas dicetak dengan instruksi (penggalan program berikut ini : a. N=0; I=1; while(I<=4) { X=1; while(X <= I-1) { printf(“ “); X++; } J=I; while(J<=4) { printf(“%3c”, A[N]); J++; printf(“\n”); I++; b. N=0; I=1; while(I<=4) { X=I; while(X <= 3) { printf(“ “); X++: } J=1; while(J<=I) { printf(“%3c”, A[N]); J++; printf(“\n”); I++;

83

84

85

86

87

88

89

90 291

91

92

93

94 N = 5; for ( I=0; I<=10; I++) { A[I] = N; N+=3; } N I N
Contoh-9 I I 1 2 3 4 5 6 7 8 9 10 11 N N 5 8 11 14 17 20 23 26 29 32 35 5 8 11 14 17 20 23 26 29 32 35 Cara - 2, pakai for N = 5; for ( I=0; I<=10; I++) { A[I] = N; N+=3; } 289

95 N = 5; I=0; while( I<=10 ) { A[I] = N; N+=3; I++; } N I N
Contoh-9 I I 1 2 3 4 5 6 7 8 9 10 11 N N 5 8 11 14 17 20 23 26 29 32 35 5 8 11 14 17 20 23 26 29 32 35 Cara - 2, pakai while N = 5; I=0; while( I<=10 ) { A[I] = N; N+=3; I++; } 289

96

97 for(I=0; I<=10; I++) { A[I] = I*3+5; } N I N Cara - 1, pakai for
Contoh-9 I 1 2 3 4 5 6 7 8 9 10 11 N I N 5 8 11 14 17 20 23 26 29 32 35 5 8 11 14 17 20 23 26 29 32 35 Cara - 1, pakai for for(I=0; I<=10; I++) { A[I] = I*3+5; } 289

98 I=0; while( I<=10 ) { A[I] = I*3+5; I++; } N I N
Contoh-9 I I 1 2 3 4 5 6 7 8 9 10 11 N N 5 8 11 14 17 20 23 26 29 32 35 5 8 11 14 17 20 23 26 29 32 35 Cara - 1, pakai while I=0; while( I<=10 ) { A[I] = I*3+5; I++; } 289

99 N = 5; for ( I=0; I<=10; I++) { A[I] = N; N+=3; } N I N
Contoh-9 I I 1 2 3 4 5 6 7 8 9 10 11 N N 5 8 11 14 17 20 23 26 29 32 35 5 8 11 14 17 20 23 26 29 32 35 Cara - 2, pakai for N = 5; for ( I=0; I<=10; I++) { A[I] = N; N+=3; } 289

100 N = 5; I=0; while( I<=10 ) { A[I] = N; N+=3; I++; } N I N
Contoh-9 I I 1 2 3 4 5 6 7 8 9 10 11 N N 5 8 11 14 17 20 23 26 29 32 35 5 8 11 14 17 20 23 26 29 32 35 Cara - 2, pakai while N = 5; I=0; while( I<=10 ) { A[I] = N; N+=3; I++; } 289

101

102 5 8 13 20 29 40 53 68 85 104 I N Contoh-10 Program?

103 Program? I N X X awalnya = 3, dan selalu bertambah 2 5 8 13 20 29 40
53 68 85 104 I N Contoh-11 X Program? X awalnya = 3, dan selalu bertambah 2

104 N = 5; X = 3; for ( I=1; I<=10; I++) { A[I] = N; N = N + X;
Contoh-11 I I 1 2 3 4 5 6 7 8 9 10 11 N N 5 8 13 20 29 40 53 68 85 104 5 8 13 20 29 40 53 68 85 104 Cara - 1 N = 5; X = 3; for ( I=1; I<=10; I++) { A[I] = N; N = N + X; X = X + 2; }

105 for(I=1; I<=10; I++) { A[I] = I * I + 4; } A[I] = (I+1)(I-1) + 5 I
Contoh-11 I I 1 2 3 4 5 6 7 8 9 10 11 N 5 8 13 20 29 40 53 68 85 104 5 8 13 20 29 40 53 68 85 104 Cara - 2 for(I=1; I<=10; I++) { A[I] = I * I + 4; } Rumus Asli A[I] = (I+1)(I-1) + 5


Download ppt "291."

Presentasi serupa


Iklan oleh Google