cursor

PropellerAds

Monday 17 October 2016

PRAKTIKUM I PENGENALAN PEMROGRAMAN BAHASA C

A.      Tujuan Instruksional Khusus
1.       Menjelaskan sejarah dan ruang lingkup pemakaian bahasa C.
2.       Menjelaskan kelebihan dan kekurangan bahasa C.
3.       Menjelaskan proses kompilasi dan linking program C.
4.       Menjelaskan struktur penulisan bahasa C dan menjelaskan komponen-komponen program dalam contoh aplikasi sederhana.
5.       Mengenal pemrograman dengan bahasa C.
6.       Mampu membuat program sederhana dengan bahasa C.
B.      Dasar Teori
1.       Sejarah dan Ruang Lingkup C 
           C adalah bahasa yang standar, artinya suatu program yang ditulis dengan versi bahasa C tertentu akan dapat dikompilasi dengan versi bahasa C yang lain dengan sedikit
modifikasi.  Standar bahasa C yang asli adalah standar dari UNIX.  Sistem operasi, kompiler C dan seluruh program aplikasi UNIX yang esensial ditulis dalam bahasa C. Patokan dari standar UNIX ini diambilkan dari buku yang ditulis oleh Brian Kerninghan dan Dennis Ritchie berjudul "The C Programming Language", diterbitkan oleh Prentice-Hall tahun 1978.  Deskripsi C dari Kerninghan dan Ritchie ini kemudian dikenal secara umum sebagai "K&R C". Kepopuleran bahasa C membuat versi-versi dari bahasa ini banyak dibuat untuk komputer mikro.  Untuk membuat versi-versi tersebut menjadi standar, ANSI (American National Standards Institute) membentuk suatu komite (ANSI committee X3J11) pada tahun 1983 yang kemudian menetapkan standar ANSI untuk bahasa C.  Standar ANSI ini didasarkan kepada standar UNIX yang diperluas.  Standar ANSI menetapkan sebanyak 32 buah kata-kata kunci (keywords)  standar.  Versi-versi bahasa C yang menyediakan paling tidak 32 kata-kata kunci ini dengan sintaks yang sesuai dengan yang ditentukan oleh standar, maka dapat dikatakan mengikuti standar ANSI.  Buku ajar ini didasarkan pada bahasa C dari standar ANSI.
2.       Proses Kompilasi dan Linking Program C
Agar suatu program dalam bahasa pemrograman dapat dimengerti oleh komputer, program haruslah diterjemahkan dahulu ke dalam kode mesin. Adapun penerjemah yang digunakan bisa berupa interpreter atau kompiler. Interpreter adalah suatu jenis penerjemah yang menerjemahkan baris per baris intsruksi untuk setiap saat. Keuntungan pemakaian interpreter, penyusunan program relatif lebih cepat dan bisa langsung diuji sekalipun masih ada beberapa kesalahan secara kaidah dalam program. Sedangkan kelemahannya, kecepatannya menjadi lambat sebab sebelum suatu instruksi dijalankan selalu harus diterjemahkan terlebih dahulu. Selain itu, saat program dieksekusi, interpreter juga harus berada dalam memori. Jadi memori selalu digunakan baik untuk program maupun interpreter.  Di samping itu, program sumber (source program) yaitu program aslinya tidak dapat dirahasiakan (orang lain selalu bisa melihatnya). Kebanyakan versi C yang beredar  di pasaran menggunakan penerjemah berupa kompiler. Kompiler merupakan jenis penerjemah yang lain, dengan cara kerjanya yaitu menerjemahkan seluruh instruksi dalam program sekaligus. Proses pengkompilasian ini cukup dilakukan sekali saja. Selanjutnya hasil penerjemahan (setelah melalui tahapan yang lain) bisa dijalankan secara langsung, tanpa tergantung lagi oleh program sumber maupun kompilernya. Keuntungannya, proses eksekusi dapat berjalan dengan cepat, sebab tak ada lagi proses penerjemahan. Di samping itu, program sumber bisa dirahasiakan, sebab yang dieksekusi adalah program yang sudah dalam bentuk kode mesin. Sedangkan kelemahannya, proses pembuatan dan pengujian membutuhkan waktu relatif lebih lama, sebab ada waktu untuk mengkompilasi (menerjemahkan) dan ada pula waktu melakukan proses linking. Perlu pula diketahui, program akan berhasil dikompilasi hanya jika program tak mengandung kesalahan secara kaidah sama sekali. Proses dari bentuk program sumber C (source program, yaitu program yang ditulis dalam bahasa C) hingga menjadi program yang executable (dapat dieksekusi secara langsung) ditunjukkan pada Gambar 1.1 di bawah ini.
         
