Selasa, Agustus 17, 2021

Modul Praktikum Bahasa Pemrograman C++

 

 Modul Praktikum Bahasa Pemrograman C++

 

  

Sejarah C++

Bahasa C++ diciptakan oleh Bjarne Stroustrup di AT&T Bell Laboratories awal tahun 1980an berdasarkan C ANSI (American National Standard Institute). Pertama kali, prototype C++ muncul sebagai C yang dipercanggih dengan fasilitas kelas. Bahasa tersebut disebut C dengan kelas ( C wih class). Selama tahun 1983-1984, C dengan kelas disempurnakan dengan menambahkan fasilitas pembebanlebihan operator dan fungsi yang kemudian melahirkan apa yang disebut C++.

Symbol ++ merupakan operator C untuk operasi penaikan, muncul untuk menunjukkan bahwa bahasa baru ini merupakan versi yang lebih canggih dari C. Borland International merilis compiler Borland C++ dan Turbo C++. Kedua compiler ini sama-sama dapat digunakan untuk mengkompilasi kode C++. Bedanya, Borland C++ selain dapat digunakan dibawah lingkungan DOS, juga dapat digunakan untuk pemrograman Windows.

Selain Borland International, beberapa perusahaan lain juga merilis compiler C++, seperti Topspeed C++ dan Zortech C++.

Tentang C++

C++ diciptakan untuk mendukung pemrograman berorientasi pada objek (Object Oriented Pragramming /OOP) yang tidak dimiliki C. sementara C merupakan bahasa pemrograman terbaik dilingkungannya, bahasa ini tidak memiliki kemampuan OOP. Reputasi C tidak diragukan lagi dalam menghasilkan program .EXE berukuran kecil, eksekusi yang cepat, antarmuka (interfacing) yang sederhana dengan bahasa lain dan fleksibilitas pemrograman.

Kelebihan dan Kekurangan C++

Kelebihan C++

·      Bahasa Standard-nya ANSI bisa dipakai diberbagai platform.

·      Kecepatan program jika dibanding dengan program yang sama buatan bahasa lain, relatif lebih cepat.

·      Kode bahasa C++ dengan portabilitas dan fleksibilitas yang tinggi untuk semua jenis komputer.

·      Bahasa C++ tersedia hampir di semua jenis komputer.

·      Kode program bersifat reuseable, sehingga dapat digunakan kembali pada project lain dengan hanya menggunakan library dan file header.

·      Bahasa C++ hanya menyediakan sedikit kata-kata kunci (hanya terdapat 48 kata kunci).

·      Dukungan pustaka fungsi dan kelas yang banyak sehingga memungkinkan pembuatan aplikasi makro.

·      C++ adalah bahasa yang terstruktur, dengan demikian akan lebih mendukung OOP.

·      Bahasa C++ termasuk bahasa tingkat menengah dan lebih dekat dengan bahasa mesin.

·      C++ dapat membuat aplikasi graphic processor berkualitas tinggi.

 

Kekurangan

·      C++ tidak murni OOP sehingga kurang cocok untuk mengajarkan Konsep OOP karena kaidahkaidah OOP dapat dilanggar.

·      Dan di C++ ada konsep pointer yang sangat membingunkan, ini salah satu alasan mengapa C++ menjadi sesuatu yg paling tidak disukai.

·      C++ walapun tidak terpengaruh oleh Sistem Operasi tetapi tool untuk developmentnya harus spesific pada salah satu sistem operasi contoh Visual Studio hanya dapat berjalan di Windows. Alasan ini juga nantinya akan dapat menurunkan minat terhadap sistem operasi yang lain contohnya Linux. Apabila dalam praktiknya menggunakan Visual Studio maka otomatis akan menggunakannya juga dan pada akhirnya malas untuk mencoba sistem operasi yang lain.

·      Implementasi C++ dalam teknologi IT pada saat sekarang sudah sangat sedikit sekali.

·      Sulitnya untuk membuat sesuatu dengan C++ sehingga kepeminatannya dalam memperdalam programming akhirnya harus kandas, kecuali dengan inisiatif sendiri mempelajari bahasa/teknologi lain.

 

Pemrograman C++ Dengan Turbo C++

Turbo C++ merupakan kompiler C++ dengan IDE yang terintegrasi yang dikembangkan oleh Borland, terkenal karena kecepatannya dalam kompilasi dan linking. Produk ini merupakan bagian dari keluarga kompiler borland yang sangat populer termasuk Turbo Pascal, Turbo Basic, Turbo Prolog, dan Turbo C. 

 

Turbo C++ merupakan suksesor dari Turbo C yang merupakan pengembangan lebih lanjut dengan keseragaman tata cara dalam kompiler seperti halnya cara yang terdapat pada Turbo Pascal dalam menambahkan fungsionalitas object pada versi-versi Turbo Pascal sebelumnya. Namun tidak seperti halnya Turbo Pascal, Turbo C++ senantiasa mengikuti dan mempertahankan standar-standar yang berlaku pada bahasa C++.


Turbo C++ membebaskan programmer dari keharusan menuliskan program yang rumit, sebab berbasis pemrograman berorientasi objek (OOP, Object Oriented Programming). Hal ini memungkinkan program lebih cepat dikembangkan.


Pemrograman C++ mempunyai beberapa aturan penulisan kode atau perintah  dasar pada menuliskan kode program.  Jika penulisan kode tidak sesuia dengan aturan dasarnya, maka akan terjadi kesalahan (error) ketika dikompilasi karena tidak dapat dikenali oleh compiler.

 

Berikut beberapa aturan dalam C++

