RESUME PRAKTIKUM ALGORITMA DAN PEMROGRAMAN

RESUME PRAKTIKUM
ALGORITMA DAN PEMROGRAMAN


Disusun Oleh
Nama : Surya Adi Prasetyo
NIM : 191080200106
Kelompok 17


LABORATORIUM INFORMATIKA
PROGRAM STUDI INFORMATIKA
2019 – 2020 




POKOK BAHASAN 1
Input/Output dan Jenis Data

Setiap program c++ mempunyai bentuk umum seperti dibawah, yaitu :

# prepocessor directive
            Void main ()
{
            // batang tubuh program utama
}

Penjelasan :

1.      Include      
            Adalah salah satu pengarah prepocessor directive yang tersedia pada c++  prepocessor selalu dijalankan terlebih dahulu pada saat proses kompilasi terjadi . bentuk umumnya :
            # include < nama file>
Tidak diakhiri tanda semicolon karena bentuk tersebut bukanlah suatu bentuk pernyataan tetapi merupakan bentuk preprocessor directive baris tersebut mengintrusikan kepada kompiler yang menyisipkan file lain dalam hal ini file yang berakhiraran .h file header yaitu file yang berisi sebagai deklrasi contohnya :

# include <iostream.h> : diperlukan pada program yang menggunakan cout

#include<conio.h> : diperlukan bila melibatkan clrscr() yaitu perintah untuk membersihkan layar

# include<iomanip.h> :diperlukan bila melibatkan set w().yang bermanfaat untuk mengatur lebar dari suatu tampilan data

2.      Fungsi main ()
            Fungsi ini menjadi awal dan akhir eksekusi program c++.main adalah nama judul fungsi.melihat bentuk seprti itu dapat kita ambil kesimpulan bahwa batang tubuh program utama , utama, maka dapat dipastikan seorang pemrogram menggunakan minimal sebuah fungsi. Pembahasan lebih lanjut mengenai fungsi .

akan di terangkan kemudian. Yang sekarang coba ditekankan adalah kita menuliskan program utama kita di dalam sebuah fungsi main().
3.      Komentar
            Komentar tidak pernah di compiler. Dalam C++ terdapat 2 jenis komentar, yaitu :
Jenis 1 : /* Komentar anda di letakkan di dalam ini bisa mengapit lebih dari satu baris */
Jenis 2 : // Komentar anda diletakkan disini (hanya bisa perbaris)

4. Tanda Semicolon
            Tanda semicolon “ : “ digunakan untuk mengakhiri sebuah pernyataan. Setiap pernyataan harus diakhiri dengan sebuah tanda semicolon.

5. Mengenal Cout ( dibaca : C out)
            Pernyataan cout merupakan sebuah objek di dalam C++, yang digunakan untuk mengarahkan data ke dalam standar output (cetak pada layar)
Contoh :
Tanda “ << “ merupakan sebuah operator yang disebut operator “penyisipan / peletakan”

Membuat program dengan menggunakan fungsi puts
Assalamualaikum, nama saya adalah .....
Sekarang saya belajar memprogram memakai bahasa c
Ayo teman teman belajar juga
Sampai jumpa.

Coding :
#include <stdio.h>
#include <conio.h>

int main()
{
            puts("Assalamualaikum, nama saya adalah Surya Adi Prasetyo. \nSekarang saya belajar memprogram memakai bahasa c. \nAyo teman teman belajar juga. \nSampai jumpa!");
           
            _getch();
}

PROGRAM TAMPILAN MENGGUNAKAN KODE ESCAPE
 Coding :
#include <stdio.h>
#include <conio.h>

void main()
{
            printf("1\t2\t3\t4\t5\t6\t7\t8\n");
            printf("program\tkomputer\tbahasa\tc");
            printf("\td1 lab\tini\n");
            printf("Saya sedang belajar\r");
            printf("kode escape\n");
            puts("Suara apa ya ini?\a");

_getch();
}

Apa Perbedaan antara puts dan printf ?
puts berfungsi untuk menampilkan suatu output tetapi hanya untuk menampilkan nilai string,
Sedangkan printf berfungsi untuk menampilkan suatu output dan menampilkan semua jenis data.
Memperhatikan tampilan yang ada di layar. Bagaimana efek kode escape \n, \t, \r, dan \a?

