Top Banner

of 38

p2 - Review Looping, Percabangan Dan Array_2

Oct 12, 2015

Download

Documents

Shofa Dumy

file presentasi ini berisi penjelasan mengenai review looping, percabangan dan array. dalam dokumen ini disertakan contoh berdasarkan materi yang sudah ada.
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
  • LOOPING, PERCABANGAN DAN ARRAYAlgoritma dan Struktur DataChristine Dewi S.Kom.

  • LOOPING (PERULANGAN)Pengertian LoopingBeberapa instruksi diulang untuk suatu jumlah pengulangan yang tertentu.Jumlah pengulangan dapat diketahui sebelumnya atau ditentukan dalam perjalanan program.

    Kegunaan LoopingMeringkas algoritma (atau program) dengan mengotomatisasi perintah-perintah yang sama yang dikerjakan berulang-ulang.Struktur loop sangat efektif karena dapat menyingkat puluhan (bahkan mungkin ratusan hingga ribuan baris kode) menjadi beberapa baris perintah saja.

  • JENIS-JENIS LOOP DALAM BAHASA Cfor Loopwhile Loopdo while Loop

  • FORFormatfor (inisialisasi; kondisi; increment/decrement){statement;}Contoh:printf(It is fun!\n);printf(It is fun!\n);printf(It is fun!\n);printf(It is fun!\n);printf(It is fun!\n);printf(It is fun!\n);printf(It is fun!\n);printf(It is fun!\n);printf(It is fun!\n);printf(It is fun!\n);

    for (n=0; n

  • WHILEFormat:while (boolean expression){statement;}

    Contoh:while (n

  • DO WHILEFormat:do {statement;}while (boolean expression);

    Contoh:do {printf(It is fun!\n); }while (n

  • NESTED LOOP

    /* Program Segitigaa */#include int n;void main(){

    printf("n = ");scanf("%d",&n);

    printf("\n");for(int i=1;i

  • CONTOH.??????

    i/j123411111222233344

  • CONTOH.JAWAB :/* Program Segitigaa */#include int n;void main(){printf("n = ");scanf("%d",&n);printf("\n");for(int i=1;i=i ; j--) {printf(" %d",i);}printf(" \n");}

    }

  • Baris = iKolom = ji= 1 j=4 4>=1 ? Ya cetak i = 1 j--

    j=3 3 >=1 ? Ya cetak i = 1 j--

    j=2 2>=1 ? Ya cetak i = 1 j--

    j=1 1>=1 ? Ya cetak i = 1 j--

    j=0 0>=1 ? Tidak keluar i++

    i= 2 j=4 4>=2 ? Ya cetak i = 2 j--

    j=3 3 >=2 ? Ya cetak i = 2 j--

    j=2 2>=2 ? Ya cetak i = 2 j--

    j=1 1>=2 ? keluar i++

    i/j123411111222233344

  • i= 3 j=4 4>=3 ? Ya cetak i = 3 j--

    j=3 3 >=3 ? Ya cetak i = 3 j-- j=2 2 >=3 ? Tidak keluar i++i= 4 j=4 4 >=4 ? Ya cetak i = 4 j-- j=5 5 >=5 ? Tidak Selesai.i= 1 j=4 4>=1 ? Ya cetak i = 1 j--

    j=3 3 >=1 ? Ya cetak i = 1 j--

    j=2 2>=1 ? Ya cetak i = 1 j--

    j=1 1>=1 ? Ya cetak i = 1 j--

    j=0 0>=1 ? Tidak keluar i++

    i= 2 j=4 4>=2 ? Ya cetak i = 2 j--

    j=3 3 >=2 ? Ya cetak i = 2 j--

    j=2 2>=2 ? Ya cetak i = 2 j--

    j=1 1>=2 ? keluar i++

  • OUTPUTNYA :

    1111222334

  • PERCABANGANPernyataan yang dipakai untuk mengambil keputusan berdasarkan suatu kondisi. Bentuk pernyataan ini ada dua macam :ifif elseswitch case

  • Format if:

    Format if-else:if (kondisi) {pernyataan;}if(kondisi) { pernyataan1;}else { pernyataan2;}if(kondisi1) { Pernyataan1;}else if(kondisi2) { Pernyataan2;}else if(kondisi3) { Pernyataan3;}else { pernyataan4;}

  • SWITCHSwitch(ungkapan){ case ungkapan1: pernyataan1; break; case ungkapan2: pernyataan2; break; ........ default: pernyataanDefault}

  • ARRAYSejauh ini program yang kita pelajari masih sangat terbatas, karena statement assignment hanya berupa pemberian satu nilai pada satu variabel Padahal sering kali kita perlu untuk meng-assign ataupun memanipulasi banyak nilai ke sekelompok variabelSebagai contoh jika anda membuat program yang membaca 10 nilai percobaan untuk dihitung nilai rata-rata-nya, akan sangat lucu jika kita menghitungnya dengan cara berikut: rata_rata = (x1 + x2 + x3 + x4 + x5 + + dst )/10.

  • TRY THIS..#include

    void main(){ int jumlah = 0; float rata2 = 0; int angka1; int angka2; printf("Masukkan Angka1 = "); scanf("%d",&angka1); jumlah += angka1; printf("\nangka1 = %d ",angka1); printf("\njumlah = %d ",jumlah); printf("\nMasukkan Angka2 = "); scanf("%d",&angka2); jumlah += angka2; printf("\nangka2 = %d ",angka2); printf("\njumlah = %d ",jumlah); rata2 = jumlah/2; printf("\nRata-rata = %f",rata2);

    }

  • SOLUSI == MENGGUNAKAN ARRAYArray: adalah kumpulan data bertipe sama yang menggunakan nama sama.

    Dengan menggunakan array, sejumlah variabel dapat memakai nama yang sama.

    Antara satu variabel dengan variabel lain di dalam array dibedakan berdasarkan subscript.

    Sebuah subscript berupa bilangan di dalam kurung siku.

  • MACAM-MACAM ARRAYArray 1 DimensiArray 2 DimensiArray 3 Dimensi

  • ARRAY 1 DIMENSIDeklarasi Array (1D, 2D dan 3D):Tipe data elemen arrayNama arrayJumlah elemen array

    Deklarasi 1 Dimensi:tipe_data nama_larik[ukuran];

    Contoh deklarasi Array 1 Dimensi:int val[ 5 ];//declaration

  • ASSIGNMENT PADA ARRAY 1 DIMENSICara 1:val[0] = 5;val[1] = 10;val[2] = 15;val[3] = 20;val[4] = 25;

    Cara 2:int val[5] = {5,10,15,20,25};

  • CONTOHContoh array integer 1D bernama n yg memiliki 5 elemen, n[0] = 1, n[1] = 3, n[2] = 5, n[3] = 7, n[4] = 9 dideklarasikan sbb: int n[5] = {1,3,5,7,9};

  • Akses Indeks pada Array

    Perhatikan index-nya, jangan sampai terjadi Error karena akses index yang tidak ada.

  • TRY THIS(1)#include

    void main(){ int jumlah = 0; float rata2 = 0; int angka[5];angka[0]=0;angka[1]=1;angka[2]=2;angka[3]=3;angka[4]=4;jumlah = angka[0]+angka[1]+angka[2]+ angka[3]+ angka[4];

    rata2 = jumlah/5; printf("Rata-rata = %4.2f",rata2);

    }manual

  • TRY THIS(2)#include

    void main(){ int jumlah = 0; float rata2 = 0; int angka[5];

    for(int i=0;i

  • TRY THIS(3)Inisialisasi langsung

  • ARRAY 2 DIMENSIMerupakan array yang terdiri dari m buah baris dan n buah kolom.

    Bentuknya dalam matriks atau tabel.

    Deklarasi Array 2 Dimensi:TipeData Nama_array[subscript_baris][ subscript_kolom]

  • CONTOHint X[3][4];

  • AKSES ARRAY 2 DIMENSIMisal ingin mengisi elemen array baris 2 kolom 3 dengan nilai 10, maka perintahnya:X[1][2] = 10;

  • TRY THIS.. (1)

  • TRY THIS.. (2)#includevoid main(){int matrik[3][3];int baris,kolom;for ( baris=0 ; baris
  • TRY THIS.. (3)#includevoid main(){int matrik[3][3];int baris,kolom;for ( baris=0 ; baris
  • TUGAS TAKE HOMEBuatlah program array Bahasa C.User harus menginputkan elemen matriks-nya.Tugas kelompok 2 orang.Kumpulkan softcopy email [email protected] yang berisi kode program, printscreen output.Subyek : ASDG_nim_nimBatas kumpul 23 januari 2012.Terlambat potong nilai = 50%.Copy paste/mayoritas sama nilai = 0!!;

  • OUTPUT

  • OUTPUT

  • OUTPUT

  • See u next week

    ***