1.    Perintah standar bahasa C++ harus dituliskan dengan huruf kecil. Misalnya : cin, cout, printf, pow, sqrt, int, float, dll. Penulisan yang salah Cin, CIN, Int, INT, Float, dll.

2.    Penulisan huruf besar dan kecil bersifat sensitif, artinya huruf besar dan huruf kecil dibedakan. Misalnya A dan a dianggap dua buah variabel yang berbeda.

3.    Setiap akhir dari baris pernyataan harus diakhiri dengan tanda titik koma (;), kecuali penggunaan file Header dan Deklarasi kostanta. Misalnya : cout<

4.    Setiap blok atau kelompok kode program harus diawali dengan tanda buka kurung kurawal { dan diakhiri dengan tanda tutup kurung kurawal }.

5.    Untuk mendeklarasikan lebih dari satu variabel, variabel tersebut dipisah dengan tanda koma(,). Misalnya float a,b,c,d;

6.    Untuk menambahkan pernyataan/komentar dalam source menggunakan tanda // untuk komentar per satu baris, sedangkan apabila banyak baris maka menggunakan diawali dengan tanda /*  dan ditutup atau diakhiri dengan tanda  */.  Misalnya : cin>>a; //perintah untuk menginput nilai a   atau   void main() /* perintah untuk mendefinisikan fungsi utama */

7.    Dalam suatu program C++ harus terdapat fungsi yang disebut main(). Fungsi main() merupakan program utama dimana kode program mulai dibaca dan dikerjakan. Tanpa fungsi main(), maka progam C++ tidak dapat bekerja dan tidak dapat dikompilasi.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Lembar Kerja Praktikum 1 : Pengenalan

Tujuan

Setelah mengerjakan LKP 1 ini, anda diharapkan dapat:

1.    mengenal lingkungan salah satu compiler bahasa pemrograman C yaitu Turbo C++ 4.5.

2.    menggunakan compiler tersebut untuk menyelesaikan kasus sederhana.

 

Dasar Teori

Lingkungan Turbo C++ 4.5

Turbo C++ 4.5 adalah tool yang dipakai untuk membuat code program dalam bahasa C ataupun C++. Berikut adalah jendela utama Turbo C++ 4.5.

 

4

 

3

 

2

 

1

 

 

1 : Menu Utama

2 : Toolbar

3 : Jendela pengetikan kode program

4 : Jendela Message/Pesan kesalahan kode

 

Create new, Open, Save, Save As File

Untuk memulai membuat kode program di Turbo C++ 4.5 langkah-langkahnya adalah sebagai berikut :

1.      Buka Turbo C++ 4.5 dari menu program sehingga akan keluar jendela Turbo C++ berikut :

 

 

2.      Kemudian pilih menu File > New maka akan tampil jendela baru (di dalam jendela utama Turbo C++) untuk menuliskan kode program.

 

 

3.      Setelah menuliskan kode program maka simpan dengan memilih menu File > Save as (untuk menyimpan dengan nama baru) atau File > Save (Tidak menyimpan dengan nama baru bila sudah pernah disimpan). Tentukan dirve dan direktori tempat penyimpanan.

 

 

Untuk membuka file atau kode program yang sudah pernah dibuat maka langkah-langkahnya adalah seperti berikut :

1.      Pilih menu File > Open maka akan tampil jendela seperti berikut :

 

2.    Tentukan drive dan direktori lokasi tempat menyimpan file program kemudian klik OK.

 

Compile Program, Pendeteksian Error dan Warning, Run Program

Setelah menuliskan kode program, maka berikutnya adalah compile program dengan tujuan untuk mendeteksi kesalahan-kesalahan dalam penulisan kode program. Adapun langkah-langkahnya adalah sebagai berikut :

1.      Pilih menu Project > Compile, atau kombinasi tombol ALT+F9, akan tampil jendela status compile seperti berikut :

 

Dari status di atas maka tidak ditemukan error atau warning pada program.

Dari status di atas dapat dilihat bahwa terdapat error pada program. Untuk melihat pesan error tersebut klik OK maka akan tampil jendela pesan error seperti berikut :

Jendela di bawah ini menunjukkan terdapat warning pada program.

Untuk melihat pesan warning tersebut, klik tombol OK.

 

 

2.      Setelah kode program di-compile maka langkah berikutnya adalah menjalankannya, yaitu dengan memilih menu Debug > Run atau kombinasi tombol CTRL+F9.

 

Contoh Program :

Program mengeluarkan tulisan ”Selamat Datang”

Text Box: 1:	#include <stdio.h> //header
2:
3:	void main()//fungsi utama
4:	{
5:		printf(“Selamat Datang”);//statement
6:	}
 

Daftar tools yang digunakan

1.    Compiler C: Turbo C++ 4.5

Algoritma

            Deklarasi :

                        -

            Algoritma :

                  write(“Selamat Datang di STKIP INVADA CIREBON)

                  write(“Nama Anda”)

                  write(“Nim Anda”)

                  write(“Jurusan Anda”)

Langkah-langkah Praktik

  1. Bukalah software Turbo C++
  2. Ketikkan kode program berdasarkan algoritma yang diberikan
  3. Compile program dengan menekan Alt + F9 atau pilih menu Project à Compile
  4. Jalankan program dengan menekan Ctrl + F9 atau pilih menu Debug à Run
  5. Simpan file dengan nama Praktikum1.cpp

 

Skenario devc++ dalam OS windows

1. Membuat proyek baru di devc++ dalam OS windows

Step 1 : Pada aplikasi c++, pilih File > New Project > New Source File

Tampilan project baru

Step 2 : Ketikkan kode program pada area kerja

