Prakt5

download Prakt5

of 8

Transcript of Prakt5

  • 8/9/2019 Prakt5

    1/8

    Modul Teori Konsep Pemrograman MR-IT Center Madiun

    Praktikum 5 hlm. 1

    Praktikum 5 : FUNGSI

    1. Memanggil fungsi berulang-ulang

    2. Fungsi untuk menghitung jumlah triangular n

    /* File program :ulang.c */#include

    void cetak_pesan(void);

    main(){

    int i;

    for(i=1; i

  • 8/9/2019 Prakt5

    2/8

    Modul Teori Konsep Pemrograman MR-IT Center Madiun

    Praktikum 5 hlm. 2

    3. Menentukan faktor pembagi terbesar dari 2 bilangan bulat positif.

    /* File program : fpb1.c */#include

    void fpb(int, int);

    main(){

    fpb(150, 35);fpb(1026, 405);fpb(83, 240);

    }

    void fpb(int u, int v){

    int tampung;

    printf("FPB dari %d dan %d adalah ", u, v);while(v != 0){

    tampung = u % v;u = v;v = tampung;

    }printf("%d\n", u);

    }

  • 8/9/2019 Prakt5

    3/8

    Modul Teori Konsep Pemrograman MR-IT Center Madiun

    Praktikum 5 hlm. 3

    4. Menentukan faktor pembagi terbesar dari 2 bilangan bulat positif dan memberikan nilai kembali(return value)- nya.

    /* File program : fpb2.c */#include

    int fpb(int, int);

    main(){

    int hasil;

    hasil = fpb(150, 35);printf("FPB dari 150 dan 35 adalah %d\n", hasil);

    hasil = fpb(1026, 405);printf("FPB dari 1026 dan 405 adalah %d\n", hasil);

    printf("FPB dari 83 dan 240 adalah %d\n", fpb(83, 240));}

    int fpb(int u, int v){

    int tampung;

    while(v != 0){

    tampung = u % v;u = v;v = tampung;

    }return(u);

    }

  • 8/9/2019 Prakt5

    4/8

    Modul Teori Konsep Pemrograman MR-IT Center Madiun

    Praktikum 5 hlm. 4

    5. Menghitung nilai absolut

    6. Fungsi dengan keluaran bertipe float.

    /* File program : absolut.c */#include

    float nilai_absolut(float);

    main(){

    float f1 = -15.5f, hasil;

    hasil = nilai_absolut(f1);printf("Nilai absolut dari %g adalah %g\n", f1, hasil);

    printf("Nilai absolut dari -6/4 adalah %g\n",nilai_absolut((-6)/4));

    }

    float nilai_absolut(float x){if(x < 0)

    x = -x;

    return(x);}

    /* File program : minimum.c */#include

    float minimum (float, float);

    main(){

    float a, b, kecil;

    printf("Masukkan nilai a : ");scanf("%f", &a);printf("Masukkan nilai b : ");scanf("%f", &b);

    kecil = minimum(a, b);printf("\nBilangan terkecil antara %g dan %g adalah %g\n\n",

    a, b, kecil);}

    float minimum(float x, float y){

    if (x < y)return(x);

    elsereturn(y);

    }

  • 8/9/2019 Prakt5

    5/8

    Modul Teori Konsep Pemrograman MR-IT Center Madiun

    Praktikum 5 hlm. 5

    7. Untuk melihat pengaruh pemanggilan nilai pada fungsi untuk penukaran dua bilangan.

    /* File program : tukar.c */#include

    void tukar (int, int);

    main(){

    int a,b;

    a=88;b=77;

    printf("Nilai sebelum pemanggilan fungsi\n");printf("a = %d b = %d\n", a, b);

    tukar(a,b);

    printf("\nNilai setelah pemanggilan fungsi\n");printf("a = %d b = %d\n", a, b);

    }

    void tukar(int x, int y){

    int z;

    z = x;x = y;y = z;

    printf("\nNilai di akhir fungsi tukar()\n");printf("x = %d y = %d\n", x, y);

    }

  • 8/9/2019 Prakt5

    6/8

    Modul Teori Konsep Pemrograman MR-IT Center Madiun

    Praktikum 5 hlm. 6

    8. Ilustrasi variabel auto dan static.

    /* File program : auto.c */#include

    void demo(void); /* ANSI function prototypes */main(){

    int i=0;

    while(i < 3) {demo();i++;

    }}

    void demo(void){auto int var_auto = 0;static int var_static = 0;

    printf("auto = %d, static = %d\n", var_auto, var_static);++var_auto;++var_static;

    }

  • 8/9/2019 Prakt5

    7/8

    Modul Teori Konsep Pemrograman MR-IT Center Madiun

    Praktikum 5 hlm. 7

    Soal-soal latihan Praktikum V :

    1. Apa hasil eksekusi dari program berikut :

    /* File program : lat1.c */#include

    void fung_a(void);void fung_b(void);

    int x = 20;

    main(){

    x += 2;fung_a();

    fung_a();printf("\nNilai x dalam main() = %d\n\n", x);

    }

    void fung_a(void){

    static x = 5;

    x++;printf("Nilai x dalam fung_a() = %d\n", x);fung_b();

    }

    void fung_b(void){

    x--;printf("Nilai x dalam fung_b() = %d\n", x);

    }

  • 8/9/2019 Prakt5

    8/8

    Modul Teori Konsep Pemrograman MR-IT Center Madiun

    Praktikum 5 hlm. 8

    2. Apa hasil eksekusi dari program berikut :

    3. Buatlah suatu fungsi ganjil() yang mengembalikan nilai 1 jika argumen yang diberikan adalah bilangan ganjil dan mengembalikan nilai 0 jika argumen tsb bukan bilangan ganjil.

    4. Buatlah program untuk menghitung faktorial dengan menggunakan 2 fungsi (main() dan faktorial()).Fungsi faktorial() memberikan return value bertipe long int yang akan dicetak ke layar dalam fungsimain().

    5. Menghitung permutasi dan kombinasi dari suatu pasangan bilangan dinyatakan dengan rumus sbb :Permutasi : P(n, r) = n! / (n-r)!Kombinasi : C(n, r) = n! / r!(n-r)!

    Buatlah program untuk menghitung permutasi dan kombinasi dari bilangan n dan r yang diinputkan.(Petunjuk : Gunakan fungsi main(), faktorial(), permutasi() dan kombinasi())

    #include

    void ubah(int);

    main(){

    int x;

    printf("Masukkan nilai x : ");scanf("%d", &x);ubah(x);printf("x = %d\n", x);

    }

    void ubah(int y){

    y = 85;}