Gambar 1.1 Proses Kompilasi-Linking dari program C
Keterangan Gambar : 
Pertama-tama program C ditulis dengan menggunakan editor.  Program ini disimpan dalam file yang disebut file program sumber (dengan ciri utama memiliki ekstensi .c).  File include (umumnya memiliki ekstensi .h, misalnya stdio.h, atau biasa disebut dengan file judul (header file)) berisi kode yang akan dilibatkan dalam program C (Pada program tertentu bisa saja tidak melibatkan file include).  Berikutnya, kode dalam file program sumber maupun kode pada file include akan dikompilasi oleh kompiler menjadi kode obyek.  Kode obyek ini disimpan pada file yang biasanya berekstensi .obj, atau .o (bergantung kepada lingkungan/environment sistem operasi yang dipakai). Kode obyek berbentuk kode mesin, oleh karena itu tidak dapat dibaca oleh pemrogram. Akan tetapi kode ini sendiri juga belum bisa dipahami komputer.  Supaya bisa dimengerti oleh komputer, maka kode obyek bersama-sama dengan kode obyek yang lain (kalau ada) dan isi file pustaka (library file, yaitu file yang berisi rutin untuk melaksanakan tugas tertentu. File ini disediakan oleh pembuat kompiler, biasanya memiliki ekstensi .lib) perlu dikaitkan (linking) dengan menggunakan linker, membentuk sebuah program yang executable (program yang dapat dijalankan/dieksekusi secara langsung dalam lingkungan sistem operasi). Program hasil linker ini disimpan dalam file yang disebut file executable, yang biasanya berekstensi .exe. 
3.       Struktur Penulisan Program C
Untuk dapat memahami bagaimana suatu program ditulis, maka struktur dari program harus dimengerti terlebih dahulu.  Tiap bahasa komputer mempunyai struktur program yang berbeda.  Struktur program memberikan gambaran secara luas, bagaimana bentuk program secara umum. Program C pada hakekatnya tersusun atas sejumlah blok fungsi. Sebuah program minimal mengandung sebuah fungsi. Fungsi pertama yang harus ada dalam program C dan sudah ditentukan namanya adalah main().  Setiap fungsi terdiri atas satu atau beberapa pernyataan, yang secara keseluruhan dimaksudkan untuk melaksanakan tugas khusus. Bagian pernyataan fungsi (sering disebut tubuh fungsi) diawali dengan tanda kurung kurawal buka ({) dan diakhiri dengan tanda kurung kurawal tutup (}). Di antara kurung kurawal itu dapat dituliskan statemen-statemen program C.  Namun pada kenyataannya, suatu fungsi bisa saja tidak mengandung pernyataan sama sekali. Walaupun fungsi tidak memiliki pernyataan, kurung kurawal haruslah tetap ada. Sebab kurung kurawal mengisyaratkan awal dan akhir definisi fungsi.  Berikut ini adalah struktur dari program C :

Bahasa C dikatakan sebagai bahasa pemrograman terstruktur karena strukturnya menggunakan fungsi-fungsi sebagai program-program bagiannya (subroutine).  Fungsi-fungsi yang ada selain fungsi utama (main()) merupakan program-program bagian.  Fungsi-fungsi ini dapat ditulis setelah fungsi utama atau diletakkan di file pustaka (library).   Jika fungsi-fungsi diletakkan di file pustaka dan akan dipakai di suatu program, maka nama file judulnya (header file)harus dilibatkan dalam program yang menggunakannya dengan preprocessor directive berupa #include.