Tampilan source code

 

Task 2 : Menyimpan proyek baru

Step 1 : Pilih Menu File > Save As >

Step 2 : Pilih direktori penyimpanan dan beri nama file

Tampilan Save As

Task 3 : Kompilasi dan Eksekusi program

Step 1 : Pilih menu Execute > Compile

Tampilan compile program

Step 2 : Pilih menu Execute > Run

Tampilan running program

 

 

 

 

 

 

 

 

Lembar Kerja Praktikum 2: Tipe Data dan Ekspresi

Tujuan

Setelah mengerjakan LKP 2 ini, anda diharapkan dapat:

1.    mengenal berbagai tipe data pada bahasa C.

2.    menggunakan tipe data untuk menyelesaikan berbagai kasus sederhana.

Dasar Teori

Tipe Data dapat dibedakan menjadi dua, yaitu tipe data dasar dan tipe data bentukan

Tipe Data Dasar

Adalah tipe yang dapat langsung dipakai.

Tipe Dasar

Ukuran Memori  (byte)

Jangkauan Nilai

Jumlah Digit Presisi

Char

1

-128 hingga +127

-

Int

2

-32768 hingga +32767

-

Long

4

-2.147.438.648 hingga  2.147.438.647

-

Float

4

3,4E-38 hingga 3,4E38

6-7

Double

8

1.7E-308 hingga 1.7E308

15-16

long double

10

3.4E-4932 hingga 1.1E4932

19

  

Beberapa format yang dipakai untuk mencetak nilai numerik integer :

Kode Format

Hasil yang dicetak

%i atau %d

%u

%li

%lu

Numerik integer bertanda

Numerik integer tak bertanda (unsigned integer)

Numerik Long integer bertanda

Numerik Unsigned Long Integerl

%c

Karakter ASCII

%x

%o

Hexadecimal Integer

Octal Integer

 

Tipe Bentukan

Tipe bentukan adalah type yang dibentuk dari type dasar atau dari type bentukan lain yang sudah didefinisikan, contohnya tipe struktur. Struktur terdiri dari data yang disebut field. Field–field tersebut digabungkan menjadi satu tujuan untuk kemudahan dalam operasi. Mengenai tipe data bentukan akan dibahas lebih lanjut pada mata kuliah Algoritma dan Pemrograman 2.

 

 

Contoh Program :

1:    #include <stdio.h>

2:    #include <conio.h>

3:    void main()

4:    {

5:         int nilai,hasil;

6:        

7:         printf(“Masukkan Suatu Nilai : ”);

8:         scanf(“%d”,&nilai);

9:

10:       clrscr();

11:       hasil = nilai + nilai ;

11:       printf(“Hasil dari nilai + nilai adalah :\n%d”, hasil);

12:  }

Daftar tools yang digunakan

1.    Compiler C: Turbo C++ 4.5

Algoritma

            Deklarasi :

                  const Phi = 3.14 {konstanta}

                  L : real

                  K, p, l : integer

            Algoritma :

                  read(p)

                  read (l)

                  Kß2*(p+l)

                  write(K)

                  bersihkan layar

                  read (r)

                  L ß Phi*r*r

                  write(L)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Lembar Kerja Praktikum 3: Kondisi

Tujuan

Setelah mengerjakan LKP 3 ini, anda diharapkan dapat:

1.        memahami konsep pengkondisian dalam pemrograman

2.        mengenal berbagai bentuk pengkondisian pada bahasa C.

3.        menggunakan pengkondisian untuk menyelesaikan berbagai kasus sederhana.

Dasar Teori

Bentuk IF

Penggunaan seleksi dapat menggunakan bentuk if, sintaks penulisannya adalah sebagai berikut :

if (kondisi)

{

Statement

}

Contoh Program :

1:    #include <stdio.h>

2:    void main()

3:    {

4:         int a;

5:         int b;

6:

7:         a = 10;

8:         b = 9;

9:

10:       if (a>b)

11:       {

12:                   printf(“%d lebih besar dari %d”,a,b);

13:       }

14:  }

Bentuk IF dengan Operator

 Terkadang ada lebih dari satu kondisi yang harus terpenuhi, untuk itu dapat digunakan operator logika AND dan OR, pada bahasa C sintaks penulisannya adalah sebagai berikut,

Untuk operator logika AND :

if (kondisi1 && kondisi2 )

{

Statement

}

 

ContohProgram :

1:    #include <stdio.h>

2:    void main()

3:    {

4:         int a = 10;

5:

6:         if (a< 15 && a>9)

7:         {

8:                     printf(“15 lebih besar dari %d lebih besar dari 9”,a);

9:         }

10:  }

Untuk operator logika OR :

if (kondisi1 || kondisi2 )

{

Statement

}

 ContohProgram :

1:    #include <stdio.h>

2:    void main()

3:    {

4:         int a = 15;

5:

6:         if (a%5==0 || a%2==0)

7:         {

8:                     printf(“%d habis dibagi 5 atau 2”,a);

9:         }

10:  }

Bentuk IF – ELSE IF – ELSE

Penggunaan bentuk if diatas adalah penggunaan untuk kasus yang tidak memiliki alternative, untuk penggunaan if dengan alternative, sintaks penulisannya :

if (kondisi)

{

Statement1

}

else

{

Statement2

}

Atau

if (kondisi)

{

Statement1

}

else if (kondisi2)

{

Statement2

}

Else

{

Statement3

}

Contoh Program :

1:    #include <stdio.h>

2:   

3:    void main()