\n : Memberikan efek garis baru / New Line (Enter).
\t : Memberikan efek menjorok ke dalam (Tab).
\r : Pindah ke kolom paling kiri dari baris yang sama.
\a : Mengeluarkan sebuah bunyi (Bel).


PROGRAM MENGISI INPUT KE VARIABLE STRING
Coding :
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <conio.h>
main()
{
            char nama[50];
            printf("Isikan nama : ");
            gets(nama);
            printf("Haii ");
            puts(nama);


            printf("Betul kah, kamu si %s?\n", nama);
_getch();
}


Apa arti angka 80 pada nama[80] di atas?
Arti angka 80 adalah batas maksimal string(huruf) yang bisa dimasukkan
Apa kegunaan fungsi gets?
Gets digunakan untuk mendefinisikan string yang dimasukkan ke program
            gets(nama);
menjadi:
            scanf(“%s”,nama);
Apa pula fungsi scanf ?
Fungsi scanf untuk mendefinisikan setiap masukan ke dalam program

PROGRAM MATEMATIKA BILANGAN BULAT & RIIL : PEMBAGIAN
Coding :
#include <stdio.h>
#include <conio.h>
main()
{
            int a=10, c;
            float b=3.5, d;

            c=a/b; d=a/b;

            printf("a=%d\n",a);
            printf("b=%f\n",b);
            printf("c=%d\n",c);
            printf("d=%f\n",d);
_getch();
}
  1. Memperhatikan cara menginisialisasi nilai variable a dan b
    Berapakah nilai c dan d?
    Jawab : c = 2 dan d = 2.857143

    Mengapa nilai keduanya berbeda meskipun operasinya sama?
    Jawab : Karena c didefinisikan bertipe int (bil. bulat) dan d bertipe float (bil. Pecahan).

    KEPRESISIAN BILANGAN RIIL
    SCRIPT :
    #include <stdio.h>
    void main(){
    float a=3,b;
    double c;
    b=1000/a;
    c=1000/a;
    printf(“a=%f\n”,a);
    printf(“b=%f\n”,b);
    printf(“c=%f\n”,c);
    }


    Mengapa nilai b dan c berbeda meskipun operasinya sama?
    Jawab : Karena nilai b bertipe data pecahan dengan ketetapan data tunggal (float), sedangkan nilai c bertipe data numerik.



    POKOK BAHASAN 2
    STRUKTUR PEMROGRAMAN PENCABANGAN

    1.                  PENCABANGAN TUNGGAL : IF

    Buatlah program dibawah ini, jika umur lebih dari 60 tahun maka akan ditampilkan komentar.

    SCRIPT :
    #include<iostream.h>
    void main(){
                int umur;
                cout<<"masukkan umur kamu=  ";
                cin>> umur;
                if (umur >= 60){
                            cout<<"Selamat siang mbah"<<endl;
                            cout<<"Salam buat cucumu ya"<<endl;}
                cout<<"jadi umurumu"<<umur<<"tahun";}

    Error apakah yang muncul serta bagaimana yang benar ?
    Jawab : Error yang terjadi adalah  jika umur di isi kurang dari 60 tahun maka komentar tetap akan ditampilkan, harusnya yang benar ialah jika umur kurang dari 60 tahun maka komentar tidak akan ditampilkan.
    Jalankan dengan mengisikan umur 80 tahun, lalu jalankan lagi dengan umur 20 tahun. Mengapa komentar tambahan selalu muncul untuk umur berapapun tidak sesuai dengan yang diinginkan. Serta bagaimana yang benar ?
    Jawab : Karena tidak ada {} saat setelah if, dimana tanda itu digunakan untuk tanda blok pada if.





    SCRIPT :
    #include <iostream>
    using namespace std;
    int main()
    {
                int umur;
                cout<< "Masukkan Umurmu = ";
                cin>> umur;
                if (umur >= 60){
                cout<< "\n Hallo Mbah"<< endl;
                cout<< "Salam Buat Cucumu Ya" << endl;
                cout<< "Jadi Umurmu "<< umur << " Tahun\n";}}


    PROGRAM CONTOH

    SCRIPT :
    #include<iostream.h>
    void main(){
                int tahun, umur;
                cout<<"Masukkan tahun kelahiranmu = "<<endl;
                cin>>tahun;
                umur = 2013 - tahun;
                cout<< "Umurmu " <<umur <<"tahun\n"<<endl;
                if (umur < 17)
                {  cout<< "Kamu belum sweet seventeen\n";
                cout<< "Sorry, Belum cukup umur\n";}}

    Jalankan dan isikan tahun kelahiran 2000 serta nilai lain. Kesalahan apakah yang terjadi dan bagaimana yang benar ?
    Jawab : Hasil umur yang dikeluarkan tidak sesuai dengan saat ini karena umur = 2013-tahun; yang benar adalah umur = 2019-tahun;

    SCRIPT :
    #include<iostream.h>
    void main(){

                int tahun, umur;
                cout<<"Masukkan tahun kelahiranmu = "<<endl;
                cin>>tahun;
                umur = 2019 - tahun;
                cout<< "Umurmu " <<umur <<"tahun\n"<<endl;
                if (umur < 17)
                {  cout<< "Kamu belum sweet seventeen\n";
                cout<< "Sorry, Belum cukup umur\n";}
                }




    POKOK BAHASAN 3
    STRUKTUR PEMROGRAMAN : LOMPATAN & KALANG

    Sebuah / kelompok intruksi diulang untuk jumlah pengulangan tertentu. Baik yang terdifinisikan sebelumnya ataupun tidak.
    Struktur pengulangan terdiri atas dua bagian :
    1. Kondisi pengulangan  yaitu  ekspresi  Boolean yang harus di penuhi untuk melaksanakan pengulangan.
    2. Isi atau badan pengulangan yaitu satu atau lebih pernyataan (aksi) yang akan  diulang.
    Perintah  atau notasi dalam struktur pengulangan  adalah :
    1. Pernyataan while
    2. Pernyataan do…while
    3. Pernyataan for
    4.  Pernyataan continue dan break
    5. Pernyataan go to

    PENJELASAN
    1.      Pernyataan WHILE
    Pernyataan while merupakan salah satu pernyataan yang berguna untuk memproses suatu pernyataan atau beberapa pernyataan beberapa kali. Pernyataan while memungkinkan statemen-statemen yang ada didalamnya tidak dilakukan sama sekali. Bentuk Umumnya :
    while (kondisi){
    Pernyataan ;}

    2.      Pernyataan DO…WHILE
    Pernyataan do while mirip seperti pernyataan while hanya saja pada do while
    pernyataan yang terdapat didalamnya minimal akan sekali dieksekusi. Bentuk Umumnya :
    do {
    pernyataan;
    } while (kondisi);

    3.      Pernyataan FOR
    Pernyataan for digunakan untuk menghasilkan pengulangan(looping) beberapa kali tanpa penggunaan kondisi apapun. Pada umumnya looping yang dilakukan oleh for telah diketahui batas awal, syarat looping dan perubahannya. Pernyataan for digunakan untuk melakukan looping. Pada umumnya looping yang dilakukan oleh for telah diketahui batas awal, syarat looping dan perubahannya. Selama kondisi terpenuhi, maka pernyataan akan terus dieksekusi.
    Bentuk Umumnya :
    for (inisialisasi ; kondisi ; perubahan)
    {
    Statement; }
    4.      Pernyataan Continue dan Break
    Pernyataan break akan selalu terlihat digunakan bila menggunakan pernyataan switch. Pernyataan ini juga digunakan dalam loop. Bila pernyataan ini dieksekusi, maka akan mengakhiri loop dan akan menghentikan itrasi pada saat tersebut.
    5.      Pernyataan goto
    Pernyataan goto diperlukan untuk melakukan suatu lompatan ke suatu pernyataan berlabel yang ditandai dengan tanda " : ". Bentuk Umumnya :
    Go to bawah;
    pernyataan 1;
    pernyataan 2;
    pernyataan 3;

    LOMPATAN : LABEL DAN GOTO
    Buatlah program dibawah ini. Jalankan dan tulislah tampilan yang muncul. Terangkan fungsi dari label dan goto.

    SCRIPT :
    #include<iostream.h>
    void main ()
    {
                cout<<"ini langkah pertama"<<endl;
                goto LABELB;
    LABELA:
                cout<<"ini langkah kedua"<<endl;
                goto LABELC;
    LABELB:
                cout<<"ini langkah ketiga"<<endl;
                goto LABELA;
    LABELC:
                cout<<"ini langkah keempat"<<endl;
    }



    Label dan goto berfungsi :
    Jawab : Label sebagai penunjuk dalam proses. Sedangkan Goto digunakan untuk melompati suatu proses yang lainnya didalam program dan juga bisa digunakan sebagai suatu proses pertimbangan.

    KALANG BERSYARAT “PERIKSA-JALANKAN” : WHILE

    SCRIPT :
    #include <iostream.h>
    #include <conio.h>
    void main()
    {          char nama [80];          
                char tombol;
                while ((tombol == 'Y')||(tombol == 'y'))  {
                            cout<< "Masukkan nama anda = ";             
                            cin>> nama;
                            cout<< "Halo " << nama << endl << endl;               
                            cout<< "Apakah mau mengulangi (Y/T)?";             
                            tombol = getch();cin >> tombol;                   
                            cout<< endl << endl; }
                cout<< "Selesai"; }


    Apakah yang terjadi mengapa hasil output kosong ?
    Jawab : karena belum ada fungsi getch dan sebelum masuk while diberi fungsi getch
     tombol : ();

    SCRIPT :
    #include<iostream.h>
    #include<conio.h>
    main() {
                char nama[80];           
                int tombol;
                while((tombol =='Y')||(tombol=='y')); {
                            cout<<"Masukkan nama anda: ";
                cin>>nama;
                cout<<"Hai "<<nama<<endl<<endl;             
                cout<<"Apakah mau mengulangi(Y/T)?: "; 
                tombol=getch();cin>>tombol;           
                cout<<endl<<endl;}
    cout<<"Selesai";}


    POKOK BAHASAN 4
    STRUKTUR PEMROGRAMAN : KALANG



    TABEL KUADRAT



    SCRIPT :

    #include <iostream.h>

    #include <iomanip.h>

    void main() {
    int x=0;
    cout << " x x kuadrat\n";
    while (x <= 20)  {
    cout << setw(3) << x<< setw(8) << (x*x) << endl;
    x++;
    } }

    Jalankan program diatas. Jika, terjadi error, bagaimana yang benar ?
    Jawab : tidak ada error waktu program di compile.
    Apa guna fungsi setw( ) berfungsi membuat tampilan dalam rata kanan dengan lebar ditentukan oleh nilai yang ada dalam kurung

    MEMUTUS KALANG : BREAK & CONTINUE

    SCRIPT :
    #include <iostream.h>
    void main() {
                int i = 0;
                cout<< i;         
                do {
                            i++;
                            cout<< "- ";      if (i == 4)
                            continue;                      cout<< i;
                } while (i < 10);            cout << "\nSelesai\n"; }

    Fungsi simbol  / / Berfungsi sebagai komentar dalam program / keterangan Fungsi dari keyword break,  Break berfungsi mengeluarkan eksekusi compiler dari struktur program setelah suatu kondisi tertentu dipenuhi
    Gantilah break dengan continue, dan jalankan !

    SCRIPT :
    #include<iostream>
    using namespace std;
    int main(){
                int i=0;
                cout<<i;
                do{
                            i++;
                            cout<<"-";
                            // if (i==4)
                            // continue;
                            cout<<i;
                }while(i<12);
                cout<<"\nSelesai\n";}

    Apa fungsi Continue ?
    Jawab : Continue berfungsi untuk melanjutkan suatu kompile setelah suatu perintah sudah terpenuhi.

    TABEL SINUS

    SCRIPT :
    #include <stdio.h>
    #include <math.h>
    void main ()
    {
                            const float PI = 3.141593;                 
                            int x = 0, x2;               
                            float y,y2;
                            puts ("Tabel sinus\n------------");                   
                            puts ("  x    sin(x)        x   sin(x)");
                            do {
                                        y = sin (x/180.0*PI);               
                                        x2 = x+180;
                                        y2 = sin(x2/180*PI);                         
                                        printf("%4d %8.4f     %4d %8.4f\n",
                                                    x,y,x2,y2);                                          
                                                    x+= 10;
                            }
                                        while (x <= 180 );
    }


    Yang menyebabkan Tabel ini salah?
    y = sin (x/80,0*PI) y = sin (x2/80*PI) Seharusnya
    y = sin (x/57,2958) y 2= sin (x/57,2958)
    Apakah fungsi dari operator += ?
    += untuk menambahkan nilai x dengan nilai 10




    POKOK BAHASAN 5

    VARIABEL LARIK : MATRIKS& STRINGS



    SEKUP VARIABEL DALAM KALANG FOR



    SCRIPT :
    #include< iostream>
    using namespace std;
    int main()
    {
                int i = 5;

                cout<< "di luar kalang i= " << i << endl;      
                for (i=1; i<=10; i++) {
                  cout <<" di dalam kalang i= "<< i<< endl;
                }
                cout<< "di luar kalang i= " << i << endl;
    }
    Mengganti pernyataan for di atas menjadi:
    for (int i=1; i<=10; i++) {

    jalankan program tersebut dan perhatikan nilai i yang ditampil-kan. Apa pengaruh pendefinisian variabel i di dalam kalang for(1). Muncul error karena Multiple declaration for „i‟.
    Mengganti pernyataan for di atas dengan menghilangkan bagian inialisasi kalang for menjadi :
    for (; i<=10; i++) {

    Apakah yang terjadi apabila tidak dilakukan inisialisasi pada kalang for(2). Pengaksesan variabel dalam kalang for memakai nilai awal yang telah didefinisikan diluar kalang for

    KALANG FOR UNTUK MENGISI DAN MENAMPILKAN MATRIKS

    SCRIPT :
    #include <iostream.h>
    main() {  
                int i,j,N = 3;  
                float A[5][5];

      for ( i=0; i<N; i++) {    
                  for ( j=0; j<N; j++) {
          cout << "A(" << i<< "," << j << ") = ";      
                  cin >> A[i][j];
        }  
      }
      cout << "Matriks A = \n";  
      for ( i=0; i<N; i++) {    
                  for ( j=0; j<N; j++) {      
                              cout << "\t" << A[i][j]; }
                  cout << endl;
      }}




    Program di atas adalah sebuah contoh program yang digunakan untuk mengisi nilai-nilai elemen pada matriks ukuran 3x3. Modifikasi (dengan menambah atau mengubah sekitar 3 baris saja) program tersebut agar dapat digunakan untuk mengisi dan menampilkan matriks yang berukuran 4 baris x 5 kolom (3).







    OPERASI PADA STRING : KUTAK-KATIK NAMA



    SCRIPT :

    #include <stdio.h>

    #include <iostream.h>

    #include <string.h>
    void main ()
    {
            char nama [80], nama2[80], tulisan[80];
            int panjang, posisi;
            cout<< "Input nama = ";
            gets (nama);
            strcpy (tulisan, "Halo ");
            cout<< strcat(tulisan, nama)<<endl;
            if (strcmp (nama, "Keyla") == 0){
                            cout<< "Namamu Keyla kan" << endl;}
            else {
                            cout<< "Namamu bukan keyla"<<endl;}
            panjang = strlen (nama);
            cout<< "panjang namamu " <<panjang<<endl;
            posisi = strcspn (nama,"z");
            if (posisi<panjang){
                            cout<< "Huruf z pada posisi " <<posisi<<endl;}
            else {
                            cout<< "Tidak ada huruf z nya"<<endl;}
            strcpy (nama2,nama);
            cout<< strupr (nama2) <<endl;
            cout<< strlwr (nama2) <<endl;
            cout<< strrev (nama2) <<endl;
            cout<< strset (nama2,'x') <<endl;
    }

    Jalankan program di atas dan jelaskan kegunaan dari fungsi berikut ini: strlen(), strcpy(), strcat(), strcmp(),strlen(), strcspn(), strupr(), strlwr(), strrev(), dan strset()
    (5).
    strlen() 
    = Bentuk format strlen(const char *s)
     Fungsi menghitung panjang string s

    strcpy()
    = Bentuk format strcpy(char *dest, const char *src)
       Fungsi mengkopi string src ke dest

    strcat() 
    = Bentuk format strcat (char*dest, const char*src) Fungsi menambahkan kopian src ke bagian akhir dest

    strcmp()
    = Bentuk format strcmp(const char*s1, const char*s2)

                 
     Fungsi melakukan perbandingan s1 dengan s2

    strcspn()
    = Bentuk format strcspn (const char *s1, const char *s2)

                 
       Fungsi menemukan bagian awal string s1 yang mengandung s2
    strupr()
    = Bentuk format strupr(const char *s)
       Fungsi mengubah string menjadi huruf KAPITAL (uppercase)
    strlwr()
    = Bentuk format strlwr(const char *s)
                 
       Fungsi mengubah string menjadi huruf biasa/kecil (lowercase)
    strrev()
    = Bentuk format strrev(const char *s)
    Fungsi membalik semua karakter string, jadi huruf terakhir menjadi awal
    strset() 
    = Bentuk format strset(const char *s, int ch)
                 
       Fungsi menset semua karakter dalam s ke ch




    POKOK BAHASAN 6

    SORTING (PENGURUTAN)



    FUNGSI DENGAN NILAI KEMBALIAN (RETURN VALUE ) : BISECTION

    Review kembali program bisection pada modul 5, modifikasi program tersebut dengan menggunakan fungsi, yaitu dengan menambahkan fungsi berikut sebelum main().

    Double y(double x)
    {
                return ::*x-2*x-3;
    }

    Kemudian gantilah intruksi yang digunakan untuk menghitung nilai-nilai yL,yC,yU menjadi:

    yL = y (xL);
    yC = y(xC);
    yU = y(xU);

    jalankan dan periksa hasilnya. Apabila program tersebut digunakan untuk persamaan yang lain yaitu exp(x)-2*x-2=0, apakah yang harus diubah dalam program tersebut.


    SCRIPT :
    #include <iostream>
    #include <iomanip.h>
    #include <math.h>
    double y(double x){
            return exp (x)-2*x-2;
    }
    void main ()
    {
            int iterasi = 0;
                            double xL, xC, xU, yL, yC, yU;
            cout<< "Mencari akar persamaan x*x-2*x-3=0\n"
                            <<"dengan metode bisection\n"
                            <<"Masukkan tebakan awal bawah = ";
            cin>> xL;
            cout<< "Masukkan tebakan awal atas = ";
            cin>> xU;
            cout<< "iterasi     xL                        xC"
                            <<"          xU                        yL"
                            <<"        yC                          yU\n";
            do {
                            xC = ( xL+xU)/2;
                            yL = y(xL);
                            yU = y(xU);
                            yC = y(xC);
                            cout<< setw(5) << iterasi
                                            <<setiosflags (ios::fixed)
                                            <<setprecision (5)
                                            <<setw (12) << xL
                                            <<setw (12) << xC
                                            <<setw (12) << xU
                                            <<setw (12) << yL
                                            <<setw (12) << yC
                                            <<setw (12) << yU << endl;
            if (yL*yC <= 0)
                            xU = xC;
            else
                            xL = xC;
            iterasi ++;
            }
            while ((iterasi <= 50) && (fabs(yC)>1e-5));
            cout<< "Jadi akarnya adalah " <<xC;
    }

    PELEWATAN PARAMETER PADA PEMANGGILAN FUNGSI



    SCRIPT :

    #include <iostream.h>

    void Gandakan (int A, int *B, int &C)

    {
            A = A*2;
            *B = *B*2;
            C = C*2;
    }
    main ()
    {
            int x=1, y=10, z=6;
            cout<< "Sebelum fungsi gandakan di panggil\n"
                            <<"x="<<x<<endl
                            <<"y="<<y<<endl
                            <<"z="<<z<<endl;
            Gandakan (x, &y, z);
            cout<< "Setelah fungsi gandakan di panggil\n"
                            <<"x="<<x<<endl
                            <<"y="<<y<<endl
                            <<"z="<<z<<endl;
    }

    Variabel manakah yang akan diubah nilainya ketika dijadikan parameter yang dilewatkan pada fungsi gandakan?
    variabel Y dan Z, variabel X tidak termasuk karena pemanggilan variabel X tidak
    diawal simbol ampersand (&) dan penulisan variabel dalam fungsi tidak diawali
    symbol bintang (*)




    NILAI DEFAULT PADA PARAMETER FUNGSI

    SCRIPT :
    #include <iostream.h>
    void Keterangan (int N=10)
    {
            if (N >= 8)
                            cout<< "Nilai "<<N<< " itu bagus\n";
            else if (N < 5)
                            cout<< "Nilai "<<N<< " itu parah\n";
            else
                            cout<< "Nilai "<<N<< " itu cukupan\n";
    }
    void main ()
    {
            int Nilai;
            Keterangan ();
            cout<< "Masukkan nilai = ";
            cin>> Nilai;
            Keterangan (Nilai);
    }
    Apakah yang menyebabkan terjadinya error pada program diatas?
    Tidak terjadi error
    Mengapa tidak terjadi error ketika fungsi diatas dipanggil tanpa mengisikan parameternya?
    Tidak terjadi error ketika parameter fungsi tidak diisikan karena pada fungsi tersebut sudah ada nilai default, sehingga saat parameter fungsi tidak diisi maka
    Program akan menggunakan nilai default itu.

Comments