pertemuan 14 contoh pemecahan masalah 2

Upload: heri

Post on 09-Mar-2016

240 views

Category:

Documents


0 download

DESCRIPTION

alpro

TRANSCRIPT

  • TEL 2112 Dasar Komputer & Pemograman Contoh Pemecahan Masalah 2Dosen: Abdillah, S.Si, MITEmail: [email protected]: http://abdill01.wordpress.com

  • TujuanMahasiswa mampu menyelesaikan masalah berdasar contoh algoritma penyelesaian masalah dan listing programnya.

  • 1. Menentukan PerpangkatanBuatlah algoritma dan program C yang membaca nilai x dan y kemudian memanggil fungsi pangkat yang menghitung perpangkatan xy dan mengembalikan nilai xy. Program juga menampilkan nilai xy tersebut di layar monitor

  • AlgoritmaPROGRAM Hitung_Pangkat{ Program yang menghitung nilai x pangkat y }DEKLARASIx, hasil : integerfunction Pangkat (input x : integer) integerALGORITMA:read (x)hasil Pangkat(x)write (xy = hasil)

  • Algoritmafunction Pangkat (input x : integer) integer{ Menghitung nilai x pangkat y } DEKLARASIi,y, pangkat: integerALGORITMA:read (y)pangkat 1for (i1 to y) dopangkat pangkat * xi i + 1 return pangkat

  • #include int Pangkat(int x);void main(){int x, hasil; printf("x = "); scanf("%d", &x);hasil = Pangkat(x);printf("x pangkat y = %d \n", hasil);}int Pangkat(int x)/* Mengembalikan nilai x pangkat y */{int i,y,pangkat = 1;printf("y = "); scanf("%d", &y);for (i=1; i
  • 2. Menghitung DeretBuatlah algoritma dan program C yang membaca nilai N kemudian memanggil fungsi deret yang menghitung 1 + 2 + 3 + ... + N dan mengembalikan nilai penjumlahan deret. Program juga menampilkan nilai penjumlahan deret tersebut di layar monitor.

  • AlgoritmaPROGRAM Hitung_Deret{ Program yang menghitung nilai deret }DEKLARASIN : integerfunction Deret (input N : integer) integerALGORITMA:read (N)write (Jumlah deret N = Deret(N))

  • Algoritmafunction Deret (input N : integer) integer{ Menghitung nilai deret N } DEKLARASIi, deret : integerALGORITMA:deret 0;for (i1 to N)doderet deret + ii i + 1 return deret;

  • #include int Deret(int N);void main(){int N; printf("N = "); scanf("%d", &N);printf("Jumlah deret N = %d \n", Deret(N));}int Deret(int N)/* Mengembalikan nilai deret N */{int i, deret = 0;for (i=1; i
  • 3. Menentukan FaktorialBuatlah algoritma dan program C yang membaca nilai N, kemudian memanggil fungsi Faktorial yang menghitung N! = 1 x 2 x 3 x ... x N dan mengembalikan nilai N! Program utama kemudian menampilkan nilai N! tersebut di akhir program.

  • AlgoritmaPROGRAM Hitung_Faktorial { Program yang menghitung nilai faktorial }DEKLARASIN : integerfunction Faktorial (input N : integer) integerALGORITMA: read (N)write (N! = Faktorial(N))

  • Algoritma function Faktorial (input N : integer) integer{ Menghitung nilai N faktorial } DEKLARASI i, faktorial : integerALGORITMA:faktorial 1;for (i1 to N) dofaktorial faktorial * ii i + 1 return faktorial

  • #include int Faktorial(int N);void main(){int N; printf("N = "); scanf("%d", &N);printf("N! = %d \n", Faktorial(N));}int Faktorial(int N)/* Mengembalikan nilai N faktorial */{int i, faktorial = 1;for (i=1; i
  • 4. Menentukan Data TerkecilTulislah algoritma dan listing program C yang menentukan bilangan terkecil dari N buah data integer yang dibaca dari papan ketik dan disimpan dalam sebuah array. Nilai N ditentukan maksimum 20.

  • AlgoritmaPROGRAM Cari_Minimum{Menentukan bilangan terkecil dari N buah data integer}

    DEKLARASIN = 20, bil[N], nmin, jml, i : integerfunction Min (input X[ ],k : integer) integer

    ALGORITMA:read (jml)for (i 0 to jml-1) doread ( bil[i] )endfornmin Min(bil,jml)write (nmin)

  • Algoritma Fungsi Minfunction Min (input X[ ],k : integer) integer{ Mengembalikan nilai minimum }

    DEKLARASIminimum : integer

    ALGORITMA:minimum X[0]for i 1 to k doif X[i] < minimum then minimum X[i] endifendforreturn (minimum)

  • #include #define N 20

    int Min(int X[],int k);int i;

    void main(){ int jml, nmin, bil[N]; printf("Jumlah bilangan (maks 20) : "); scanf("%d",&jml); for (i=0;i

  • int Min(int X[],int k){ int minimum = X[0]; for (i=1;i
  • 5. Pengurutan ArrayAda banyak metoda pengurutan array, namun salah satu metode yang populer adalah Bubble Sort. Jumlah tahap pengurutan = jumlah bilangan 1Banyaknya perbandingan pada setiap tahap = jumlah bilangan nomor tahapMisalnya Anda memiliki empat buah angka: 10-5-7-3 yang akan diurutkan dari yang terkecil hingga yang terbesar (ascending). Metode Bubble Sort akan membagi proses pengurutan menjadi tiga tahap

  • #include #define N 20

    int i,j,A[N]; void bubble(int n);

    void main(){ int jml; printf("Masukkan jumlah bilangan (maks 20) : "); scanf("%d",&jml); printf("\n"); for (i=0;i

  • void bubble(int n){ int temp; for (i=1;i