4:    {

5:         int T;

6:

7:         printf(“Masukkan Nilai Suhu = ”);

8:         scanf(“%d”,&T);

9:

10:       if (T<=)

11:       {

12:                   printf(“Kondisi Beku”);

13:       }

14:       else if (T>0 && T<= 100)

15:       {

16:                   printf(“Kondisi Cair”);

17:       }

18:       else

19:       {

20:                   printf(“Kondisi Uap”);

21:       }

22:  }

Bentuk Nested IF

Dalam penggunaan kondisi terkadang diperlukan suatu bentuk if yang bertingkat, sintaks penulisannya adalah, sebagai berikut :

if (kondisi1)

{

Statement1

if (kondisi1-1)

{

Statement1-1

}

else

{

Statement1-2

}

}

else

{

Statement2

}

 

 

 

 

Contoh Program :

1:    #include <stdio.h>

2:    void main()

3:    {

4:         int a = 10;

5:         int b = 5;

6:         int c = 2;

7:

8:         if(a%b == 0)

9:         {

10:                   printf(“%d adalah bilangan kelipatan %d\n”,a,b);

11:                   if(a%c == 0)

12:                   {

13:                               printf(“%d adalah bilangan genap\n”,a);

14:                   }

15:                   else

16:                   {

17:                               printf(“%d adalah bilangan ganjil\n”,a);

18:                   }

19:       }

20:  }

Bentuk SWITCH

Selain bentuk if, pengkondisian dalam bahasa C dapat pula menggunakan bentuk switch, sintaks penulisannya adalah sebagai berikut:

switch(nilai)

{

case(kondisi1):

{

Statement1

}

break;

case(kondisi2):

{

Statement2

}

break;

case(kondisi3):

{

Statement3

}

break;

default:

{

StatementDefault

}

break;

}

Contoh Program :

1:    #include <stdio.h>

2:   

3:    void main()

4:    {

5:         int nilai;

6:         printf(”Masukkan nilai : “);

7:         scanf(“%d”,&nilai);

8:

9:         switch(nilai)

10:       {

11:                   case(1):

12:                   {

13:                               printf(“satu\n”);

14:                   }

15:                   break;

16:                   case(2):

17:                   {

19:                               printf(“dua\n”);

20:                   }

21:                   break;

22:                   case(3):

23;                   {

24:                               printf(“tiga\n”);

25:                   }

26:                   break;

27:                   default:

28:                   {

29:                               printf(“tidak ada nilai\n”);

30:                   }

31:                   break;

32:       }

33:  }

Daftar tools yang digunakan

1.    Compiler C: Turbo C++ 4.5

Algoritma

            Deklarasi :

                        a,b,c : real

                        D,x1,x2 : real

            Algoritma :

                        read(a);

                        read (b);

                        read (c);

           

                        if(a>0)

                                    D=b*b-4*a*c;

                                    if (D>0)

                                                write("Akar Real");

                                                x1=(-b+root(D))/(2*a);

                                                x2=(-b-root(D))/(2*a);

                                                write(x1);

                                                write(x2);

                                    elseif (D==0)

                                                write("Akar Kembar");

                                                x1=(-b)/(2*a);

                                                write(x1);

                                    else {D<0}

                                                write("Akar Imaginer");

                                    endif

                        else

                                    write("nilai a harus > 0");

                        endif

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Lembar Kerja Praktikum 4: Pengulangan

Tujuan

Setelah mengerjakan LKP 4 ini, anda diharapkan dapat:

1.    memahami konsep pengulangan dalam pemrograman

2.    mengenal berbagai bentuk pengulangan pada bahasa C.

3.    menggunakan pengulangan untuk menyelesaikan berbagai kasus sederhana.

Dasar Teori

Bentuk FOR

Perulangan dalam bahasa C dapat menggunakan bentuk FOR, sintaks penulisannya adalah sebagai berikut :

for (nilai awal; kondisi perulangan; operasi)

{

Statement

}

Contoh Program :

1:    #include <stdio.h>

2:    void main()

3:    {

4:         for(int i = 0; i < 9; i++)

5:         {

6:                     printf(“%d ”,i);

7:         }

8:    }

Bentuk WHILE

Perulangan dalam bahasa C dapat pula menggunakan bentuk WHILE, sintaks penulisannya adalah sebagai berikut :

while(kondisi)

{

Statement

operasi

}

Contoh Program :

1:    #include <stdio.h>

2:

3:    void main()

4:    {

5:         int i = 0;

6:         while(i<10)

7:         {

8:                     printf(“%d\n”,i);;

9:                     i++;

10:       }

11:       printf(“Nilai akhir =  ”);

12:

13:       while(i<10)

14:       {

15:                   printf(“%d ”,i);

16:                   i++;

17:       }

18:  }

Bentuk DO-WHILE

Perulangan dalam bahasa C dapat pula menggunakan bentuk DO-WHILE, sintaks penulisannya adalah sebagai berikut :

do

{

Statement

Operasi

}

while(kondisi);

Contoh Program :

1:    #include <stdio.h>

2:

3:    void main()

4:    {

5:         int i = 0;

6:         do

7:         {

8:                     printf(“%d\n”,i);

9:                     i++;

10:       }

11:       while(i<10);

12:       printf(“Nilai akhir =  ”);

13:

14:       do

15:       {

16:                   printf(“%d ”,i);

17:                   i++;

18:       }

19:       while(i<10);

20:  }

Daftar tools yang digunakan

1.      Compiler C: Turbo C++ 4.5

Algoritma

            Deklarasi :

                        i,j : integer

            Algoritma :

                        for i ß 1 to 5 do

                                    for j ß 5 to i do

                                                write(“*”)

                                    endfor

                                    write(“\n”)

                        endfor

