Array (LARIK) Pada C++: Contoh-Contoh Program C++ Dan Penjelasannya
Array (LARIK) Pada C++: Contoh-Contoh Program C++ Dan Penjelasannya
Apakah Array?
Contoh Kasus : Suatu universitas ingin mendata nilai mahasiswa di sutau kelas dengan banyak
mahasiswa 10 orang. Dari semua nilai yang telah dimasukan tersebut ingin ditampilkan kembali
dan dicari nilai rata-ratanya.
Untuk membuat program dengan ketentuan seperti diatas, ada beberapa cara untuk
memecahkannya :
#include <stdio.h>
#include <conio.h>
void main()
int n1,n2,n3,n4,n5,n6,n7,n8,n9,n10;
total=n1+n2+n3+n4+n5+n6+n7+n8+n9+n10;
ratarata=total/10;
getch();
Dengan menggunakan cara diatas, sebenarnya programnya telah mencukupi, tetapi kalau nilai
yang akan diolah menjadi lebih banyak, maka pendeklarasian variabel n harus dilakukan
sebanyak yang diperlukan. Jadi kalau data yang akan diolah sebanyak 100 buah, maka
pendeklarasian dan pembacaan datanya pun dilakukan sebanyak 100 kali. Dan perhitungannya
juga. Rumus perhitungan total pun menjadi berubah. Pemrograman di atas sebenarnya
sederhana tetapi bisa sangat merepotkan. Oleh karena
Array 1 dimensi
Solusi kedua dari kasus diatas adalah dengan menggunakan array. Array adalah suatu variabel
yang dapat menampung lebih dari satu data dengan tipe data yang sama dan dibedakan
berdasarkan nomor indexnya. Dalam bahasa C, array selalu dimulai dari index ke-0 (nol).
int N[10];
Deklarasi diatas berarti pendeklarasian variabel array bernama N yang mempunyai elemen
sebanyak 10 buah dengan index dimulai dengan nomor 0 sampai 9. Dalam memori deklarasi
tersebut dapat digambarkan seperti berikut :
N[0] N[1] N[2] N[3] N[4] N5] N[6] N[7] N[8] N[9]
Untuk memasukan suaut elemen data dalam array, perintah yang dilakukan ditulis seperti
pembacaan data variabel biasa hanya perbedaannya harus ditulis untuk index ke berapa.
scanf(“%d”, &N[2]);
Perintah diatas berarti pembacaan data dari keyboard untuk data bertipe integer (%d) dan
dimasukan ke variabel array index ke-2 (urutan ke-3).
scanf(“%d”,&N[N[I]]);
Karena nomor elmeen dari array bisa diisi dengan variabel, berarti kita bisa melakukan
perulangan (loop) untuk melakukan pembacaan data dari elemen pertama sampai elemen
terakhir.
#include <stdio.h>
#include <conio.h>
void main()
int Nilai[10];
int index;
float total,ratarata;
for (index=0;index<10;index++)
scanf(“%d”,&Nilai[index]);
total=0;
for (index=0;index<10;index++)
ratarata=total/10;
for (index=0;index<10;index++)
printf(“Rata-rata = %6.2f\n”,ratarata);
getch();
Array 2 Dimensi
Array 2 dimensi biasanya digunakan untuk menyimpan data dalam bentuk matrik. Index Array 2
dimensi terdiri dari index baris dan kolom.
Tipedata namaarray[b][k];
Contoh
int matrik[5][5];
Perintah di atas akan membuat sebuah array 2 dimensi yang kalau digambarkan adalah sebagai
berikut :
index 0 1 2 3 4
Cara pengaksesan elemen array 2 dimensi dapat dilihat pada contoh di bawah ini :
mat[0][0]=7;
Keterangan :
– Baris pertama adalah mengisikan nilai 7 ke array mat pada baris 0 kolom 0.
– Baris kedua adalah perintah untuk membaca data elemen matrik pada baris 2 kolom ke
1.
– Baris ketiga adalah perintah untuk menampilkan data elemen matrik/array pada baris 2
dan kolom ke-1.
#include <stdio.h>
#include <conio.h>
#define maks 3
main()
int mat[maks][maks];
int b,k;
for (b=0;b<maks;b++)
for (k=0;k<maks;k++)
scanf(“%d”,&mat[b][k]);
for (b=0;b<maks;b++)
for (k=0;k<maks;k++)
printf(“%6d”,mat[b][k]);
printf(“\n”);
getch();
return 0;
#include <conio.h>
#define maks 3
main()
int b,k;
for (b=0;b<maks;b++)
for (k=0;k<maks;k++)
scanf(“%d”,&mat1[b][k]);
for (b=0;b<maks;b++)
for (k=0;k<maks;k++)
{
scanf(“%d”,&mat2[b][k]);
for (b=0;b<maks;b++)
for (k=0;k<maks;k++)
mathasil[b][k]=mat1[b][k]+mat2[b][k];
printf(“Matrik 1 :\n”)
for (b=0;b<maks;b++)
for (k=0;k<maks;k++)
printf(“%6d”,mat1[b][k]);
printf(“\n”);
printf(“Matrik 2 :\n”)
for (b=0;b<maks;b++)
{
for (k=0;k<maks;k++)
printf(“%6d”,mat2[b][k]);
printf(“\n”);
for (b=0;b<maks;b++)
for (k=0;k<maks;k++)
printf(“%6d”,mathasil[b][k]);
printf(“\n”);
getch();
return 0;
Pendahuluan
Fungsi merupakan blok dari kode program yang dirancang untuk melaksanakan tugas khusus.
Fungsi banyak dilibatkan dalam pembuatan suatu program, dengan tujuan :
Program menjadi lebih tersetuktur, sehingga mudah dipahami dan mudah dikembangkan
Tipedata namafungsi(daftarparameter)
/*Badan Fungsi*/
Fungsi bertipe void, kalau dalam program pascal atau delphi disebut sebagai procedure. Fungsi
ini tidak mempunyai nilai kembalian, jadi fungsi bertipe ini hanya merupakan sekumpulan kode
program yang bekerja sesuai dengan parameter yang diberikan.
void TampilNama()
textcolor(RED);
cprintf(“Telepon : 022-2513709\n\r”);
main()
TampilNama();
TampilNama();
TampilNama();
Dalam program di atas, ada sebuah fungsi yang bernama TampilNama(), yang berguna untuk
menampilkan data Nama, Alamat, dan Telepon. Dalam program utama (fungsi main() ), cara
pemanggilan fungsi tersebut adalah dengan menulis nama fungsinya (dalam hal ini TampilNama()
). Jadi program di atas akan menampilkan isi fungsi TampilNama() sebanyak 3 kali.
Fungsi di atas merupakan fungsi yang dipanggil tanpa memakai parameter. Untuk melihat contoh
fungsi berparameter, perhatikan program di bawah ini.
int i;
textcolor(Bingkai);
textbackground(Latar);
gotoxy(X1,Y1);cprintf(“é”); /* alt+218 */
gotoxy(X1,Y2);cprintf(“%c”,192);
gotoxy(X2,Y1);cprintf(“%c”,191);
gotoxy(X2,Y2);cprintf(“%c”,217);
for (i=X1+1;i<=X2-1;i++)
gotoxy(i,Y1);cprintf(“%c”,196);
gotoxy(i,Y2);cprintf(“%c”,196);
for(i=Y1+1;i<=Y2-1;i++)
gotoxy(X1,i);cprintf(“%c”,179);
gotoxy(X2,i);cprintf(“%c”,179);
main()
Kotak(2,2,15,23,WHITE,RED);
getch();
return 0;
Void Kotak merupakan sebuah fungsi yang akan membuat suatu kotak di layar sesuai dengan
koordinat yang diberikan di bagian parameter. Koordinat tersebut adalah koordinat kiri atas
(X1,Y1), dan koordinat titik kanan bawah (X2,Y2). Selain itu fungsi ini membutuhkan parameter
Bingkai yang berguna untuk menentukan warna bingkai kotak, dan juga parameter Latar yang
berguna untuk menentukan warna latar belakang kotak yang dibuat.
Pemanggilan Kotak(1,1,80,24,WHITE,BLUE) berguna untuk membuat kotak dengan posisi kiri atas
pada koordinat (1,1) dan posisi kanan bawah pada koordinat (80,24) dengan warna bingkai kotak
berwarna putih dengan latar belakang kotak berwarna biru.
Dalam dunia matematika, kita mengenal fungsi. Contoh : F(X)=X2+3X+5, yang berarti kita
mempunyai sebuah fungsi bernama F yang membutuhkan parameter X sebagai data yang akan
dihitung dengan persamaan X2+3X+5 sehingga kalau kita menulis F(5), maka nilai dari fungsi
tersebut adalah 52 + 3.5+ 5 = 45.
Perintah;
Perintah;
Return NilaiHasilUntukFungsi;
float F(float X)
float Faktorial(int N)
int I;
float Hasil;
Hasil:=1;
for(I=2;I<=N;I++)
Hasil=Hasil * I;
return Hasil;
Perulangan (LOOP)
Pendahuluan
Untuk memahami mengenai fungsi perulangan, coba lihatlah kasus sebagai berikut :
Buatlah suatu program untuk menampilkan angka dari 1 sampai dengan 5. Maka untuk kasus
tersebut program yang buat adalah sebagai berikut :
#include <stdio.h>
#include <conio.h>
main()
printf(“1\n”);
printf(“2\n”);
printf(“3\n”);
printf(“4\n”);
printf(“5\n”);
getch();
return 0;
}
Program di atas telah memenuhi yang diinginkan, tetapi jika bilangan yang akan ditampilkan
misalkan dari 1 sampai 1000, maka sangatlah merepotkan jika harus menulis angka 1 sampai
dengan 1000 secara manual. Oleh karena itu, di semua bahasa pemrograman terdapat suatu
mekanisme yang bernama loop (perulangan).
Ada beberapa jenis perulangan yang dapat dilakukan oleh bahasa pemrograman C, yaitu :
For
While
Do While
Label
statement;
Contoh berikut akan menampilkan angka 1 sampai 100, kemudian menampilkan angka 10 turun
sampai 0 dengan perubahan nilainya adalah setengah (0.5).
#include <stdio.h>
#include <conio.h>
main()
int i;
int f;
for (i=1;i<=1000;i++)
printf(“%i\n”,i);
for (f=10;f>=0;f-=0.5)
printf(“%6.2f\n”,f);
getch();
return 0;
Dalam perulangan yang menggunakan for, perulangan dilakukan hanya jika kondisi
perulangannya mempunyai nilai true (tidak 0).
while (kondisi)
perintah;
perintah;
Cara kerja dari perulangan while mirip dengan perulangan for. Tetapi dalam perulangan while
ini, tidak ada jaminan bahwa program akan masuk ke dalam perulangan. Ini dikarenakan
pemeriksaan kondisinya dilakukan di awal perulangan.
#include <stdio.h>
#include <conio.h>
main()
{
int i;
float f;
i=1;
while (i<=1000)
printf(“%i\n”,i);
i++;
f=10;
while (f>=0)
printf(“%6.2f\n”,f);
f=f-0.5;
getch();
return 0;
do
perintah;
perintah;
} while (kondisi);
Cara kerja dari perulangan do while mirip dengan perulangan while. Tetapi dalam perulangan
do while ini, pengecekan kondisi dilakukan di akhir loop. Sehingga program pasti dapat masuk
ke perulangan ini minimal 1 kali.
#include <stdio.h>
#include <conio.h>
main()
int i;
float f;
i=1;
do
printf(“%i\n”,i);
i++;
} while (i<=1000);
f=10;
do
printf(“%6.2f\n”,f);
f=f-0.5;
} while (f>=0);
getch();
return 0;
}
Perulangan dengan menggunakan teknik label, merupakan teknik perulangan yang paling awal
dikenal, biasanya ada dalam pemrograman berbahasa assembly. Tetapi perulangan seperti
ini tidak dianjurkan untuk dipakai karena bisa membuat struktur program menjadi acak-
acakan.
#include <stdio.h>
#include <conio.h>
main()
int i;
i=0;
awal:
i=i+1;
printf(“%i\n”,i);
if(i<10)
goto awal;
else
goto akhir;
akhir:
getch();
return 0;
Program di atas akan menampilkan angka 1 sampai 10. Perhatikan perintah di bawah ini :
Perintah tersebut tidak akan pernah dieksekusi, karena ketika program telah mencapai nilai 10
maka akan melewatkan perintah tersebut dan langsung loncat (goto) ke bagian akhir yang
ditandai dengan perintah akhir:.
Statement if – else
if (expression)
Statement1;
else
Statement2;
StatementBerikutnya;
Jika ketika dieksekusi ekspresi menghasilkan nilai true, maka statement1 akan dieksekusi
danstatement2 tidak akan dikerjakan dan kemudian program akan
mengeksekusi statementberikutnya, dan jika ekspresi tersebut bernilai false
maka statement1 tidak akan dieksekusi dan statement2 akan dieksekusi, dan dilanjutkan
dengan mengeksekusi statementberikutnya.
Operator-operator yang biasa digunakan dalam operasi logika, dapat dilihat di tabel di bawah
ini.
> A>B Apakah Isi Variabel A lebih besar dari Isi Variabel B
< A<B Apakah Isi Variabel A lebih kecil dari Isi Variabel B
(A<=100)
Apakah A lebih kecil atau sama dengan dari 100 dan A lebih
&& &&(A>=80) besar atau sama dengan 80
(A>100)||
|| (A<0) Apakah A lebih besar dari 100 atau A lebih kecil dari 0
#include <stdio.h>
#include <conio.h>
main()
int Nilai;
printf(“Nilai : “);scanf(“%i”,&Nilai);
if(Nilai>=50)
else
getch();
return 0;
Perintah di atas hanya mempunyai 2 kemungkinan yaitu keterangan “Selamat Anda Lulus” jika
nilai lebih besar dari atau sama dengan 50 dan keterangan “Maaf. Anda Tidak Lulus”, ketika nilai
lebih kecil dari 50.
Jika perintah yang akan dieksekusi ketika kondisi tercapai lebih dari 1 perintah, maka perintah-
perintah tersebut harus diblok dengan tanda kurawal {}.
Perhatikan program di bawah ini yang merupakan perubahan dari program di atas.
#include <stdio.h>
#include <conio.h>
main()
int Nilai;
printf(“Nilai : “);scanf(“%i”,&Nilai);
if(Nilai>=50)
printf(“Anda Hebat!\n”);
}
else
getch();
return 0;
#include <stdio.h>
#include <conio.h>
main()
int a,b;
printf(“Masukan A : “);scanf(“%i”,&a);
printf(“Masukan B : “);scanf(“%i”,&b);
if(a==b)
else
if(a>b)
else
if(a<b)
return 0;
Program di atas akan meminta anda untuk memasukan nilai variabel A dan B, kemudian program
akan memeriksa apakah variabel A samadengan B, atau A lebih besar dari B, dan A lebih kecil
dari B.
Contoh Kasus :
NilaiAkhir=20%*tugas+30%*uts+50%*uas
>=80 A
>=68 B
>=56 C
>=45 D
>=0 E
#include <stdio.h>
#include <conio.h>
main()
int tugas,uts,uas;
float nilaiakhir;
char index;
nilaiakhir=0.2*tugas+0.3*uts+0.5*uas;
if(nilaiakhir>=80)
index=’A';
else
if(nilaiakhir>=68)
index=’B';
else
if(nilaiakhir>=56)
index=’C';
else
if(nilaiakhir>=45)
index=’D';
else
if(nilaiakhir>=0)
index=’E';
else
index=’X';
printf(“Index : %c\n”,index);
getch();
return 0;
Selain if-else, perintah yang digunakan untuk percabangan adalah switch – case. Bentuk dasar
dari perintah tersebut adalah :
switch(ekspresi)
case kondisi1:perintah1;break;
case kondisi2:perintah2:break;
default : perintah3;
Cara kerja perintah di atas adalah : “Jika ekspresi sama dengan kondisi1, maka perintah1 akan
dieksekusi dan kemudian keluar dari switch, dan jika ekspresi sama dengan kondisi2 maka
perintah 2 yang akan dieksekusi dan kemudian keluar dari switch, dan jika tidak 1 kondisi pun
yang sama dengan ekspresi maka perintah3 (perintah default) yang akan dieksekusi. Perintah
default kalau tidak diperlukan bisa dihilangkan.
Keterangan program di atas adalah jika index=’A’ maka keterangan Bagus Sekali, jika index=’B’
maka keterangan Bagus, jika index=’C’ maka keterangan Cukup, jika index=’D’ maka keterangan
Kurang, jika index=’E’ maka keterangan Kurang Sekali, dan jika index bukan A – E, maka
keterangan adalah Index Tidak Diketahui.
Jika kondisi yang harus diperiksa lebih dari 1 kondisi, maka hanya if-else lah yang bisa dipakai.
Operator-operator logika yang dipakai adalah operator && (and), dan operator || (or).
if((index==’A’)||(index==’B’)||(index==’C’))
else
if((index==’D’)||(index==’E’))
Untuk lebih jelas, buatlah program untuk mengatasi kasus di bawah ini.
Di sebuah perusahaan bus, tabel harga dapat dilihat dalam tabel di bawah ini.
KELAS
Karena sekarang masa promosi, maka khusus untuk surabaya-eksekutif dan yogya-ekonomi
mendapatkan diskon sebesar 10%.
Buatlah program dengan data yang dimasukan adalah jenis kelas, tujuan dan banyak tiket yang
dibeli. Data yang ingin ditampilkan adalah harga tiket dan total tiket, diskon dan besar
pembayaran.
Contoh :
Pilih Jurusan :
1. Jakarta
2. Yogya
3. Surabaya
Pilih Kelas :
1. Eksekutif
2. Bisnis
3. Ekonomi
#include <stdio.h>
#include <conio.h>
main()
int kodejurusan,kodekelas,banyaktiket;
float diskon,bayar;
printf(“—————\n”);
printf(“—————\n”);
printf(“—————\n”);
printf(“1. Eksekutif\n2. Bisnis\n3. Ekonomi\n”);
printf(“—————\n”);
if((kodejurusan==1)&&(kodekelas==1))
hargatiket=70000;
else
if((kodejurusan==1)&&(kodekelas==2))
hargatiket=40000;
else
if((kodejurusan==1)&&(kodekelas==3))
hargatiket=10000;
else
if(kodejurusan==2)
if(kodekelas==3) hargatiket=20000;
else
if(kodejurusan==3)
switch (kodekelas)
{
case 1:hargatiket=90000;break;
case 2:hargatiket=60000;break;
case 3:hargatiket=30000;
total=banyaktiket*hargatiket;
if( ((kodejurusan==3)&&(kodekelas==1)) ||
((kodejurusan==2)&&(kodekelas==2))
diskon=0.1*total;
else
diskon=0;
bayar=total-diskon;
getch();
return 0;
Format Kegunaan
scanf(“format”,&namavariabel);
Contoh :
int i,jam,menit,detik;
unsigned int j;
float f;
char nama[60];
scanf(“%i”,&i);
scanf(“%u”,&j);
scanf(“%f”,&f);
scanf(“%i %i %i”,&jam,&menit,&detik);
scanf(“%s”,nama);
Fungsi scanf() kurang begitu bagus jika dipakai untuk pembacaan string. Karena data yang
tersimpan adalah hanya sampai menemukan spasi, maksudnya jika kita mengisikan 2 buah kata
dengan pemisah spasi, maka data yang masuk ke variabel tersebut hanyalah kata yang pertama.
Oleh karena itu, pembacaan data bertipe string biasanya menggunakan perintah gets() yang
bentuk umumnya adalah :
gets(namavariabel);
Contoh :
gets(nama);
gets(alamat);
Untuk pembacaan data bertipe char, selain dengan menggunakan scanf() dengan format %c, bisa
juga dengan menggunakan fungsi getch() atau getche(). Perbedaan dari getch() dan getche()
adalah getch() digunakan untuk membaca data bertipe char tanpa menampilkannya di layar, dan
getche() digunakan untuk membaca data bertipe char dengan menampilkan data karakternya di
layar.
Contoh :
#include <stdio.h>
#include <conio.h>
main()
char a,b;
a=getch();
b=getche();
getch();
return 0;
Untuk output data, perintah yang bisa dipakai adalah printf(). Untuk menampilkan data dengan
fungsi printf(), kita harus mengatur format tampilannya, dengan format-format penentu. Untuk
lebih jelas perhatikan program di bawah ini.
#include <stdio.h>
#include <conio.h>
main()
int a=25000;
char alamat[10]=”Malang”;
clrscr();
printf(“Nilai a : %d\n”,a);
printf(“Nilai b : %u\n”,b);
printf(“Nilai c : %f\n”,c);
printf(“Nilai a : %8d\n”,a);
printf(“Nilai b : %8u\n”,b);
printf(“Nilai c : %11.2f\n”,c);
getch();
return 0;
Nilai a : 25000
Nilai b : 50000
Nilai c : 12345.677734
Nilai a : 25000
Nilai b : 50000
Nilai c : 12345.68
Contoh Program
Contoh Kasus :
Pajak : 10%
#include <stdio.h>
#include <conio.h>
main()
int jamlembur;
long int gajipokok=500000,gajikotor,totalgajilembur;
float pajak,gajibersih;
char nama[50];
clrscr();
totalgajilembur=(long int)5000*jamlembur;
gajikotor=gajipokok+totalgajilembur;
pajak=0.1*gajikotor;
gajibersih=gajikotor-pajak;
clrscr();
printf(“Hasil Perhitungan\n”);
getch();
return 0;
Hasil Perhitungan
Nama Pegawai : Shelly Septiani
#include <stdio.h>
#include <conio.h>
main()
int jamlembur;
float pajak,gajibersih;
char nama[50];
clrscr();
totalgajilembur=(long int)5000*jamlembur;
gajikotor=gajipokok+totalgajilembur;
pajak=0.1*gajikotor;
gajibersih=gajikotor-pajak;
clrscr();
printf(“Hasil Perhitungan\n”);
getch();
return 0;
Hasil Perhitungan
Untuk keperluan memanipulasi data dalam bentuk bit, Turbo C menyediakan operator-operator
berikut :
Operator Operasi
| Atau (OR)
^ XOR
~ NOT (Komplemen)
Seluruh operator manipulasi bit hanya dikenakan pada operand / variabel / angka yang bertipe
bilangan bulat (int, char, long).
~<< >>
&
TertinggiTerendah |
0 0 1 0 0 0
0 1 1 0 1 1
1 0 0 0 1 1
1 1 0 1 1 0
Contoh :
main()
x=78;// 41h
y=520;// 208h
and=x & y;
or=x | y;
xor=x ^ y;
not = ~y;
clrscr();
getch();
return 0;
————————–
x&y: 8: 8h
~y : 65015 : FDF7h
Pembuktian :
—————– | (or)
—————– ^ (xor)
Operator-operator pergeseran bit, berguna untuk menggeserkan bit yang ada dalam suatu
variabel.
Contoh :
main()
angka=50;
x=angka << 2;
y=angka >> 2;
clrscr();
getch();
return 0;
Pembuktian :
Aturan-Aturan Perhitungan
Jika anda mengharapkan bahwa nilai yang didapat adalah 1.8, maka anda akan kecewa, karena
angka yang didapat adalah 1. Kenapa ini terjadi?.
Ada aturan-aturan pengkonversian data yang berlaku dalam suatu operasi perhitungan,
diantaranya :
1. Jika suatu bilangan bulat dioperasikan dengan bilangan bulat, maka nilai yang didapat
adalah bilangan bulat pula.
2. Operasi perhitungan dilakukan berdasarkan tipe bilangan yang terbesarnya. Jadi jika ada
suatu perhitungan antara int dengan long, maka komputer akan memperlakukan int sebagai long.
Untuk mengkonversi suatu variabel menjadi suatu variabel yang berbeda tipe, maka bisa
dilakukan dengan type cast. Caranya adalah dengan menulis tipe data yang diinginkan diapit
dengan tanda kurung. Contoh :
float a,b;a=(float)9/5;
b=(float)(9/5);
Pada perintah a=(float) 9/5, maka angka 9 akan dikonversikan menjadi float sehingga perintah
tersebut akan menghasilkan nilai 1.8, tetapi jika perintah b=(float)(9/5) dikerjakan maka akan
menghasilkan nilai 1.0 karena yang dikerjakan duluan adalah 9/5 yang menghasilkan nilai 1 yang
kemudian dikonversikan ke dalam bentuk float.
Konversi tipe data juga terjadi dalam operasi penugasan / pengisian data terhadap variabel.
Perhatikan perintah berikut :
#include <stdio.h>#include <conio.h>
main()
char c;
int i;
float f;
f=65.9;
i=f;
c=i;
printf(“F : %f\n”,f);
printf(“I : %d\n”,i);
printf(“C : %c\n”,c);
getch();
return 0;
F : 65.900002I : 65
C :A
Keterangan :
– i=f; pengisian nilai f ke variabel i. Dalam baris ini terjadi konversi dari float ke int.
Pengkonversian float ke int selalu menghilangan angka pecahannya, dan tidak terjadi
pembulatan.
– c=i; pengisian nilai i ke variabel c. Dalam baris ini terjadi konversi dari int ke char.
Contoh :
#define PI 3.14
main()
float radius=10,keliling,luas;
keliling=2*PI*radius;
luas=PI*radius*radius;
printf(“======================\n”);
printf(“Radius : %6.2f\n”,radius);
printf(“Keliling : %6.2f\n”,keliling);
printf(“Luas : %6.2f\n”,luas);
getch();
return 0;
======================
Radius : 10.00
Keliling : 62.80
Luas : 314.00
Ketika program dieksekusi, maka compiler akan mengganti semua PI dengan nilai 3.14 dan
pembuat dengan “Wahyu Setiawan”. Jadi ketika kita ingin menggunakan nilai PI yang lebih
exact, maka pada define PI, nilai 3.14 diganti dengan 22.0/7.
Komputer bisa diartikan sebagai alat untuk menghitung. Untuk melakukan proses perhitungan
tersebut, maka dibutuhkan data yang akan diproses. Tipe data ada beberapa jenis yaitu :
Jika kita membutuhkan suatu tipe data yang baru yang tidak terdapat pada tipe data standar,
maka kita dapat membuat tipe data baru dengan menggunakan perintah struct. Perintah struct
akan dijelaskan pada bab selanjutnya.
Contoh
char karakter;
char kar1,kar2,kar3;
char kar4=’A’;
char kar5=65;
Tipe data ini mempunyai jangkauan dari 0 sampai 255 atau karakter ASCII ke 0 sampai karakter
ASCII 255. Tipe data karakter bisa ditampilkan sebagai suatu karakter atau sebagai suatu
bilangan. Hal ini tergantung dari bagaimana penulisannya apakah dianggap sebagai karakter atau
sebagai bilangan.
Untuk menuliskan isi dari data bertipe char adalah dengan menggunakan printf dengan format
penulisannya menggunakan tanda %c kalau ingin ditampilkan sebagai suatu karakter atau dengan
%i jika ingin ditampilkan sebagai suatu angka.
karakter=’A’;
Atau
karakter=65;
Kedua cara tersebut menghasilkan suatu efek yang sama yaitu memberikan nilai 65 atau karakter
A ke variabel karakter. Kalau pengisian variable ingin menggunakan karakter maka karakter yang
akan dimasukan harus diapit dengan tanda apostrof.
Untuk melihat nilai yang ada dalam suatu variable yang bertipe char gunakan perintah berikut :
Contoh program
#include <stdio.h>
#include <conio.h>
main()
char k1,k2;
k1=’A’;
k2=k1;
getch();
return 0;
Perintah “char k1,k2;” pada baris 6 berarti program memesan 2 buah tempat di memori untuk
menyimpan data bertipe karakter dengan nama k1 dan k2.
Perintah “k1=’A’;” pada baris 7 adalah perintah untuk memasukan nilai karakter A kapital ke
dalam variable k1 sehingga untuk baris berikutnya k1 berisi karakter A kapital atau angka 65.
Perintah “k2=k1;” pada baris 8 berarti bahwa nilai k2 diisi dari nilai k1 sehingga isi k2 sama
dengan isi variable di k1.
Perintah printf pada baris 9 berarti perintah penulisan ke layar sesuai dengan format “Nilai
variable k1 adalah %c\n”. Karakter %c tidak dicetak sebagai %c tetapi akan diganti dari variable
yang sesuai dengan urutannya yaitu k1 dalam bentuk karakter. Perintah printf pada baris 10 cara
kerjanya sama dengan perintah printf pada baris 9 bedanya hanya tanda %d berasal ditulis
berdasarkan isi variable k2 yang dicetak dalam bentuk angka bukan karakter. Tanda %d
digunakan untuk format pencetakan data dalam bentuk bilangan bulat.
Perintah getch() digunakan untuk menunggu sampai pengguna menekan sembarang karaker.
Perintah return digunakan untuk memberikan nilai kembalian dari fungsi main().
Ada beberapa tipe data standar yang digunakan untuk data bilangan bulat.
Tipe Data Memori Format Jangkauan Nilai
Tipe-tipe data yang ada dalam table tersebut khusus untuk data yang nilai bilangannya bulat.
Cara pendeklarasian tipe data ini sama seperti pendeklarasian lainnya, yaitu :
int a;
unsigned int b;
char c;
long d;
Contoh Program :
#include <stdio.h>
#include <conio.h>
main()
{
int a=1000,b=64000;
getch();
return 0;
Tipe data untuk bilangan pecahan terdiri dari beberapa jenis yaitu :
Contoh Program
#include <stdio.h>
#include <conio.h>
main()
float a=1234567890123456789;
double d=1234567890123456789;
getch();
return 0;
Dalam pemrograman C, untuk variabel yang menampung data string tidak ada perintah khusus,
karena dalam bahasa C, string adalah sebuah array karakter atau sebuah pointer ke sebuah
variabel char.
char nama[50];
char *alamat;
Contoh program :
#include <stdio.h>
#include <conio.h>
main()
printf(“Nama : “);scanf(“%s”,nama);
printf(“Alamat : “);gets(alamat);
printf(“