4.       Pengenalan Fungsi-Fungsi Dasar
a.       Fungsi main()
Pada program C, main() merupakan fungsi yang istimewa. Fungsi main() harus ada pada program, sebab fungsi inilah yang menjadi titik awal dan titik akhir eksekusi program. Tanda { di awal fungsi menyatakan awal tubuh fungsi dan sekaligus awal eksekusi program, sedangkan tanda } di akhir fungsi merupakan akhir tubuh fungsi dan sekaligus adalah akhir eksekusi program. Jika program terdiri atas lebih dari satu fungsi, fungsi main() biasa ditempatkan pada posisi yang paling atas dalam pendefinisian fungsi. Hal ini hanya merupakan kebiasaan. Tujuannya untuk memudahkan pencarian terhadap program utama bagi pemrogram. Jadi bukanlah merupakan suatu keharusan.
b.       Fungsi printf().
Fungsi printf() merupakan fungsi yang umum dipakai untuk menampilkan suatu keluaran pada layar peraga. Untuk menampilkan tulisan
Selamat belajar bahasa C
misalnya, pernyataan yang diperlukan berupa:
printf(“Selamat belajar bahasa C”);
Pernyataan di atas berupa pemanggilan fungsi printf() dengan argumen atau parameter berupa string. Dalam C suatu konstanta string ditulis dengan diawali dan diakhiri tanda petik-ganda (“). Perlu juga diketahui pernyataan dalam C selalu diakhiri dengan tanda titik koma (;). Tanda titik koma dipakai sebagai tanda pemberhentian sebuah pernyataan dan bukanlah sebagai pemisah antara dua pernyataan. Tanda \ pada string yang dilewatkan sebagai argumen printf() mempunyai makna yang khusus. Tanda ini bisa digunakan untuk menyatakan karakter khusus seperti karakter baris-baru ataupun karakter backslash (miring kiri). Jadi karakter seperti \n sebenarnya menyatakan sebuah karakter. Contoh karakter yang ditulis dengan diawali tanda \ adalah:
   \”         menyatakan karakter petik-ganda
   \\          menyatakan karakter backslash
   \t          menyatakan karakter tab
Dalam bentuk yang lebih umum, format printf()
printf(“string kontrol”, daftar argumen);
dengan string kontrol dapat berupa  satu atau sejumlah karakter yang akan ditampilkan ataupun berupa penentu format yang akan mengatur penampilan dari argumen yang terletak pada daftar argumen. Mengenai penentu format di antaranya berupa:
%d         untuk menampilkan bilangan bulat (integer)
%f          untuk menampilkan bilangan titik-mengambang (pecahan)
%c          untuk menampilkan sebuah karakter
%s          untuk menampilkan sebuah string
Contoh:
#include <stdio.h>
void main( )
{
     printf(“No    : %d\n”, 10);
     printf(“Nama  : %s\n”, “Ali”);
     printf(“Nilai : %f\n”,80.5);
     printf(“Huruf : %c\n”,‘A’);
}
1.      Pengenalan Praprosesor #include
#include merupakan salah satu jenis pengarah praprosesor (preprocessor directive). Pengarah praprosesor ini dipakai untuk membaca file yang di antaranya berisi deklarasi fungsi dan definisi konstanta. Beberapa file judul disediakan dalam C. File-file ini mempunyai ciri yaitu namanya diakhiri dengan ekstensi .h. Misalnya pada program #include <stdio.h> menyatakan pada kompiler agar membaca file bernama stdio.h saat pelaksanaan kompilasi.
Bentuk umum #include :

#include “namafile”