Lembar Kerja Praktikum 5: Array

Tujuan

Setelah mengerjakan LKP 5 ini, anda diharapkan dapat:

1.    memahami konsep array dalam pemrograman

2.    menggunakan array untuk menyelesaikan berbagai kasus sederhana.

Dasar Teori

Array satu dimensi

Dalam bahasa pemrograman, array adalah variabel yang sejenis yang berderet sedemikian rupa sehingga alamatnya saling bersambung/kontigu atau dengan kata lain variabel berindeks.

Bentuk umum :

tipe_array nama_array [jumlah data]

 
 

 


Ilustrasi array satu dimensi :

 

 

 

 

 

 

Array di atas mempunyai enam element.

Contoh Program :

1:    #include <stdio.h>

2:

3:    void main()

4:    {

5:         int a[5] = {10,25,30,45,50};

6:         int i;

7:

8:         for(i=0;i<5;i++)

9:         {

10:                   printf(“%d = %d\n”,i,a[i]);

11:       }

12:  }

Array Multidimensi

Array multidimensi adalah array yang mempunyai lebih dari satu dimensi.  Misal : A[3][5] artinya array tersebut mempunyai 3 baris 5 kolom.

Bentuk umum :

tipe_array nama_array [jumlah data][jumlah data]

 
 

 

 


           

Ilustrasi array multi dimensi :

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Array di atas mempunyai delapan belas element.

Contoh Program :

1:    #include <stdio.h>

2:

3:    void main()

4:    {

5:         int a[3][3] = {{10,20,30},{40,50,60},{70,80,90}};

6:         int i,j;

7:

8:         for(i=0;i<3;i++)

9:         {

10:                   for(j=0;j<3;j++)

11:                   {

12:                               printf(“%d ”,a[i][j]);

13:                   }

14:                   printf(“\n”);

15:       }

16:  }

Daftar tools yang digunakan

1.      Compiler C: Turbo C++ 4.5

Algoritma

            Deklarasi :

               const Nmaks =  20

               NilaiAngka : array [1..Nmaks] of real

               NilaiHuruf : array [1..Nmaks] of char

               i : integer

            Algoritma :

               for iß1 to n do

                     if (NilaiAngka[i] > 85) then

                                 NilaiHuruf[i] ß’A’

                     elseif (NilaiAngka[i] > 70) and (NilaiAngka[i] < 85) then

                                 NilaiHuruf[i]ß’B’

                     elseif (NilaiAngka[i] > 55) and (NilaiAngka[i] < 70) then

                                 NilaiHuruf[i]ß’C’

                     elseif (NilaiAngka[i] > 45) and (NilaiAngka[i] < 55) then

                                 NilaiHuruf[i]ß’D’

                     else

                                 NilaiHuruf[i]ß’E’

                     endif

               endfor

 

 

 

 

 

 

 

 

 

Lembar Kerja Praktikum 6: Pointer

Tujuan

Setelah mengerjakan LKP 6 ini, anda diharapkan dapat:

1.    memahami konsep pointer dalam pemrograman.

2.    menggunakan pointer untuk menyelesaikan berbagai kasus sederhana.

Dasar Teori

Definisi

Pointer dapat diartikan sebagai suatu nilai yang menunjuk alamat suatu lokasi memori. Lokasi memori tersebut mungkin diwakili oleh sebuah variabel atau mungkin juga lokasi bebas dalam memori. Sedangkan pointer sendiri yang berupa nilai ditampung dalam sebuah variabel yang disebut variabel pointer. Jadi variabel pointer atau pointer berisi suatu nilai yang menyatakan alamat suatu lokasi. 

Contoh :

 

 

 

 

 

 


Step:

  1. d=&a à *d = 2 ; d = A
  2. c=&b à *c = 3 ; c = B
  3. b=*d  à b = 2 ; &b = B
  4. *d=*cà *d = 2 ; d = A

 

Dari contoh di atas terlihat bahwa addres pada variabel pointer dapat berubah – ubah, apabila addres suatu variabel pointer berubah maka valuenya akan berubah sesuai addres yang ditunjuk oleh pointer tersebut. Apabila pada address yang ditunjuk oleh pointer tersebut mengalami perubahan value, maka value pada pointer juga akan berubah.

Contoh Program :

1:    #include <stdio.h>

2:

3:    void main()

4: {

5:         int a,b;

6:         int *c;

7:         int *d;

8:

9:         a = 2;

10:   b = 3;

11:

12:   d = &a;

13:   printf("a = %d\n",a);

14:   printf("alamat a = %d\n",&a);

15:   printf("d = %d\n",*d);

16:   printf("alamat d = %d\n",d);

17:

18:   c = &b;

19:   printf("b = %d\n",b);

20:   printf("alamat b = %d\n",&b);

21:   printf("c = %d\n",*c);

22:   printf("alamat c = %d\n",c);

23:

24:   b = *d;

25:   printf("b = %d\n",b);

26:   printf("alamat b = %d\n",&b);

27:   printf("d = %d\n",*d);

28:   printf("alamat d = %d\n",d);

29:

30:   *d = *c;

31:   printf("d = %d\n",*d);

32:   printf("alamat d = %d\n",d);

33:   printf("c = %d\n",*c);

34:   printf("alamat c = %d\n",c);

35:  }

Daftar tools yang digunakan

1.      Compiler C: Turbo C++ 4.5

Algoritma

            Deklarasi :

               a : array [1..5] of integer

               *b : integer

               i : integer

            Algoritma :

               b = a

               for i = 0 to 5 do

                  read(b)

                  b++

               endfor

               b = a

               for i = 0 to 5 do

                  write(b)

                  b++

               endfor

 

 

 

 

 

 

 

 

