Tugas
Tugas
Praprosesor #include
Pada contoh program sebelumnya terdapat baris yang berisi #include :
1. #include merupakan salah satu jenis pengarah praprosesor yang digunakan untuk
memberitahu kompiler agar dalam proses linking membaca file yang dinamakan file judul
(header file), yaitu file yang diantaranya berisi deklarasi fungsi dan definisi konstanta.
2. Bahasa C menyediakan beberapa file judul yang ditandai dengan ekstensi .h. Misal, pada
program di atas, #include menyatakan pada kompiler agar membaca file bernama stdio.h saat
melakukan kompilasi.
3. Bentuk umum #include: #include atau #include "namafile"
4. Bentuk pertama ( #include ) mengisyaratkan bahwa pencarian file dilakukan pada direktori
khusus (direktori file include), yang merupakan default direktori file-file judul yang
disediakan oleh bahasa pemrograman.
5. 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 sesuai dengan perintah pada sistem operasi (yaitu
path).
FUNGSI HEADER
=> Stdio.h
Yang merupakan singkatan dari "standar input/output header", adalah header yang berisi
definisi makro, konstanta, dan deklarasi fungsi dari dua jenis yang digunakan untuk berbagai
standar input output operasi.
=> conio.h
Adalah header file yang digunakan untuk membuat teks antarmuka pengguna.
=> assert.h
Adalah file header yang mendefinisikan makro menegaskan c processor.
=> complex.h
Adalah
file
header
yang
mendefinisikan
fungsi
untuk
aritmatika
kompleks.
=> ctype.h
Adalah
header
untuk
deklarasi
yang
berfungsi
mengklasifikasi
karakter.
=> errno.h
Adalah file header yang berfungsi melaporkan kondisi kesalahan melalui kode kesalahan.
=> fenv.h
Adalah file header yang mengandung berbagai fungsi dan makro untuk memanipulasi
lingkungan floating point.
=> float.h
Adalah header yang berfungsi memperluas ke berbagai limit dan parameter dari jenis floating
point standar.
=> Inttypes.h
File header yang berfungsi mendefinisakan beberapa makro untuk digunakan dengan fungsi
printf,dan
scanf,
serta
fungsi
untuk
bekerja
dengan
jenis
intmax_t.
=> iso646.h
Adalah header yang mendefinisikan beberapa makro yang memungkinkan programmer untuk
menggunakan c bitwise bahasa dan operator logika yang tanpa file header tidak bisa cepat
atau
mudah
di
ketik
pada
beberapa
keyboard
non-qwerty
internasional.
=> limits.h
Adalah file header dari perpustakaan standar bahasa pemrograman c yang mencakup definisi
karakteristik
dari
jenis
variabel
umum.
=> locale.h
Adalah pemrograman bahasa c file header, digunakan untuk tujuan lokalisasi.
=> math.h
Berisi
prototype
fungsi
untuk
pustaka
matematika.
=> string.h
Berisi prototype fungsi untuk pemrosesan string.
Ukuran
Data
Memori
Char
Int
Short
Long
Float
Double
Long
1 Byte
2 Byte
2 Byte
4 Byte
4 Byte
8 Byte
57
15 16
10 Byte
19
Double
Jumlah
Jangkauan Nilai
Digit
Unsigned digunakan bila data yang digunakan hanya data yang positif saja
Tipe
Jumlah
Data
Memori
Unsigned Integer
Unsigned Character
Unsigned Long Integer
2 Byte
1 Byte
4 Byte
Jangkauan Nilai
0 65535
0 255
0 4,294,967,295
Deklarasi Konstanta
Konstanta adalah suatu nilai yang sifatnya tetap. Secara garis besar konstanta dapat dibagi
menjadi dua bagian, yaitu :
1. Konstanta Bilangan
Dalam hal ini konstanta bilangan dibagi menjadi tiga kelompok, antara lain;
1. Konstanta Bilangan Bulat (Integer).
2. Konstanta Desimal Berpresisi Tunggal ( Floating Point )
3. Konstanta Desimal Berpresisi Ganda ( Double Precision )
4. Konstanta Teks
Dalam hal ini konstanta Teks dibagi menjadi dua kelompok, antara lain;
1. Data Karakter (Character).
2. Data Teks (String)
Bentuk deklarasi konstanta diawali dengan reserved word const. Bentuk penulisannya :
const nama-konstanta = nilai konstanta;
contoh : const x = 89;
Deklarasi Variabel
Suatu tempat menampung data atau konstanta dimemori yang mempunyai nilai atau data
yang dapat berubah-ubah selama proses program
Dalam pemberian nama variabel, mempunyai ketentuan-ketentuan antara lain ;
Tidak boleh ada sepasi ( cth : gaji bersih ) dan dapat menggunakan tanda garis bawah
( _ ) sebagai penghubung (cth : gaji_bersih).
SIMBOL DEKLARASI
int
float
double
char
unsigned int
unsigned char
Long Integer
Unsigned Long Integer
long int
unsigned long int
Perintah Keluaran
Perintah standar output yang disediakan oleh Borland C++, diantaranya adalah :
printf()
Fungsi printf() merupakan fungsi keluaran yang paling umum digunakan untuk menampilkan
informasi kelayar.
Bentuk Penulisan
printf(string-kontrol, argumen-1, argumen-2, );
TIPE DATA
Integer
Floating Point
Bentuk Desimal
Bentuk Berpangkat
Bentuk Desimal dan Pangkat
Double Precision
Character
String
Unsigned Integer
Long Integer
Long Unsigned Integer
Unsigned Hexadecimal Integer
Unsigned Octal Integer
int a = 7;
%d,b,2);
char b = G;
Contoh Program :
clrscr();
#include <stdio.h>
printf(%c Merupakan Abjad Yang Ke
#include <conio.h>
%d, b, a);
main()
{
Escape Sequences
ESCAPE
SEQUENCES
\b
\f
\n
\r
\t
\
\
\\
\xaa
\aaa
PENGERTIAN
Backspace
Formfeed
Baris Baru
Carriage Return
Tab ( default = 8 karakter )
Tanda kutip tunggal ( )
Tanda Kutip Ganda ( )
Backslash
Kode ASCII dalam hexadecimal.(aa menunjukkan angka ASCII ybs )
Kode ASCII dalam octal. (aaa menunjukkan angka ASCII ybs )
puts()
Perintah puts() sebenarnya sama dengan printf(), yaitu digunakan untuk mencetak string ke
layar. puts() berasal dari kata PUT STRING.
putchar()
cout()
Fungsi cout() merupakan sebuah objeck didalam C++ digunakan untuk menampilkan suatu
data kelayar. Untuk menggunakan fungsi cout() ini, harus menyertakan file header
iostream.h.
Perintah Masukan
scanf()
gets()
Fungsi gets() digunakan untuk memasukkan data string, Bentuk umum dari fungsi ini adalah
gets(nama-variabel-array);
cin()
Fungsi cin() merupakan sebuah objeck didalam C++ digunakan untuk memasukkan suatu
data. Untuk menggunakan fungsi cin() ini, harus menyertakan file header iostream.h .
getch()
Fungsi getch() (get character and echo) dipakai untuk membaca sebuah karakter dengan sifat
karakter yang dimasukkan tidak perlu diakhiri dengan menekan tombol ENTER, dan karakter
yang dimasukan tidak akan ditampilkan di layar. File header yang harus disertakan adalah
conio.h.
getche()
Fungsi getche() dipakai untuk membaca sebuah karakter dengan sifat karakter yang
dimasukkan tidak perlu diakhiri dengan menekan tombol ENTER, dan karakter yang
dimasukan ditampilkan di layar. File header yang harus disertakan adalah conio.h.
Selain itu kedua fungsi ini dapat digunakan untuk menahan agar tidak langsung kembali
kedalam listing program dan hasil dari program yang di eksekusi dapat dilihat tanpa menekan
tombol ALT F5. Karena fungsi getch() merupakan fungsi masukkan, jadi sebelum program
keluar harus menginputkan satu buah karakter.
FUNGSI
Function ( Fungsi ) merupakan blok dari kode yang dirancang untuk melaksanakan tugas
khusus. Pada intinya fungsi berguna untuk :
Fungsi-fungsi yang sudah kita kenal sebelumnya adalah fungsi main(), yang bersifat mutlak,
karena fungsi ini program akan dimulai, sebagai contoh yang lainnya fungsi printf() yang
mempunyai tugas untuk menampilkan informasi atau data kelayar dan masih banyak lainnya.
Struktur Fungsi
Sebuah fungsi sederhana mempunyai bentuk penulisan sebagai berikut :
nama_fungsi(argumen)
{
pernyataan / perintah;
pernyataan / perintah;
pernyataan / perintah;
}
Contoh pembuatan fungsi sederhana :
/* pembuatan fungsi garis() */
garis();
garis()
{
garis();
printf(\n-\n);
getche();
}/
}
* program utama */
main()
{
clrscr();
Prototipe Fungsi
Prototipe fungsi digunakan untuk menjelaskan kepada kompiler mengenai :
Jumlah parameter.
Salah satu keuntungan pemakai prototipe, kompiler akan melakukan konversi antara tipe
parameter dalam definisi dan parameter saat pemanggilan fungsi tidak sama atau akan
menunjukkan kesalahan jika jumlah parameter dalam definisi dan saat pemanggilan berbeda.
Contoh prototipe fungsi :
float total ( float a, float b); (menggunakan titik koma)
Jika dalam penggunaan fungsi yang dideklarasikan dengan menggunakan prototipe, maka
bentuk definisi harus diubah. Sebagai contoh pada pendefinisian berikut :
float total(a, b)
float a, y;
Bentuk pendefinisian diatas harus diubah menjadi bentuk modern pendefinisian fungsi :
float total(float a, float b) (Tidak menggunakan titik koma)
Parameter Fungsi
Terdapat dua macam para parameter fungsi, yaitu :
1. Parameter formal adalah variabel yang ada pada daftar parameter dalam definisi
fungsi.
2. Parameter Aktual adalah variabel yang dipakai dalam pemanggilan fungsi.
tukar(a,b);
#include<stdio.h>
#include<iostream.h>
cout<<\na = <<a<< b = <<b;
tukar(int x, int y);
getch();
main()
} tukar(int x, int y)
{
{
int a, b;
int z;
a = 88; b = 77;
z = x; x = y; y = z;
clrscr();
cout<<\n\nNilai di dalam Fungsi
cout<<Nilai Sebelum Pemanggilan
Tukar();
Fungsi;
cout<<\nx = <<x<< y = <<y;
cout<<\na = <<a<< b = <<b;
cout<<endl;
}
Pemanggilan dengan reference merupakan upaya untuk melewatkan alamat dari suatu
variabel kedalam fungsi. Cara ini dapat dipakai untuk mengubah isi suatu variabel diluar
fungsi dengan melaksanakan pengubahan dilakukan didalam fungsi. Contoh :
/* Penggunaan Call By Reference */
luas_bs = luas(4.25);
#include<stdio.h>
#include<iostream.h>
getch();
luas(float sisi);
} luas(float sisi)
main()
{
{
return(sisi*sisi);
float luas_bs;
}
clrscr();
#include<conio.h>
#include<stdio.h>
cin>>sisi_bs;
#include<iostream.h>
luas_bs = luas(sisi_bs);
luas(float sisi);
cout<<\nLuas Bujur Sangkar =
main()
{
float luas_bs, sisi_bs;
clrscr();
cout<<\nMenghitung Luas Bujur
<<luas_bs<< Cm;
getch();
} luas(float sisi)
{
return(sisi*sisi);
Sangkar<<endl;
}
Pernyataan return().
Digunakan untuk mengirimkan nilai atau nilai dari suatu fungsi kepada fungsi yang lain yang
memanggilnya. Pernyataan return() diikuti oleh argumen yang berupa nilai yang akan
dikirimkan. Contoh pemakaian pernyataan return() dapatdilihat pada contoh berikut ;
/* */
/* Penggunaan Fungsi return() */
/* */
#include<conio.h>
a = tambah(b);
#include<stdio.h>
#include<iostream.h>
getch();
tambah(int c); //prototype fungsi tambah
} tambah(int c) //fungsi tambah
main()
{
{
return(c+=2);
int a, b = 5;
}
clrscr();
Inline Function
Fungsi inline ( inline function ) digunakan untuk mempercepat proses program, terutama
program-program yang menggunakan sering menggunakan fungsi, terutama programprogram yang menggunakan pernyataan perulangan proses seperti for, while dan do while.
Inline function dideklarasikan dengan menyisipkan kata kunci inline didepan tipe data.
/* */
/* Penggunaan inlide function */
/* */
#include<conio.h>
#include<stdio.h>
int k;
#include<iostream.h>
clrscr();
return(a * b);
getch();
}
}
main()
Function Overloading
Function Overloading adalah mendefinisikan beberapa fungsi, sehingga memiliki nama yang
sama. Dapat diartikan bahwa fungsi yang overload berarti menyediakan versi lain dari fungsi
tersebut. Salah satu kelebihan dari C++ adalah Overloading. Sebagai contoh membentuk
fungsi yang sama dengan tipe yang berbeda-beda dan dibuatkan pula nama fungsi yang
berbedabeda pula.
/* - */
/* Penggunaan function overloading */
/* - */
#include<conio.h>
getch();
#include<stdio.h>
} int hitung(int b)
#include<iostream.h>
return(b*b);
} long hitung(long c)
void main()
return(c*c);
clrscr();
double hitung(double d)
cout<<hitung(4)<<endl;
cout<<hitung(2)<<endl;
return(d*d);
cout<<hitung(3)<<endl;
cout<<hitung(5)<<endl;
Clrscr();
#include <conio.h>
#include <string.h>
Void main()
#include <iostream.h>
#include <conio.h>
#include <string.h>
If (hasil==0)
Void main()
Else if (hasil<0)
Else
#include <iostream.h>
char kosong[15] = ;
#include <conio.h>
clrscr();
#include <string.h>
void main()
#include <iostream.h>
#include <conio.h>
Clrscr();
#include <string.h>
Void main()
<< endl;
#include <iostream.h>
#include <conio.h>
clrscr();
#include <string.h>
strrev(kompiler);
void main()
cout<< kompiler<<endl;
#include <iostream.h>
#include <conio.h>
#include <string.h>
char data[25];
void main()
clrscr();
strcpy(data, teks);
Fu
ato
ato
ato
Prot
otipe
stdli
b.h
stdli
b.h
stdli
b.h
Keterangan
atof(+2.1E+02)
210
atof( 20.1)
20
atof(+2)
atoi(+2.1E+02)
atof(2ABC)
atoi+2)
atoi(2ABC)
atoll(+2)
atoi( 20.1)
20
atoll(2ABC)
atol(+2.1E+02)
atol( 20000000)
20000000
PENYELESAIAN KONDISI
Pernyataan IF
if (kondisi)
pernyataan;
Pernyataan IF ELSE
if (kondisi)
perintah-1;
else
perintah-2;
Jika if-else diikuti dengan pernyataan majemuk maka bentuk penulisannya sebagai
berikut :
if (kondisi)
else
perintah-1;
perintah-2;
Pernyataan NESTED IF
if(kondisi)
if(kondisi)
perintah;
else
perintah;
else
if(kondisi)
perintah;
else
perintah;
Bentuk dari if-else bertingkat sebenarnya serupa dengan nested if, keuntungan
penggunanan if-else bertingkat dibanding dengan nested if adalah penggunaan bentuk
penulisan yang lebih sederhana
if(kondisi1)
..perintah;
..perintah;
else
else if(kondisi2)
..perintah;
..perintah;
..perintah;
..perintah;
Pernyataan switch case ini memiliki kegunaan sama seperti if else bertingkat,
tetapi penggunaannya untuk memeriksa data yang bertipe karakter atau integer.
Bentuk penulisan perintah ini sebagai berikut :
break;
case konstanta-1 :
perintah;
perintah;
default :
break;
perintah;
case konstanta-2 :
perintah;
perintah;
perintah;
Pernyataan break menunjukan bahwa perintah siap keluar dari switch. Jika pernyataan
ini tidak ada, maka program akan diteruskan kecabang cabang yang lainnya.
#include<stdio.h>
#include<conio.h>
#include<iostream.h>
case B :
main()
case b :
cout<<Alat Elelktronik;
char kode;
break;
clrscr();
case C :
case c :
cout<<Alat Masak;
break;
default:
[A..C]
: ;
cin>>kode
switch(kode)
case A :
break;
case a :
getch();
break;
PROSES PERULANGAN
kode;
Pernyataan for
Perulangan yang pertama adalah for. Bentuk umum pernyataan for sebagai berikut :
Bila pernyataan didalam for lebih dari satu maka pernyataan-pernyataan tersebut
harus diletakan
pernyataan / perintah;
pernyataan / perintah;
pernyataan / perintah;
Sebagai contoh program untuk mencetak bilangan dari 1 hingga 10 secara menaik,
sebagai berikut :
/* */
/* */
#include<stdio.h>
int a;
#include<conio.h>
clrscr();
#include<iostream.h>
main()
cout<<a;
Pernyataaan Nested for adalah suatu perulangan for didalam perulangan for yang
lainnya. Bentuk umum pernyataan Nested for sebagai berikut :
pernyataan / perintah;
/**/
/* - */
#include<stdio.h>
#include<conio.h>
cout<<endl;
main()
cout<<a;
int a, b;
clrscr();
Perulangan tak berhingga merupakan perulangan ( loop ) yang tak pernah berhenti
atau mengulang terus, hal ini sering terjadi disebabkan adanya kesalahan penanganan
kondisi yang dipakai untuk keluar dari loop.
/* - */
/* - */
#include<stdio.h>
clrscr();
#include<conio.h>
main()
cout<< bil;
int bil;
Jika terjadi hal semacam ini, untuk menghentikan proses yang terus menerus
semacam ini denan
Pernyataan goto
(identifier) yang diikuti dengan tanda titik dua ( : ). Bentuk pemakaian goto sebagai
berikut :
goto label;
/* */
/* */
#include<iostream.h>
cout<<Masukkan Bilangan = ;
#include<stdio.h>
cin>>a;
#include<conio.h>
b = a % 2;
main()
int a, b;
char lagi;
lagi = getche() ;
atas:
if (lagi == Y || lagi == y)
clrscr();
goto atas;
);
getch();
Pernyataan While
Bentuk umum perulangan while, dengan lebih dari perintah / pernyataan, sebagai
berikut :
while ( syarat )
Pernyataan / perintah ;
Contoh Program
/* - */
/* Program while.cpp */
/* - */
#include <stdio.h>
while(bil<=10)
#include <conio.h>
main()
cout<<bil;
++bil;
int bil=1;
clrscr();
Pernyataan do while
do
Pernyataan / perintah ;
while ( syarat )
Bentuk umum perulangan do while, dengan lebih dari perintah / pernyataan, sebagai
berikut:
do
Pernyataan / perintah ;
while ( syarat )
Contoh Program :
/* */
/* Program do while */
/* */
#include <stdio.h>
#include <conio.h>
main()
cout<<bil;
bil+=2;
int bil=2;
clrscr();
while(bil<=10);
do
Pernyataan break
#include <stdio.h>
#include <conio.h>
if (bil >= 6)
main()
break;
cout<<bil;
int bil = 1;
clrscr();
while(bil++);
do
#include <stdio.h>
#include <conio.h>
if (bil > 5)
main()
break;
int bil=1;
bil++
clrscr();
Pernyataan continue
#include <stdio.h>
#include <conio.h>
int bil;
main()
clrscr();
VARIABEL ARRAY
Variabel Larik atau lebih dikenal dengan ARRAY adalah adalah Tipe terstruktur yang
terdiri dari sejumlah komponenkomponen yang mempunyai tipe yang sama. Suatu
Array mempunyai jumlah komponen yang banyaknya tetap. Banyaknya komponen
dalam suatu larik ditunjukan oleh suatu indek untuk membedakan variabel yang satu
dengan variabel yang lainnya. Variabel array dalam C++, dapat digolongkan menjadi
tiga buah dimensi :
Cara mendeklarasikan variabel array sama seperti deklarasi variabel yang lainnya,
hanya saja diikuti oleh suatu indek yang menunjukan jumlah maksimum data yang
disediakan.
Tipe-Data Nama_Variabel[Ukuran]
Keterangan :
float Nil_Akhir[6];
float type data, Nil_Akhir elemen array, [6] Jumlah elemen Array
Suatu array dapat digambarkan sebagai kotak panjang yang berisi kotak-kotak kecil
didalam kotak panjang tersebut.
Subscript atau Index array pada C++, selalu dimulai dari Nol ( 0 )
Nama_Array[Subscript/Index]
Contoh :
Nil_Akhir[3];
Nil_Akhir[1];
Nil_Akhir[0];
Contoah Program :
gets(nama[i]);
cout<<Nilai Teori : ;
#include<conio.h>
cin>>nilai1[i];
#include<stdio.h>
cout<<Nilai Praktek : ;
#include<iostream.h>
cin>>nilai2[i];
#include<iomanip.h>
main()
(nilai2[i] * 0.60);
cout<<endl;
int i;
char nama[5][20];
cout<<
;
float nilai1[5];
cout<<-<<endl;
float nilai2[5];
float hasil[5];
clrscr();
cout<<Hasil<<endl;
for(i=1;i<=2;i++)
cout<<Ujian<<endl;
cout<<Data Ke <<i<<endl;
cout<<
cout<<Nama Siswa : ;
Nilai ;
cout<<-<<endl;
cout<<setprecision(2)<<
<<nilai2[i];
for(i=1;i<=2;i++)
cout<<setiosflags(ios::left)<<setw(
cout<<setprecision(2)<<
<<hasil[i]<<endl;
cout<<-
20)<<nama[i];
cout<<setprecision(2)<<
cout<<-<<endl;
getch();
4)<<i;
cout<<setiosflags(ios::left)<<setw(
<<nilai1[i];
Array dimensi dua tersusun dalam bentuk baris dan kolom, dimana indeks pertama
menunjukan baris dan indeks kedua menunjukan kolom. Array dimensi dua dapat
digunakan seperti pendatan penjualan, pendataan nilai dan lain sebagainya.
Tipe-Data Nama_Variabel[index-1][Index-2]
Keterangan :
Sebagai contoh pendeklarasian yang akan kita gunakan adalah pengolahan data
penjualan, berikut dapat anda lihat pada tabel berikut :
Jenis
Tahun
2001
2002
2003
Barang
Printer
150
159
230
Keyboard
100
125
150
Monitor
210
125
156
Jika anda lihat dari tabel diatas maka dapat dituliskan kedalam array dimensi dua
berikut :
int data_jual[3][3];
Keterangan :
[3] Jumlah Kolom, [3] Jumlah Baris, data_jual : Nama Array, int : Tipe data elemen
array
Nama_Array[Index-1][Index-2]
Contoh Program :
/* - */
/* Array Dimensi 2 */
#include<conio.h>
#include<stdio.h>
#include<iostream.h>
cout<<Data Penjualan
Pertahun<<endl;
#include<iomanip.h>
main()
int i, j;
cout<<<<endl
;
cout<<<<endl
int data_jual[4][4];
clrscr();
for(i=1;i<=3;i++)
for(i=1;i<=3;i++)
cout<<setiosflags(ios::left)<<setw(
for(j=1;j<=3;j++)
cout<<Data Ke <<i<<
<<j<<endl;
5)<<i;
for(j=1;j<=3;j++)
cout<<setiosflags(ios::right)<<setw
(4);
cout<<Jumlah Penjulan : ;
cin>>data_jual[i][j];
cout<<data_jual[i][j];
cout<< ;
cout<<endl;
cout<<<<endl
;
getch();
http://rumpitekno.com/2013/sejarah-dan-penciptaan-bahasa-pemrograman-c/
http://ubuntuversion.blogspot.com/2012/11/sejarah-dari-bahasa-c.html
http://anak-spg.blogspot.com/2012/12/macam-macam-file-header-danfungsinya.html