Bentuk pertama (#include <namafile>) mengisyaratkan bahwa pencarian file dilakukan pada direktori khusus, yaitu direktori file include. Sedangkan bentuk kedua (#include “namafile”)menyatakan bahwa pencarian file dilakukan pertama kali pada direktori aktif tempat program sumber dan seandainya tidak ditemukan pencarian akan dilanjutkan pada direktori lainnya yang sesuai dengan perintah pada sistem operasi.
            Kebanyakan program melibatkan file stdio.h (file-judul I/O standard, yang disediakan dalam C). Program yang melibatkan file ini yaitu program yang menggunakan pustaka I/O (input-output) standar seperti printf().
2.      Komentar dalam Program
            Untuk keperluan dokumentasi dengan maksud agar program mudah dipahami di suatu saat lain, biasanya pada program disertakan komentar atau keterangan mengenai program.Dalam C, suatu komentar ditulis dengan diawali dengan tanda /* dan diakhiri dengan tanda */.
 Contoh :
              /* Tanda ini adalah komentar */

              #include <stdio.h>
             
  main()
  {
  printf(“Coba\n”);                           /* Ini adl program pertama */
  }
C.  Daftar Alat dan Bahan.
1.      CPU
2.      Monitor
3.      Keyboard
4.      Mouse
5.      Printer
6.      Job Sheet Praktikum

D. Langkah Kerja.
1.      Hidupkan Komputer sampai menyala dan mengeluarkan layar Windows.
2.      Pilih Start pada ujung kiri bawah monitor.
3.      Pilih Program.
4.      Pilih Program Turbo C atau TC for windows.
5.      Jika Layar Turbo C sudah keluar, Pilih File.
6.       Pilih News untuk membuka Program baru, atau open untuk membuka file program yang sudah dibuat sebelumnya.
7.      Ketik Program sesuai dengan di data program.
8.      Setelah selesai pengetikan, pilih file dan save as program tersebut dengan nama file sesuai keinginan praktikan.
9.      compile program tersebut untuk melihat kebenaran pengetikan program dan untuk mengubah file dengan extension .cpp menjadi file .hex, .bin dan. .obj.
10.  Setelah sukses dicompile maka pilih run untuk menjalankan program tersebut.
11.  Lihat hasilnya dimonitor dan catat, kemudian analisa hasil percobaan tersebut.
12.  Lakukan praktikum untuk file program berikutnya dengan cara yang sama.

E. Data Program
1.   Buatlah program yang akan menampilkan tulisan dilayar monitor :
      “ Selamat datang di Praktikum Dasar Komputer
              Laboratorium Komputer Teknik Elektro
                     Politeknik Negeri Lhokseumawe “
      Contoh :               
               #include <stdio.h>
               void main()
               {
printf(“Selamat datang di Praktikum Dasar Komputer\n”);
printf(“    Laboratorium Komputer Teknik Elektro\n”);
printf(”       Politeknik Negeri Lhokseumawe \n”);
}
2. Buatlah program dengan menggunakan tipe bilangan real presisi tunggal seperti berikut.
      Contoh
               #include<stdio.h>
               void main()
               {
               int jumlah;
               float harga_per_unit, harga_total;
               jumlah = 10;
               harga_per_unit = 17.5;
               harga_total = jumlah * harga_per_unit;
               printf(“Harga total = %f\n”, harga_total);
               }
           
3. Mencetak kalimat dalam beberapa baris.
#include <stdio.h>
void main()
{
printf("Pemrograman adalah sesuatu yg menyenangkan\n");
printf("Pemrograman bahasa C adalah lebih menyenangkan\n");
printf("Testing....\n..1\n...2\n....3\n");
}

4. Menghitung penjumlahan dan mencetak hasilnya
#include <stdio.h>
void main()
{
int jumlah;
jumlah = 1024 + 4096;
printf("Jumlah dari 1024 dengan 4096 adalah %d\n", jumlah);
}

5. Mengisi nilai variabel int, penjumlahan isi variabel dan mencetak hasilnya
#include <stdio.h>
void main()
{
int nilai1, nilai2, jumlah;
nilai1 = 1024;
nilai2 = 4096;
jumlah = nilai1 + nilai2;
printf("Jumlah dari %d dengan %d adalah %d\n", nilai1, nilai2, jumlah);
}

6. Mengisi variabel float, mengalikan isi variabel dan mencetak hasilnya
#include <stdio.h>

void main()
{
        float harga, total;
        int jumlah;

        harga = 132.055f;
        jumlah = 50;
        total = harga * jumlah;

        printf("Harga total = %f\n", total);
}

7. Menentukan hasil cetakan dengan lebar medan (field) yang tepat versi 1
#include <stdio.h>

void main()
{
        float bil = 2.5f, nomor = 33.567f;

        printf("Bilangan = %f\n", bil);
        printf("Nomor    = %f\n", nomor);
}

F.  Soal

1. Buatlah program untuk menampilkan tulisan di bawah ini :
PEMROGRAMAN BAHASA C
PRODI TEKNIK ELEKTRONIKA
JURUSAN TEKNIK ELEKTRO
POLITEKNIK NEGERI LHOKSEUMAWE
DIPROGRAM OLEH : NAMAMU

2. Carilah kesalahan dalam program di bawah ini :
main ()
{
       INT jumlah;
      
       /* PERHITUNGAN HASIL
       jumlah = 25 + 37 - 19;

/* TAMPILKAN HASIL
       printf("Berapa hasil perhitungan 25 + 37 - 19 ?\n);
       printf("Jawabannya adalah %d\n" jumlah); 
}

3. Berapakah nilai jawaban yang ditampilkan oleh program di bawah ini :
#include <stdio.h>

void main()
{
        int jawab, hasil;

        jawab = 100;
        hasil = jawab - 10;

        printf("Jawabannya adalah %d\n", hasil + 6);
}


4. Buatlah program yang menampilkan tulisan :
      “Nama Saya       : nama praktikan
        NIM                 : NIM praktikum “
Dengan perintah printf terstruktur %s, dengan nama dan nim merupakan input dari user.
               (panduan : ingat program printf dan scanf)
               #include <stdio.h>
               void main ()
               {………
                …….
               }

5. Buatlah program yang menampilkan karakter yang merupakan masukan dari keyboard.
      (panduan :ingatlah useran printf )
               #include <stdio.h>
               #include<conio.h>
               main ();
               {
               char karakter;
               printf(“…
               karakter = getch();
               printf(“…,karakter);
               }