Lembar Kerja Praktikum 7: Fungsi dan Prosedur

Tujuan

Setelah mengerjakan LKP 7 ini, anda diharapkan dapat:

1.    memahami konsep fungsi dan prosedur dalam pemrograman

2.    menggunakan fungsi dan prosedur untuk menyelesaikan berbagai kasus sederhana.

Dasar Teori

Definisi dan Bentuk Umum Fungsi

Fungsi adalah sejumlah instruksi yang dikelompokkan menjadi satu, berdiri sendiri, yang berfungsi untuk menyelesaikan suatu pekerjaan. Bahasa C minimal mempunyai satu buah fungsi yang disebut Fungsi main() yaitu fungsi induk/utama. Sintaks penulisannya adalah sebagai berikut :

TipeData NamaFungsi()

{

Statement

return variabel

}

Ingat bahwa pemrograman bersifat terstruktur, karena itu untuk fungsi yang dibuat setelah main, harus dideklarasikan lebih dahulu di bagian atas.

Definisi dan Bentuk Umum Prosedur

Prosedur adalah suatu fungsi yang tidak mengembalikan nilai, karena itu tipe data untuk prosedur adalah void atau kosong. Sintaks penulisannya adalah sebagai berikut :

void NamaProsedur()

{

Statement

}

Ingat bahwa pemrograman bersifat terstruktur, karena itu untuk prosedur yang dibuat setelah main, harus dideklarasikan lebih dahulu di bagian atas.

Penggunaan Parameter

Ada 2 jenis Parameter

·       Formal Parameter, merupakan parameter yang muncul di definisi fungsi atau prosedur.

·       Actual Parameter, merupakan parameter yang muncul di program saat pemanggilan fungsi atau prosedur.

Berikut adalah sintaks untuk penggunaan parameter

TipeData NamaFungsi(TipeData Variabel1, TipeData Variabel2)

{

Statement

return variabel

}

 

TipeData NamaProsedur(TipeData Variabel1, TipeData Variabel2)

{

Statement

return variabel

}

Contoh Program :

Fungsi :

1:    #include <stdio.h>

2:

3:    int tambah(int a, int b);

4:

5:    void main()

6:    {

7:         int a,b,hasil;

8:

9:         printf(“Nilai a = “);

10:       scanf(“%d”,&a);

11:

12:       printf(“Nilai b = “);

13:       scanf(“%d”,&b);

14:

15:       hasil = tambah(a,b);

16:

17:

19:       printf(“Hasil = %d\n”,hasil);

18:  }

20:

21:  int tambah(int a, int b)

22:  {

23:  int Hasil;

24:  Hasil = a + b;

25:  return Hasil;

26:  }

Prosedur :

1:    #include <stdio.h>

2:   

3:    void tambah();

4:

5:    void main()

6:    {

7:         tambah();

8:    }

9:

10:  void tambah()

11:  {

12:       int a,b,c;

13:       printf(“Nilai a = “);

14:       scanf(“%d”,&a);

15:

16:       printf(“Nilai b = “);

17:       scanf(“%d”,&b);

18:

19:       c = a + b;

20:

21:       printf(“Hasil = %d\n”,c);

22:  }

Daftar tools yang digunakan

1.      Compiler C: Turbo C++ 4.5

Algoritma

            Deklarasi :

               m,n, kpk : integer

               function KPK(input m,n : integer) à integer {menghitung KPK}

               procedure cetak (input kpk : integer) {cetak KPK}

            Algoritma :

               read(m)

               read(n)

               kpk ß KPK(m,n)

               cetak(kpk)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Lembar Kerja Praktikum 8: File Eksternal

Tujuan

Setelah mengerjakan LKP 8 ini, anda diharapkan dapat:

1.    memahami konsep file dalam pemrograman

2.    menggunakan file untuk menyelesaikan berbagai kasus sederhana.

Dasar Teori

Sejauh ini praktikum yang dilakukan pada LKP ini menggunakan input dari keyboard dan memberikan output pada layar monitor. Pada kenyataannya seringkali dilakukan pembacaan input dari arsip dan penulisan output ke arsip.

Berikut adalah keyword yang penting dalam pemrosesan arsip

FILE*             à Tipe data pengaksesan arsip

fopen               à Fungsi untuk membuka arsip

fclose              à Fungsi untuk menutup arsip

fprintf             à Fungsi untuk menulis ke dalam arsip

fscanf              à Fungsi untuk membaca dari dalam arsip

Contoh Program :

Menulis ke dalam arsip :

1:    #include <stdio.h>

2:

3:    void main()

4:    {

5:         FILE* file;

6:         file = fopen("arsip.txt","w");

8:         fprintf(file,"Selamat_Datang_di_Fakultas_Ilmu_Komputer");

9:    }

Membaca dari dalam arsip :

1:    #include <stdio.h>

2:

3:    void main()

4:    {

5:         FILE* file;

6:         char teks1[100];

7:         file = fopen("arsip.txt","r");

8:

9:         fscanf(file,"%s",teks1);

10:

11:       printf("%s",teks1);

12:  }

Catatan :

w dan r adalah kunci untuk pengaksesan arsip, w berarti write, digunakan agar arsip yang diakses hanya dapat ditulis saja, sedangkan r berarti read, digunakan agar arsip yang diakses hanya dapat dibaca saja.

Daftar tools yang digunakan

1.      Compiler C: Turbo C++ 4.5

Algoritma

            Deklarasi :

               file : FILE

               nama, nim, jurusan : string

            Algoritma :

               read(nama)

               read(nim)

               read(jurusan)

               file ß nama,nim,jurusan

               nama, nim, jurusan ß file

               write(nama)

               write(nim)

               write(jurusan)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Lembar Kerja Praktikum 9 :  Variabel

 

Script :

 

#include “iostream.h”
#include “conio.h”

main ()
{
int a,b,c;

cout << “Masukkan nilai A : “; cin >> a;
cout << “Masukkan nilai B : “; cin >> b;
c = a + b;
cout << “Nilai A+B = “<< c;
getch();
}

Ranning Program

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Lembar Kerja Praktikum 10 : SEGITIGA

 

Script

 

#include “iostream.h”
#include “conio.h”

main ()
{
//kamus
float alas,tinggi,luas;

//deskripsi
cout << “Masukkan Alas = “; cin >> alas;
cout << “Masukkan Tinggi = “; cin >> tinggi;
luas = (alas * tinggi) / 2;
cout << “Luas Segitiga = ” << luas;
getch(); //tekan sembarang tombol
}

 

 

Ranning Program

 

 

 

 

 

 

 

 

 

 

 

Lembar Kerja Praktikum 11 : Menukar nilai a ke variabel b

 

Script

 

#include “iostream.h”
#include “conio.h”

main()
{
int A,B,Cadangan;

cout<< “Masukan Nilai A = “; cin >> A;
cout<< “Masukan Nilai B = “; cin >> B;

Cadangan = A;
A=B;
B=Cadangan;

Cadangan =0;

cout << “Nilai A =” << A << “\n” ;
cout << “Nilai B =” << B;

getch();
}

 

Ranning Program

 

 

 

 

 

 

 

 

 

 

 

 

Lembar Kerja Praktikum 12 : Menentukan presdikat

/*
Untuk Menentukan Predikat Kelulusan di perlukan input Nilai dengan keterangan :

A = > = 85 dan <= 100

B = > = 75 dan > 85

C = > = 60 dan > 75

D = < 60

 

Script

 

*/

#include “iostream.h”
#include “conio.h”

main()
{
char Predikat;
float Nilai;

cout<< “masukan Nilai Siswa : “; cin >> Nilai;

if (Nilai>=85 && Nilai <=100)
Predikat = ‘A’;
else if (Nilai>=75 && Nilai <=85)
Predikat =’B’;
else if (Nilai>=60 && Nilai <=75)
Predikat =’C’;
elae if (Nilai<60)
Predikat = ‘D’;
else
Predikat = ”;

cout << “Nilai Huruf : “<< Predikat ;
getch();
}

Ranning Program

 

 

 

 

 

 

 

Lembar Kerja Praktikum 13 : Gaji Bersih


Hitung Gaji Bersih dari :
Gapok : 1.500.000
Tunjangan : 500.000
Pajak : 5%
BPJS : 5%

Input : Nama dan Banyak Bulan ?

Script

*/

#include “iostream.h”
#include “conio.h”

main ()
{
int Gapok, Tunj, nBulan, Gaber, TotalGaji, JumGaber;
float Pajak,BPJS;
char Nama[30];

cout << “Nama Pegawai : “; cin >> Nama;
cout << “Banyak Bulan : “; cin >> nBulan;

Gapok = 1500000;
Tunj = 500000 ;
TotalGaji = Gapok + Tunj;
Pajak = 0.05 * TotalGaji;
BPJS = 0.03 * TotalGaji;

Gaber = TotalGaji – Pajak – BPJS;

JumGaber = Gaber * nBulan;

cout << “SLIP GAJI PEGAWAI\n” << “==========================\n”;
cout << “Nama : ” << Nama << “\n”;
cout << “Gaji Pokok : ” << Gapok <<“\n”;
cout << “Tunjangan : ” << Tunj << “\n”;
cout << “Pajak : ” << Pajak <<“\n”;
cout << “BPJS : ” << BPJS << “\n”;
cout << “Selama : ” << nBulan<<“\n”;
cout << “==================================\n”;
cout << ” Gaji Bersih : ” << “jumGaber” << “\n”;

getch();

}

Ranning Program

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Lembar Kerja Praktikum 14 : Menetukan bilangan bulat ganjil

Scipt

#include “iostream.h”
#include “conio.h”

main ()
{
int input, sisabagi;

cout << “Masukan Bilangan Bulat :”; cin>> input;
sisabagi = input%2;

if ( sisabagi ==0 )
cout << input << ” adalah Bilangan Genap.”;
else
cout << input << ” adalah Bilangan Ganjil.”;

getch ();
}

 

 

Ranning Program

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Lembar Kerja Praktikum 15 : Mencetak karakter bintang dengan bentuk-bentuk segitiga dengan menggunakan perulangan dalam perulangan

 

/*
Mencetak Karakter
*
**
**
***
****
*****

 

Scrip

*/

#include “iostream.h”
#include “conio.h”

main ()
{
int baris,kolom,max ;
char karakter ;

karakter = ‘*’ ;
max = 15;

cout << “Bentuk Pertaama” << endl ;

for (baris=1; baris<=max; baris++)
{
for (kolom=1; kolom<=baris; kolom++)
{
cout << karakter;
}
cout << endl ;
}

cout << “Bentuk Kedua” << endl ;

for (baris=1; baris<=max; baris++)
{
for (kolom=1; kolom<= (max-baris) ; kolom ++)
{
cout << ” ” ;
}
for (kolom=1; kolom<=baris; kolom++)
{
cout << karakter;
}
cout << endl ;
}

cout << “Bentuk Ketiga” << endl ;

for (baris=max; baris>=1; baris–)
{
for (kolom=1; kolom<=baris; kolom++)
{
cout << karakter;
}
cout << endl ;
}

cout << “Bentuk Keempat” << endl ;

for (baris=max ; baris>=1; baris–)
{
for (kolom=1; kolom<= (max-baris) ; kolom ++)
{
cout << ” ” ;
}
for (kolom=1; kolom<=baris; kolom++)
{
cout << karakter;
}
cout << endl ;
}

cout << “Bentuk Refleksi Satu” << endl ;

for (baris=1; baris<=max; baris++)
{
for (kolom=1; kolom<=baris; kolom++)
{
cout << karakter;
}
for (kolom=1; kolom<= (max-baris) ; kolom ++)
{
cout << ” ” ;
}
for (kolom=1; kolom<= (max-baris) ; kolom ++)
{
cout << ” ” ;
}
for (kolom=1; kolom<=baris; kolom++)
{
cout << karakter;
}
cout << endl ;
}
getch ();
}

 

 

Ranning Program

 

 

 

 

 

 

 

 

 

 

 

Lembar Kerja Praktikum 16 : Mencetak deret bilangan menggunakan perulangan

 

Script

#include “iostream.h”
#include “conio.h”

main ()
{
int ulang;

//perulangan for
for (ulang=1; ulang<=10; ulang++)
{
cout << “Cetang Angka = ” << ulang << endl;
}

//perulangan while
ulang=1;
while (ulang <=10)
{
cout << “Cetak Angka = ” << ulang << endl;
ulang++;
}

//perulangan do while
ulang=1;
do
{
cout << “Cetak Angka = ” << ulang << endl;
ulang++ ;
}
while (ulang<=10);

getch () ;
}

 

Ranning Program

Lembar Kerja Praktikum 17 : Soal cerita

Sebuah Toko perlengkapan bahan bangunan yang bernama “TB BARUDAK” memeberikan promo harga Cat Tembok 25 Kg. Bagi konsumen yang membeli sebanyak 3 pile akan mendapatkan potongan harga sebesar 80%, promo ini berlaku bagi setiap konsumen yang membeli mminimal 3 pile atau kelipatannya akan mendapatkan potongan harga 80%, sementara harga 1 pile cat tembok 25 Kg Rp. 154.000,-

# Selesaikan kasus diatas dengan mengunakan bahasa pemrograman C/C++ agar dapat dengan mudah berapa jumlah yang harus dibayarkan oleh konsumen.

Script

 

Ranning Program

 

 

Lembar Kerja Praktikum 18 : Soal cerita

Seorang tukang cat tembok mempunyai ukuran dalam pengecatan yang terbagi dalam 3 kategori kualitas yaitu kualitas tinggi, kualitas sedang dan kualitas rendah. Untuk kualitas tingggi 5 Kg cat tembok dapat menutupi bidang dengan baik seluas 3 X 4 m2 atau seluas 12 m2 dan kualitas sedang 5 Kg cat tembok dapat menutupi bidaang seluas 4 X 5 m2 atau seluas 20 m2 serta kualitas rendah 5 Kg cat tembok dapat menutupi seluas 6 X 11 m2 atau seluas 66 m2.

Buatlah penyelesaian studi kasus diatas dengan menggunakan bahasa pemrograman C/C++ untuk mempermudah dalam menghitung berapa jumlah cat tembok yang dibutuhkan untuk ke 3 kategori kualitas.

Script

Running program

Lembar Kerja Praktikum 19 : Soal Cerita

Buatlah Program menggunakan struktur tentang biaya kuliah mahasiswa dengan ketentuan sebagai berikut

1. D3

Spp tetap = Rp. 500

Spp Variable = Rp. 250/sks

2. S1

Spp Tetap = Rp. 750

SPP variable = Rp. 500/sks

 

Script


#include<conio.h>

#include<iostream.h>

struct mhs

{

char nama[20], nim[20], prodi[3];

int sks, program;

}bayar;

main()

{

int var, tetap;

cout<<" Nama Mahasiswa \t\t : "; cin>>bayar.nama;

cout<<" Nim Mahasiswa \t\t\t : "; cin>>bayar.nim;

cout<<" Prodi [ TI SI MI] \t\t : "; cin>>bayar.prodi;

input:

cout<<" Program [1 = D3 / 2 = S1] \t : ";

cin>>bayar.program;

if(bayar.program < 1 || bayar.program > 2)

{

cout<<" Program Tidak Sesuai ";

goto input;

}

cout<<" Jumlah SKS \t\t\t : "; cin>>bayar.sks;

if(bayar.program == 1)

{

tetap = 500;

var = bayar.sks*250;

}

else if(bayar.program == 2)

{

tetap = 750;

var = bayar.sks*500;

}

cout<<" "<<endl;

cout<<" -----------------------------------------------------"<<endl;

cout<<" \t\t\t OUT PUT "<<endl;

cout<<" -----------------------------------------------------"<<endl;

cout<<" Nama \t\t\t : "<<bayar.nama<<endl;

cout<<" Nim \t\t\t : "<<bayar.nim<<endl;

cout<<" Prodi \t\t\t : "<<bayar.prodi<<endl;

cout<<" Program \t\t : "<<bayar.program<<endl;

cout<<" Jumlah SKS \t\t : "<<bayar.sks<<endl;

cout<<" Biaya SPP Tetap \t : "<<tetap<<endl;

cout<<" Biaya SPP Variable \t : "<<var<<endl;

cout<<" -----------------------------------------------------"<<endl;

getch();

return 0;

}


Hasil Running