MENGENAL BAHASA C++
Perkembangan Bahasa C
Bahasa C++ merupakan pengembangan dari
bahasa C yang ditulis oleh Ken Thompson pada tahun 1970. Bahasa C untuk pertama
kali ditulis oleh Brian W. Kernighan dan Denies M. Ricthie pada tahun 1972.
Bahasa C, pada awalnya dioperasikan diatas sistem operasi UNIX
Bahasa C Merupakan bahasa pemrograman
tingkat menengah yang berada di antara bahasa tingkat rendah dan bahasa tingkat
tinggi yang biasa disebut dengan bahasa Assambly. Bahasa C mempunyai banyak
kemampuan, di antaranya untuk membuat perangkat lunak, misalnya dBASE, Word
Star, dan lain-lain. Pada tahun 1980 seorang ahli yang bernama Bjarne
Stroustrup mengembangkan beberapa hal dari bahasa C yang kemudian dinamakan C
with Classes, yang pada tahun 1983 berganti nama menjadi C++.
Mengenal IDE Borland C++
IDE merupakan singkatan dari Integreted
Development Environment, merupakan lembar kerja terpadu untuk mengembangkan
program.IDE dari Borland C++ dapat digunakan untuk :
1. Menulis naskah program
2. Mengompilasi program (compile)
3. Melakukan pengujian terhadap program (debugging).
4. Mengaitkan objek dan library ke program (linking).
5. Menjalankan program (running).
Untuk mengaktifkan aplikasi Borland C++
ver5.02, Anda dapat menggunakan cara yaitu :
1. Klik tombol start à pilih All Program à Borland C++ 5.02 à klik Borland C++
2. IDE dari Borland C++ adalah seperti tampak pada gambar dibawah ini
IDE pada Borland C++ terbagi menjadi 4
(empat)bagian, yaitu :
1. Menu Utama
Menu utama atau menu bar terdiri dari
File, Edit, Search, Run, Compile, Debug, Project, Option, Window dan Help.
1. Jendela Text Edit
Tempat untuk menetikkan dan membuat
program. Jika yang pertama kali anda membuat program, maka nama file jendela
editor adalah NONAME00.CPP.
1. Jendela Message
Tempat untuk menampilkan pesan-pesan
pada proses kompilasi dan link program.
1. Baris Status
2. Baris di mana ditampilkan keterangan-keterangan pada saat Anda mengaktifkan
menu bar dan submenu.
Membuat File Editor
Langkah-langkahnya adalah :
1. Klik Menu File
2. Klik New
3. Pilih dan klik Text Edit
Latihahan, Ketik Perintah-perintah yang
terdapat pada Gambar di bawah ini
Menyimpan File Editor
Setelah selesai mengetikkan naskah ,
langkah selanjutnya adalah menyimpan dengan cara :
1. Klik menu File à Save
2. Tekan hotkey Ctrl _ KS
Sebagai latihan, buatlah folder kerja
anda. Sebagai berikut :
1. Klik ikon Up One Level sampai ke drice C:, atau klik combobox Look In kemudian
pilih drive C:
2. Klik ikon Create New Folder sehingga akan tampil New Folder.
3. Tuliskan nama foldernya, LatihanCPP. Tekan tombol Enter.
4. Kemudian tekan tombol enter lagi, sehingga Look In, menunjukkan Folder
LatihanCPP.
5. Tuliskan pada kotak isian file Name, dengan nama LAT-1. Tekan Enter atau
klik tombol Open. Maka selanjutnya file anda telah tersimpan.
Menerjemahkan Program
Langkah yang anda ikuti adalah :
1. Klik Menu Project
2. Pilih dan klik Compile
3. Atau dapat menekan Hotkey Alt+F9
Menjalankan Program
Dengan Langkah sebagai berikut :
1. Klik Menu Debug
2. Pilih dan klik Run
3. Atau menekan Htkey Ctrl+F9
4. Atau dengan Command Prompt
5. Klik start à All Program à Accessories à Command Prompt
6. Ketik dimana Nama File itu disimpat dalam folder dan dalam file.
7. Klik nama file yang disimpan tadi seperti LAT-1 lalu enter
Membuka File Editor
Membuka atau memanggil file editor yang
sudah pernah dibuat, dengan langkah sebagai berikut :
1. Klik Menu File
2. Open
Stuktur Program C++
Struktur program C++ sama seperti
struktur program C dahulu. Struktur program terdiri sejumlah blok fungsi.
Setiap blok fungsi terdiri dari satu atau beberapa pernyataan yang melaksanakan
tugas tertentu.
Struktur Program
# include <file-include>
Main ( )
{
Pernyataan ;
………..
………..
}
|
Contoh :
#include <iostream.h>
#include <conio.h>
void main ()
{
clrscr
();
cout
<<”Hallo Agus, welcome to Borland C++.\n”;
getch ();
}
Output :
MENGENAL MODEL DATA, KONSTANTA, VARIABEL, PERINTAH MASUKAN DAN KELUARAN
Pengenalan Tipe Data
Borland C++ memiliki 7 tipe data dasar
Tipe
Data
|
Ukuran
Memori
|
Jangkauan Nilai
|
Jumlah
Digit
|
Char
|
1 Byte
|
-128 s.d 127
|
|
Int
|
2 Byte
|
-32768 s.d 32767
|
|
Short
|
2 Byte
|
-32768 s.d 32767
|
|
Long
|
4 Byte
|
-2,147,435,648 s.d 2,147,435,647
|
|
Float
|
4 Byte
|
3.4 x 10-38 s.d 3.4 x 10+38
|
5 – 7
|
Double
|
8 Byte
|
1.7 x 10-308 s.d 1.7 x 10+308
|
15 – 16
|
Long
Double
|
10 Byte
|
3.4 x 10-4932 s.d 1.1 x 10+4932
|
19
|
Tipe Data Tambahan
Unsigned digunakan bila data yang
digunakan hanya data yang positif saja
Tipe
Data
|
Jumlah
Memori
|
Jangkauan Nilai
|
Unsigned Integer
|
2 Byte
|
0 – 65535
|
Unsigned Character
|
1 Byte
|
0 – 255
|
Unsigned Long
Integer
|
4 Byte
|
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 ;
o Tidak boleh ada sepasi ( cth : gaji bersih ) dan dapat menggunakan tanda
garis bawah ( _ ) sebagai penghubung (cth : gaji_bersih).
o Tidak boleh diawali oleh angka dan menggunakan operator aritmatika
Variabel, dibagi menjadi dua jenis
kelompok, yaitu :
1. Variabel Numerik
1. Bilangan Bulat atau Integer
2. Bilangan Desimal Berpresisi Tunggal atau Floating Point.
3. Bilangan Desimal Berpresisi Ganda atau Double Precision.
4. Variabel Text
1. Character ( Karakter Tunggal )
2. String ( Untuk Rangkaian Karakter )
Deklarasi Variabel ini meliputi tipe
variabel, seperti : integer atau character dan nama variabel itu sendiri.
Setiap kali pendeklarasian variabel harus diakhiri oleh tanda titik koma ( ; ).
TIPE VARIABEL
|
SIMBOL DEKLARASI
|
Integer
|
int
|
Floating Point
|
float
|
Double Precision
|
double
|
Karakter
|
char
|
Unsigned Integer
|
unsigned int
|
Unsigned Character
|
unsigned char
|
Long Integer
|
long int
|
Unsigned Long
Integer
|
unsigned long int
|
Bentuk penulisannya :
Tipe data nama variabel;
Contoh Deklarasi
char
nama_mahasiswa;
char grade;
float rata_rata ;
int nilai;
Contoh Deklarasi pada
program
#include<stdio.h>
#include<conio.h>
#include<iostream.h>
main()
{
float rata_rata ;
int nilai;
char nama_mahasiswa;
char grade;
…
…
}
Perintah Keluaran
Perintah standar output yang disediakan
oleh Borland C++, diantaranya adalah :
o 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
|
Penentu Format
Untuk printf()
|
Integer
|
%d
|
Floating Point
|
|
Bentuk Desimal
|
%f
|
Bentuk Berpangkat
|
%e
|
Bentuk Desimal dan
Pangkat
|
%g
|
Double Precision
|
%lf
|
Character
|
%c
|
String
|
%s
|
Unsigned Integer
|
%u
|
Long Integer
|
%ld
|
Long Unsigned
Integer
|
%lu
|
Unsigned Hexadecimal
Integer
|
%x
|
Unsigned Octal
Integer
|
%o
|
Printf(“%c merupakan abjad yang ke –
%d”,’b’,2);
Contoh Program :
#include <stdio.h>
#include <conio.h>
main()
{
int a = 7;
char b = ‘G’;
clrscr();
printf(“%c Merupakan Abjad Yang
Ke – %d”, b, a);
}
Escape Sequences
ESCAPE SEQUENCES
|
PENGERTIAN
|
\b
|
Backspace
|
\f
|
Formfeed
|
\n
|
Baris Baru
|
\r
|
Carriage Return
|
\t
|
Tab ( default = 8 karakter )
|
\’
|
Tanda kutip tunggal ( ‘ )
|
\”
|
Tanda Kutip Ganda ( ” )
|
\\
|
Backslash
|
\xaa
|
Kode ASCII dalam hexadecimal.(aa
menunjukkan angka ASCII ybs )
|
\aaa
|
Kode ASCII dalam octal. (aaa
menunjukkan angka ASCII ybs )
|
o puts()
Perintah puts() sebenarnya sama dengan
printf(), yaitu digunakan untuk mencetak string ke layar. puts() berasal dari
kata PUT STRING.
o putchar()
Perintah putchar() digunakan untuk
menampilkan sebuah karakter ke layar. Penampilan karakter tidak diakhiri dengan
pindah baris.
o 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
o scanf()
Fungsi scanf() digunakan untuk
memasukkan berbagai jenis data.
Bentuk Umum dari fungsi ini adalah :
TIPE DATA
|
Penentu Format
Untuk scanf()
|
Integer
|
%d
|
Floating Point
|
|
Bentuk Desimal
|
%e atau %f
|
Bentuk Berpangkat
|
%e atau %f
|
Double Precision
|
%lf
|
Character
|
%c
|
String
|
%s
|
Unsigned Integer
|
%u
|
Long Integer
|
%ld
|
Long Unsigned
Integer
|
%lu
|
Unsigned Hexadecimal
Integer
|
%x
|
Unsigned Octal
Integer
|
%o
|
o gets()
Fungsi
gets() digunakan untuk memasukkan data string, Bentuk umum dari fungsi ini
adalah gets(nama-variabel-array);
o cin()
Fungsi cin() merupakan sebuah objeck
didalam C++ digunakan untuk memasukkan suatu data. Untuk menggunakan fungsi
cin() ini, harus menyertakan file header iostream.h .
o 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.
o 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 balik 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.
OPERATOR PADA C++
Operator merupakan simbol atau karakter
yang biasa dilibatkan dalam program untuk melakukan sesuatu operasi atau
manipulasi, seperti penjumlahan, pengurangan dan lain-lain.
Operator Aritmatika
Operator untuk operasi aritmatika yang
tergolong sebagai operator Binary adalah :
Operator
|
Keterangan
|
Contoh
|
*
|
Perkalian
|
4 * 5
|
/
|
Pembagian
|
8 / 2
|
%
|
Sisa Pembagian
|
5 % 2
|
+
|
Penjumlahan
|
7 + 2
|
−
|
Pengurangan
|
6 − 2
|
Operator yang tergolong sebagai operator
Unary, adalah :
Operator
|
Keterangan
|
Contoh
|
+
|
Tanda Plus
|
−4
|
−
|
Tanda Minus
|
+6
|
Operator Assignment
Sebelumnya kita telah mengenal operator
pemberi nilai ( assignment operator ) yaitu tanda “ = “. Sebagai contoh
penggunaan operator pemberi nilai :
A = A + 1
Dari penulisan ekspresi diatas, Borland
C++ dapat menyederhanakan menjadi :
A += 1
A+ = 1 atau A – = 1 ; masih dapat
disederhanakan menjadi A ++ atau A —
Notasi ++ atau — dapat diletakkan di
depan atau di belakang variable.
Contoh A ++ atau ++ A / A — atau — A
Kedua bentuk penulisan notasi ini
mempunyai arti yang berbeda :
1. Jika diletakkan di depan variable, maka proses penambahan atau pengurangan
akan dilakukan sesaat sebelum atau langsung pada saat menjumpai ekspresi ini
sehingga nilai variabel tadi akan langsung berubah begitu ekspresi ini
ditemukan, sedangkan
2. Jika diletakkan di belakang variable, maka proses penambahan atau
pengurangan akan dilakukan setelah ekspresi ini dijumpai atau nilai variabel
tadi akan tetap pada saat ekspresi ini ditemukan
Notasi “ += “ ini dikenal dengan
operator majemuk. Ada beberapa operator pemberi nilai aritmatka diantaranya :
Operator
|
Keterangan
|
*=
|
Perkalian
|
/=
|
Pembagian
|
%=
|
Sisa Pembagian
|
+=
|
Penjumlahan
|
-=
|
Pengurangan
|
Operator Penambah dan Pengurang
Masih berkaitan dengan operator pemberi
nilai, Borland C++ menyediakan operator penambah dan pengurang. Dari contoh
penulisan operator pemberi nilai sebagai penyederhanaannya dapat digunakan
operator penambah dan pengurang.
Operator
|
Keterangan
|
++
|
Penambahan
|
—
|
Pengurangan
|
Operator Relasi
Operator Relasi digunakan untuk
membandingkan dua buah nilai. Hasil perbandingan operator ini menghasilkan
nilai numerik 1 (True) atau 2 (False).
Operator
|
Keterangan
|
==
|
Sama Dengan ( bukan pemberi nilai )
|
!=
|
Tidak Sama dengan
|
>
|
Lebih Dari
|
<
|
Kurang Dari
|
>=
|
Lebih Dari sama dengan
|
<=
|
Kurang Dari sama dengan
|
Operator Logika
Operator
|
Keterangan
|
&&
|
Operator Logika AND
|
| |
|
Operator Logika OR
|
!
|
Operator Logika NOT
|
o Operator Logika AND
Operator logika AND digunakan untuk
menghubungkan dua atau lebih ekspresi relasi, akan dianggap BENAR, bila semua ekspresi
relasi yang dihubungkan bernilai BENAR.
o Operator Logika OR
Operator logika OR digunakan untuk
menghubungkan dua atau lebih ekspresi relasi, akan dianggap BENAR, bila salah
satu ekspresi relasi yang dihubungkan bernilai BENAR dan bila semua ekspresi
relasi yang dihubungkan bernilai SALAH, maka akan bernilai SALAH.
o Operator Logika NOT
Operator logika NOT akan memberikan
nilai kebalikkan dari ekspresi yang disebutkan. Jika nilai yang disebutkan
bernilai BENAR maka akan menghasilkan nilai SALAH, begitu pula sebaliknya
Operator Bitwise
Operator Bitwise digunakan untuk
memanipulasi data dalam bentuk bit. Borland C++ menyedikan enam buah operator
bitwise.
Operator
|
Keterangan
|
~
|
Bitwise NOT
|
<<
|
Bitwise Shift Left
|
>>
|
Bitwise Shift Right
|
&
|
Bitwise AND
|
^
|
Bitwise XOR
|
|
|
Bitwise OR
|
o Operator Bitwise << (Shift Left)
Operator Bitwise Shift Left digunakan
untuk menggeser sejumlah bit kekiri.
o Operator Bitwise >> (Shift Right)
Operator Bitwise Shift Right digunakan
untuk menggeser sejumlah bit kanan.
o Operator Bitwise & (And)
Operator Bitwise & ( And ) digunakan
untuk membandingkan bit dari dua operand. Akan bernilai benar (1) jika semua
operand yang digabungkan bernilai benar (1). Berikut anda dapat melihat
ilustrasi untuk membandingkan bit dari 2 operand
o Operator Bitwise | ( Or )
Operator Bitwise | ( Or ) digunakan
untuk membandingkan bit dari dua operand. Akan bernilai benar jika ada salah
satu operand yang digabungkan ada yang bernilai benar (1). Berikut anda dapat
melihat ilustrasi untuk membandingkan bit dari 2 operand.
o Operator Bitwise ^ (
eXclusive Or )
Operator Bitwise ^ ( XOr ) digunakan
untuk membandingkan bit dari dua operand. Akan bernilai benar (1) jika dari dua
bit yang dibadingkan hanya sebuah bernilai benar (1). Berikut anda dapat
melihat ilustrasi untuk membandingkan bit dari 2 operand.
o Operator Bitwise ~ (
Not )
Operator Bitwise ~ ( Not ) digunakan
membalik nilai bit dari suatu operand. Berikut anda dapat melihat ilustrasi
untuk membandingkan bit dari 2 operand.
Contoh Operator dalam Program :
Contoh 1 :
#include <iostream.h>
#include <conio.h>
#include <iomanip.h>
void main ( )
{
Int a, b, c = 0, d = 0 ;
cout <<“Masukkan Nilai A : “;
cin>>a;
cout <<“Masukkan Nilai B : “;
cin>>b;
c = a % b;
d = a * b;
cout <<“Hasil dari C = A % B =
“<<c<< endl ;
cout <<“Hasil dari D = A * B =
“<<d<< endl;
getch ( ) ;
}
Contoh 2 :
#include <iostream.h>
#include <conio.h>
#include <iomanip.h>
void main ( )
{
Int a = 10, b = 5 ;
printf(”Nilai A = %d”, a);
printf(”\nNilai ++A = %d”, ++a);
printf(”\nNilai A = %d”, a);
printf(”\n\nNilai B = %d”, b);
printf(”\nNilai — B = %d”, –b);
printf(”\nNilai B = %d”, b);
getch ( ) ;
}
FUNGSI
Function ( Fungsi
) merupakan blok dari kode yang dirancang untuk melaksanakan tugas khusus. Pada
intinya fungsi berguna untuk :
o Mengurangi pengulangan penulisan program yang berulangan atau sama.
o Program menjadi terstruktur, sehingga mudah dipahami dan dikembangkan.
Fungsi-fungsi
yang sudah kita kenal sebelumnya adalah fungsi main(), yang bersifat mutlak, karena fungsi
ini program akan dimulai, sebagai contoh yang lainnya fungsiprintf() 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()
{
printf(“\n———————-\n”);
}/
* program utama */
main()
{
clrscr();
garis();
cout<<“Institut Sains dan
Teknologi Al-Kamal”<<endl;;
garis();
getche();
}
Prototipe Fungsi
Prototipe fungsi digunakan untuk
menjelaskan kepada kompiler mengenai :
o Tipe keluaran fungsi.
o Jumlah parameter.
o Tipe dari masing-masing 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.
Bentuk penulisan Parameter Formal dan
Parameter Aktual.
1. Pemanggilan dengan nilai ( Call by Value )
Pemanggilan dengan nilai merupakan cara
yang dipakai untuk seluruh fungsi buatan yang telah dibahas didepan. Pada
pemanggilan dengan nilai, nilai dari parameter aktual akan ditulis keparameter
formal. Dengan cara ini nilai parameter aktual tidak bisa berubah, walaupun
nilai parameter formal berubah. Contoh Program :
/* ———————— */
/* Penggunaan Call By Value */
/* Program Pertukaran Nilai */
/* ———————— */
#include<conio.h>
#include<stdio.h>
#include<iostream.h>
tukar(int x, int y);
main()
{
int a, b;
a = 88; b = 77;
clrscr();
cout<<“Nilai Sebelum Pemanggilan
Fungsi”;
cout<<“\na = “<<a<<” b
= “<<b;
tukar(a,b);
cout<<“\nNilai Setelah Pemanggilan
Fungsi”;
cout<<“\na = “<<a<<” b
= “<<b;
getch();
} tukar(int x, int y)
{
int z;
z = x; x = y; y = z;
cout<<“\n\nNilai di dalam Fungsi
Tukar()”;
cout<<“\nx = “<<x<<” y
= “<<y;
cout<<endl;
}
1. Pemanggilan dengan Referensi (Call by Reference)
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 */
/* Program Pertukaran Nilai */
/* —————————- */
#include<conio.h>
#include<stdio.h>
#include<iostream.h>
tukar(int *x, int *y);
main()
{
int a, b;
a = 88; b = 77;
clrscr();
cout<<“Nilai Sebelum Pemanggilan
Fungsi”;
cout<<“\na = “<<a<<” b
= “<<b;
tukar(&a,&b);
cout<<endl;
cout<<“\nNilai Setelah Pemanggilan
Fungsi”;
cout<<“\na = “<<a<<” b
= “<<b;
getch();
}
tukar(int *x, int *y)
{
int z;
z = *x; *x = *y; *y = z;
cout<<endl;
cout<<“\nNilai di Akhir Fungsi
Tukar()”;
cout<<“\nx = “<<*x<<”
y = “<<*y;
}
Pengiriman Data Ke Fungsi
1. Pengiriman Data Konstanta Ke Fungsi
Mengirimkan suatu nilai data konstanta
ke suatu fungsi yang lain dapat dilakukan dengan cara yang mudah, dapat dilihat
dari program berikut :
/* Pengriman data Konstanta */
/* ———————— */
#include<conio.h>
#include<stdio.h>
#include<iostream.h>
luas(float sisi);
main()
{
float luas_bs;
clrscr();
luas_bs = luas(4.25);
cout<<“\nLuas Bujur Sangkar =
“<<luas_bs;
getch();
} luas(float sisi)
{
return(sisi*sisi);
}
1. Pengiriman Data Variabel Ke Fungsi
Bentuk pengiriman data Variabel, sama
seperti halnya pengiriman suatu nilai data konstanta ke suatu fungsi, hanya
saja nilai yang dikirimkan tersebut senantiasa dapat berubah-ubah. Bentuk
pengiriman tersebut dapat dilihat dari program berikut:
/* ———————— */
/* Pengriman data Konstanta */
/* ———————— */
#include<conio.h>
#include<stdio.h>
#include<iostream.h>
luas(float sisi);
main()
{
float luas_bs, sisi_bs;
clrscr();
cout<<“\nMenghitung Luas Bujur
Sangkar”<<endl;
cout<<“\nMasukan Nilai Sisi Bujur
Sangkar : “;
cin>>sisi_bs;
luas_bs = luas(sisi_bs);
cout<<“\nLuas Bujur Sangkar =
“<<luas_bs<<” Cm”;
getch();
} luas(float sisi)
{
return(sisi*sisi);
}
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>
#include<stdio.h>
#include<iostream.h>
tambah(int c); //prototype fungsi tambah
main()
{
int a, b = 5;
clrscr();
a = tambah(b);
cout<<“Nilai Setelah Pemanggilan
Fungsi :”<<a;
getch();
} tambah(int c) //fungsi tambah
{
return(c+=2);
}
Inline Function
Fungsi inline ( inline function )
digunakan untuk mempercepat proses program, terutama program-program yang
menggunakan sering menggunakan fungsi, terutama program-program 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>
#include<iostream.h>
inline int hitung(int a, int b)
{
return(a * b);
}
main()
{
int k;
clrscr();
for(k = 1; k < 20; k++)
cout<< k <<“.
“<<hitung(k, 2 * k) << endl;
getch();
}
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>
#include<stdio.h>
#include<iostream.h>
int hitung(int b);
long hitung(long c);
float hitung(float d);
void main()
{
clrscr();
cout<<hitung(4)<<endl;
cout<<hitung(2)<<endl;
cout<<hitung(3)<<endl;
cout<<hitung(5)<<endl;
getch();
} int hitung(int b)
{
return(b*b);
} long hitung(long c)
{
return(c*c);
}
double hitung(double d)
{
return(d*d);
}
Fungsi Untuk Operasi String
Kompiler seperti Borland C++ maupun
TURBO C++ menyediakan sejumlah fungsi yang berkaitan dengan operasi string,
antara lain :
1. Fungsi Manipulasi String
2. Fungsi Konversi string
o Menggabungkan string dengan strcat() :
//*Contoh untuk menunjukkan efek
strcat()
#include <iostream.h>
#include <conio.h>
#include <string.h>
Void main()
{
char st[128] = “satu dua”;
Clrscr();
Cout <<“Isi st semula : “<<
st<< endl;
Strcat(st, “tiga empat lima”);
Cout <<“Isi st sekarang : “
<< st << endl;
}
o Menggabungkan dua buah string :
//*Contoh untuk menunjukkan penggunaan
strcmp()
#include <iostream.h>
#include <conio.h>
#include <string.h>
Void main()
{
char st[128] = “satu dua”;
Char cpp[ ] = “c++”; Clrscr();
Cout <<“Masukkan sembarang string
“<< endl;
Cin.getline(st, sizeof (st));
Int hasil = strcmp(st, cpp);
If (hasil==0)
Cout <<st <<
“==“<<cpp<<endl;
Else if (hasil<0)
Cout <<st <<
“<“<<cpp<<endl;
Else
Cout <<st <<
“>“<<cpp<<endl;
}
o Mengetahui Panjang String dengan strlen()
//* contoh strlen() untuk memperoleh
panjang string
#include <iostream.h>
#include <conio.h>
#include <string.h>
void main()
{
char bunga[15] = “mawar”;
char kosong[15] = “ “;
clrscr();
cout << strlen (bunga) <<
endl;
cout << strlen (kosong) <<
endl;
}
o Mengkonversi ke huruf kecil dengan strlwr() & strupr()
//*Contoh untuk mengkonversi string ke
huruf kecil atau sebalinya menggunakan strcat()
#include <iostream.h>
#include <conio.h>
#include <string.h>
Void main()
{
char st[128] = “satu dua”;
Clrscr();
Cout <<“Isi st semula : “<<
st<< endl;
Strcat(st, “tiga empat lima”);
Cout <<“Isi st sekarang : “
<< st << endl;
}
o Membalik string dengan strrev()
//* contoh pemakaian strrev() untuk
membalikstring
#include <iostream.h>
#include <conio.h>
#include <string.h>
void main()
{
char kompiler[ ] = “Borland C++”;
clrscr();
strrev(kompiler);
cout<< kompiler<<endl;
}
o Contoh menyalin string dengan strcpy()
//* contoh pemakaian strrev() untuk
membalikstring
#include <iostream.h>
#include <conio.h>
#include <string.h>
void main()
{
char teks[ ] = “C++ ok”;
char data[25];
clrscr();
strcpy(data, teks);
cout<<”isi data : “<<
data<<endl;
}
Konversi String ke Angka atau sebaliknya.
Untuk melakukan konversi dari suatu
string ke bilangan, pemrograman dapat menggunakan sejumlah fungsi bawaan.
Fungsi-fungsi yang telah tersedia dapat
dilihat pada table berikut :
Fungsi
|
Prototipe
|
Keterangan
|
atoi
|
stdlib.h
|
Mengkoversi string argument menjadi
nilai bertipe INT
|
atof
|
stdlib.h
|
Mengkoversi string argument menjadi
nilai bertipe FLOAT
|
atol
|
stdlib.h
|
Mengkoversi string argument menjadi
nilai bertipe Long Int
|
Beberapa contoh hasil pengkonversian
stringkebilangan :
atof(“+2.1E+02”)
è 210
atof(“+2”)
è 2
atof(“2ABC”)
è 2
atof(“ 20.1”)
è 20
atoi(“+2.1E+02”)
è 2
atoi“+2”)
è 2
atoi(“2ABC”)
è 2
atoi(“ 20.1”)
è 20
atol(“+2.1E+02”)
è 2
atoll(“+2”)
è 2
atoll(“2ABC”)
è 2
atol(“ 20000000”)
è 20000000
PENYELESAIAN KONDISI
Pernyataan IF
Pernyataan if mempunyai pengertian, “
Jika kondisi bernilai benar, maka perintah akan dikerjakan dan jika tidak
memenuhi syarat maka akan diabaikan”.
Bentuk umum dari pernyataan if
if (kondisi)
pernyataan;
o Pernyataan IF – ELSE
Pernyataan if -else mempunyai
pengertian, “ Jika kondisi bernilai benar, maka perintah-1 akan dikerjakan dan
jika tidak memenuhi syarat maka akan mengerjakan perintah-2”.
Bentuk umum dari pernyataan if
if (kondisi)
perintah-1;
else
perintah-2;
Jika if-else diikuti dengan pernyataan
majemuk maka bentuk penulisannya sebagai berikut :
if (kondisi)
{
perintah-1;
…
}
else
{
perintah-2;
…
}
o Pernyataan NESTED IF
Nested if merupakan pernyataan if berada
didalam pernyataan if yang lainnya. Bentuk penulisan pernyataan Nested if
adalah :
if(kondisi)
if(kondisi)
…perintah;
else
…perintah;
else
if(kondisi)
…perintah;
else
…perintah;
o Pernyataan IF – ELSE Mejemuk
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 if(kondisi2)
{
..perintah;
..perintah;
}
…
…
else
{
..perintah;
..perintah;
}
Pernyataan switch – case
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 :
switch (ekspresi integer atau karakter )
{
case konstanta-1 :
… perintah;
… perintah;
break;
case konstanta-2 :
… perintah;
… perintah;
break;
……
……
default :
… perintah;
… perintah;
}
Pernyataan break menunjukan bahwa
perintah siap keluar dari switch. Jika pernyataan ini tidak ada, maka program
akan diteruskan kecabang – cabang yang lainnya.
Contoh program penyelesaian kondisi :
#include<stdio.h>
#include<conio.h>
#include<iostream.h>
main()
{
char kode;
clrscr();
cout<<“Masukkan Kode Barang [A..C]
: “;
cin>>kode
switch(kode)
{
case ‘A’ :
case ‘a’ :
cout<<“Alat Olah Raga”;
break;
case ‘B’ :
case ‘b’ :
cout<<“Alat Elelktronik”;
break;
case ‘C’ :
case ‘c’ :
cout<<“Alat Masak”;
break;
default:
cout<<“Anda Salah Memasukan kode”;
break;
}
getch();
PROSES PERULANGAN
Pernyataan for
Perulangan yang pertama adalah for.
Bentuk umum pernyataan for sebagai berikut :
for(inisialisasi;syarat pengulangan;pengubah nilai pencacah )
Bila pernyataan didalam for lebih dari
satu maka pernyataan-pernyataan tersebut harus diletakan
didalam tanda kurung.
for ( inisialisasi; syarat pengulangan; pengubah nilai pencacah )
{
pernyataan / perintah;
pernyataan / perintah;
pernyataan / perintah;
}
Kegunaan
dari masing-masing argumen for diatas adalah :
o Inisialisasi : merupakan bagian untuk memberikan nilai awal untuk
variabel-variabel tertentu.
o Syarat Pengulangan : memegang control terhadap pengulangan, karena bagian
ini yang akan menentukan suatu perulangan diteruskan atau dihentikan.
o Pengubah Nilai Pencacah : mengatur kenaikan atau penurunan nilai pencacah.
Sebagai contoh program untuk mencetak
bilangan dari 1 hingga 10 secara menaik, sebagai berikut :
/* ————————— */
/* Program for – bilangan naik */
/* ————————— */
#include<stdio.h>
#include<conio.h>
#include<iostream.h>
main()
{
int a;
clrscr();
for(a = 1; a <= 10; ++a)
cout<<a;
}
Pernyataan nested – for
Pernyataaan Nested for adalah suatu
perulangan for didalam perulangan for yang lainnya. Bentuk umum pernyataan
Nested for sebagai berikut :
for ( inisialisasi; syarat pengulangan; pengubah nilai pencacah )
{
for ( inisialisasi; syarat pengulangan; pengubah nilai pencacah)
{
pernyataan / perintah;
}
}
Didalam penggunaan nested-for,
perulangan yang didalam terlebih dahulu dihitung hingga selesai, kemudian
perulangan yang diluar diselesaikan.
/*—————————*/
/* Program for – Nested for */
/* ————————- */
#include<stdio.h>
#include<conio.h>
main()
{
int a, b;
clrscr();
for(a = 1; a <= 5; a++)
{
cout<<endl;
for(b = a; b <= 5; b++)
cout<<a;
}
}
Perulangan Tidak Berhingga
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.
Sebagai contoh, jika penulisan perintah
sebagai berikut :
/* ————————- */
/* Program for Tdk Berhingga */
/* ————————- */
#include<stdio.h>
#include<conio.h>
main()
{
int bil;
clrscr();
for (bil = 60; bil >=10; bil++)
cout<< bil;
}
Jika terjadi hal semacam ini, untuk
menghentikan proses yang terus menerus semacam ini denan
menekan tombol CTRL – PAUSE atau CTRL –
BREAK.
Pernyataan goto
Pernyataan goto merupakan instruksi untuk
mengarahkan eksekusi program kepernyataan yang diawali dengan suatu label.
Label merupakan suatu pengenal (identifier) yang diikuti dengan tanda titik dua
( : ). Bentuk pemakaian goto sebagai berikut :
goto label;
Contoh Penggunaan goto, dapat dilihat
pada program berikut :
/* —————————— */
/* Program dengan pernyataan goto */
/* —————————— */
#include<iostream.h>
#include<stdio.h>
#include<conio.h>
main()
{
int a, b;
char lagi;
atas:
clrscr();
cout<<“Masukkan Bilangan = “;
cin>>a;
b = a % 2;
cout<<“Nilai a % 2 adalah = “,a,
b);
cout<<“Ingin Hitung Lagi [Y/T] :
“);
lagi = getche() ;
if (lagi == ‘Y’ || lagi == ‘y’)
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>
#include <conio.h>
main()
{
int bil=1;
clrscr();
while(bil<=10)
{
cout<<bil;
++bil;
}
}
Pernyataan do – while
Pernyataan perulangan do – while
merupakan bentuk perulangan yang melaksanakan perulangan terlebih dahulu dan
pengujian perulangan dilakukan dibelakang.
Bentuk umum perulangan do – while,
sebagai berikut :
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()
{
int bil=2;
clrscr();
do
{
cout<<bil;
bil+=2;
}
while(bil<=10);
}
Pernyataan break
Pernyataan break telah dibahas pada
pernyataan pengambilan keputusan switch. Pernyataan break ini berfungsi untuk
keluar dari struktur switch. Selain itu pernyataan break berfungsi keluar dari
perulangan ( for, while dan do-while ). Jika pernyataan break dikerjakan, maka
eksekusi akan dilanjutkan ke pernyataan yang terletak sesudah akhir dari badan
perulangan ( loop ).
Do While dengan break :
/* ——————————- */
/* Program do – while dengan break */
/* ——————————- */
#include <stdio.h>
#include <conio.h>
main()
{
int bil = 1;
clrscr();
do
{
if (bil >= 6)
break;
cout<<bil;
}
while(bil++);
}
For dengan Break
/* —————————– */
/* Perulangan FOR dengan break; */
/* —————————– */
#include <stdio.h>
#include <conio.h>
main()
{
int bil=1;
clrscr();
while (bil <= 10)
{
if (bil > 5)
break;
cout << bil<<endl;
bil++
}
}
Pernyataan continue
Pernyataan continue digunakan untuk
mengarahkan eksekusi ke iterasi (proses) berikutnya pada loop yang sama, dengan
kata lain mengembalikan proses yang sedang dilaksanakan ke-awal loop lagi,
tanpa menjalankan sisa perintah dalam loop tersebut.
/* —————————– */
/* Perulangan FOR dengan continue */
/* —————————– */
#include <stdio.h>
#include <conio.h>
main()
{
int bil;
clrscr();
for(bil=1; bil<=10; ++bil)
{
cout << bil <<endl;
continue;
cout<< “Apa saya
muncul?“<<endl;
}
}
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
:
1. Array Berdimensi Satu.
2. Array Berdimensi Dua
3. Array Berdimensi Tiga.
Array Berdimensi Satu
Cara mendeklarasikan variabel array sama
seperti deklarasi variabel yang lainnya, hanya saja diikuti oleh suatu indek
yang menunjukan jumlah maksimum data yang disediakan.
Bentuk umum pendeklarasian array :
Tipe-Data Nama_Variabel[Ukuran]
Keterangan :
o Type Data : Untuk menyatakan type datayang digunakan.
o Ukuran : Untuk menyatakan jumlah maksimum elemen array.
Contoh Pendeklarasian Array
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 )
Bentuk umum pengaksesan dengan bentuk :
Nama_Array[Subscript/Index]
Contoh :
Nil_Akhir[3];
Nil_Akhir[1];
Nil_Akhir[0];
Inisialisasi Array Dimensi Satu
Inisialisasi adalah memberikan nilai
awal terhadap suatu variabel. Bentuk pendefinisian suatu array dapat dilihat
dari contoh berikut :
Tipe_data nama_array[jml_elemen] = { nilai array };
Contoah Program :
/* —————————- */
/* Program Array Satu Dimensi */
/* —————————- */
#include<conio.h>
#include<stdio.h>
#include<iostream.h>
#include<iomanip.h>
main()
{
int i;
char nama[5][20];
float nilai1[5];
float nilai2[5];
float hasil[5];
clrscr();
for(i=1;i<=2;i++)
{
cout<<“Data Ke –
“<<i<<endl;
cout<<“Nama Siswa : “;
gets(nama[i]);
cout<<“Nilai Teori : “;
cin>>nilai1[i];
cout<<“Nilai Praktek : “;
cin>>nilai2[i];
hasil[i] = (nilai1[i] * 0.40)+
(nilai2[i] * 0.60);
cout<<endl;
}
cout<<“——————————————“;
cout<<“——-“<<endl;
cout<<“No. Nama Siswa Nilai Nilai
“;
cout<<“Hasil”<<endl;
cout<<” Mid Tes FInal “;
cout<<“Ujian”<<endl;
cout<<“——————————————“;
cout<<“——-“<<endl;
for(i=1;i<=2;i++)
{
cout<<setiosflags(ios::left)<<setw(4)<<i;
cout<<setiosflags(ios::left)<<setw(20)<<nama[i];
cout<<setprecision(2)<<”
“<<nilai1[i];
cout<<setprecision(2)<<”
“<<nilai2[i];
cout<<setprecision(2)<<”
“<<hasil[i]<<endl;
}
cout<<“————————-
—————–“;
cout<<“——-“<<endl;
getch();
}
Array Berdimensi Dua
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.
Bentuk Umum pendeklarasian array :
Tipe-Data Nama_Variabel[index-1][Index-2]
Keterangan :
o Type Data : Untuk menyatakan type data yang digunakan.
o Index-1 : Untuk menyatakan jumlah baris
o Index-2 : Untuk menyatakan jumlah kolom
Inisialisasi Array Dimensi Dua
Inisialisasi adalah memberikan nilai
awal terhadap suatu variabel. Bentuk pendefinisian suatu array dapat dilihat
dari contoh berikut :
Tipe_data nama_array[jml_elemen] = { nilai array };
Contoh Pendeklarasian Array
Sebagai contoh pendeklarasian yang akan
kita gunakan adalah pengolahan data penjualan, berikut dapat anda lihat pada
tabel berikut :
Jenis Barang
|
Tahun
|
||
2001
|
2002
|
2003
|
|
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
Bentuk umum pengaksesan dengan bentuk :
Nama_Array[Index-1][Index-2]
Contoh Program :
/* —————- */
/* Array Dimensi 2 */
/* —————- */
#include<conio.h>
#include<stdio.h>
#include<iostream.h>
#include<iomanip.h>
main()
{
int i, j;
int data_jual[4][4];
clrscr();
for(i=1;i<=3;i++)
{
for(j=1;j<=3;j++)
{
cout<<“Data Ke –
“<<i<<” “<<j<<endl;
cout<<“Jumlah Penjulan : “;
cin>>data_jual[i][j];
}
}
cout<<“Data Penjualan
Pertahun”<<endl;
cout<<“———————–“<<endl;
cout<<“NO 2001 2002
2003″<<endl;
cout<<“———————–“<<endl;
for(i=1;i<=3;i++)
{
cout<<setiosflags(ios::left)<<setw(5)<<i;
for(j=1;j<=3;j++)
{
cout<<setiosflags(ios::right)<<setw(4);
cout<<data_jual[i][j];
cout<<” “;
}
cout<<endl;
}
cout<<“———————–“<<endl;
getch();
}
LATIHAN-LATIHAN
Latihan 1
Soal :
Buat program menghitung suhu dan volume dengan
data input Nama, NIM, Jurusan, Alamat, No HP, Email, Suhu (dalam Celcius),
Panjang, Lebar, Tinggi, Jari-jari serta Alas, dan output Suhu (dalam satuan
Kelvin, Reamur, Fahrenhit) serta Volume (Balok, Bola, Kerucut)
Jawaban :
#include <iostream.h>
#include <stdio.h>
#include <conio.h>
main()
{
char nama[30], nim[9], jur[3],
alamat[50], hp[15], email[30];
float c, k, r, f, p, l, t, j, a, vbalok,
vbola, vkerucut;
printf(“PROGRAM MENGHITUNG SUHU DAN
VOLUME Oleh : \n”);
printf(“\nNama : “);
gets(nama);
printf(“NIM
: “);
gets(nim);
printf(“Jurusan: “);
gets(jur);
printf(“Alamat : “);
gets(alamat);
printf(“No Hp :
“);
gets(hp);
printf(“Email
: “);
gets(email) ;
cout << “\nMasukkan suhu dalam
derajat Celcius =
“;
cin >> c;
k = c+273.15;
r = c*0.8;
f = (c*1.8)+32;
cout << “\nMaka luas suhu dalam
derajat
Kelvin
= ” << k
<< endl;
cout << “Maka luas suhu dalam
derajat
Reamur
= ” << r
<< endl;
cout << “Maka luas suhu dalam
derajat Fahrenheit = ” << f
<< endl;
cout << “\nMasukkan
panjang = “;
cin >> p;
cout << “Masukkan
lebar
= “;
cin >> l;
cout << “Masukkan
tinggi = “;
cin >> t;
cout << “Masukkan jari-jari= “;
cin >> j;
cout << “Masukkan
alas =
“;
cin >> a;
vbalok = p*l*t;
cout << “\nMaka volume Balok
= ” << vbalok
<< endl;
vbola = (4/3)*3.14*(j*j*j);
cout << “Maka volume bola
= ” << vbola
<< endl;
vkerucut = 0.3*3.14*(j*j)*t;
cout << “Maka volume kerucut
= ” << vkerucut
<< endl;
printf(“\n –Terima kasih Anda Telah
Menggunakan Program Ini–“);
getch();
}
Output Program :
Latihan 2
Soal :
Buat program kalkulator untuk menghitung
data input X dan Y, untuk menghasilkan perhitungan X x Y, X / Y, X + Y, X – Y,
Akar X dan akar Y, serta Kuadrat X dan kuadrat Y
Jawab :
#include <iostream.h>
#include <stdio.h>
#include <conio.h>
#include <math.h>
main()
{
char nama[30], nim[9], jur[3],
alamat[50], hp[15], email[30];
float x, y, kali, bagi, tambah, kurang,
akarx, akary, kuadratx, kuadraty;
printf(“PROGRAM KALKULATOR Oleh : \n”);
printf(“\nNama : “);
gets(nama);
printf(“NIM
: “);
gets(nim);
printf(“Jurusan: “);
gets(jur);
printf(“Alamat : “);
gets(alamat);
printf(“No Hp :
“);
gets(hp);
printf(“Email
: “);
gets(email) ;
cout << “\nMasukan X = “;
cin >> x;
cout << “Masukan Y = “;
cin >> y;
kali = x*y;
cout << “\nMaka X x Y = ” <<
kali
<< endl;
bagi = x/y;
cout << “Maka X / Y = ” <<
bagi
<< endl;
tambah = x+y;
cout << “Maka X + Y = ” <<
tambah
<< endl;
kurang = x-y;
cout << “Maka X – Y = ” <<
kurang
<< endl;
akarx = sqrt(x);
akary = sqrt(y);
cout << “Maka akar X dan akar Y =
” << akarx << ” dan ” << akary
<< endl;
kuadratx = x*x;
kuadraty = y*y;
cout << “Maka kuadrat X dan
kuadrat Y = ” << kuadratx << ” dan ” << kuadraty
<< endl;
printf(“\n –Terima kasih Anda Telah
Menggunakan Program Ini–“);
getch();
}
Output Program
Latihann 3
Soal :
Buat program untuk menghitung nilai
mahasiswa dengan data input Nama, NIM, Jurusan, Nilai UTS (bobot 30%), Nilai
UAS (bobot 40%), Nilai Absensi (bobot 10%), serta Nilai Tugas (bobot 20%),
dengan output masing-masing nilai sesuai bobotnya serta nilai akhir.
Jawab :
#include <iostream.h>
#include <stdio.h>
#include <conio.h>
#include <math.h>
main()
{
char nama[30], nim[9], jur[3];
float uts, uas, absensi, tugas, nuts,
nuas, nabsensi, ntugas, nakhir;
printf(“PROGRAM MENGHITUNG NILAI
MAHASISWA \n”);
printf(“\nNama : “);
gets(nama);
printf(“NIM
: “);
gets(nim);
printf(“Jurusan: “);
gets(jur);
cout << “\nMasukan nilai UTS = “;
cin >> uts;
cout << “Masukan nilai UAS = “;
cin >> uas;
cout << “Masukan nilai Absensi =
“;
cin >> absensi;
cout << “Masukan nilai Tugas = “;
cin >> tugas;
nuts = uts*0.3;
cout << “\nMaka Nilai UTS dari 30%
adalah = ” << nuts
<< endl;
nuas = uas*0.4;
cout << “Maka Nilai UAS dari 40%
adalah
= ” << nuas
<< endl;
nabsensi = absensi*0.2;
cout << “Maka Nilai Absensi dari
10% adalah = ” << nabsensi
<< endl;
ntugas = tugas*0.1;
cout << “Maka Nilai Tugas dari 20%
adalah
= ” << ntugas
<< endl;
nakhir = nuts+nuas+nabsensi+ntugas;
cout << “\nJadi, Mahasiswa yang
bernama ” << nama << ” mendapatkan nilai ” << nakhir
<< endl;
getch();
}
Output Program
Latihann 4
Soal :
Buatlah program untuk menghitung nilai
numerik A, B, C, K, L, M. menggunakan menu pilihan (a…e), dengan ketentuan
sebagai berikut :
Jika pilihan a untuk menghitung
A*8<=6*M+B;
Jika pilihan b untuk menghitung
K+10>A&&L-4>8*C;
Jika pilihan c untuk menghitung
(4+2*B-C)/A;
Jika pilihan d untuk menghitung
(A-4)*C/2+10;
Jika pilihan e untuk menghitung
(K-L*M/2-10)-2*10/6
Jawab
#include<stdio.h>
#include<iostream.h>
#include<conio.h>
#include<iomanip.h>
void main()
{
char pil;
int A,B,C,K,L,M,hasila,hasilb,hasilc,hasild,hasile;
cout<<“——————————–“<<endl;
cout<<“PROGRAM MENGHITUNG NILAI NUMERIK”<<endl;
cout<<“——————————–“<<endl;
cout<<” “<<endl;
cout<<” Masukkan Pilihan Anda (a…e): “,cin>>pil;
A=6;
B=12;
C=4;
K=10;
L=4;
M=6;
switch(pil)
{
case ‘a’:
cout<<” Pilihan Anda a. A*8<=6*M+B “<<endl;
cout<<” “<<endl;
hasila=A*8<=6*M+B;
cout<<” Hasilnya adalah = “<<hasila<<” “<<endl;
break;
case ‘b’:
cout<<” Pilihan Anda b. K+10>A&&L-4>8*C = “<<endl;
cout<<” “<<endl;
hasilb=K+10>A&&L-4>8*C;
cout<<” Hasilnya adalah = “<<hasilb<<endl;
break;
case ‘c’:
cout<<” Pilihan Anda c. D=(4+2*B-C)/A “<<endl;
cout<<” “<<endl;
hasilc=(4+2*B-C)/A;
cout<<” Hasilnya adalah = “<<hasilc<<endl;
break;
case ‘d’:
cout<<” Pilihan Anda d. D=(A-4)*C/2+10 “<<endl;
cout<<” “<<endl;
hasild=(A-4)*C/2+10;
cout<<” Hasilnya adalah = “<<hasild<<endl;
break;
case ‘e’:
cout<<” Pilihan Anda d. D=(K-L*M/2-10)-2*10/6 “<<endl;
cout<<” “<<endl;
hasile=(K-L*M/2-10)-2*10/6;
cout<<” Hasilnya adalah = “<<hasile<<endl;
break;
default:
cout<<” Anda belum memilih ! “<<endl;
}
getche();
}
Output Program
Latihan 5
Soal :
Buatlah program untuk membuat aneka
perhitungan yang menggunakan menu dengan ketentuan tiap menu sebagai berikut :
1. Menu A untuk Menghitung Suhu, dengan data input Derajat Fahrenheit dan
output Derajat Celcius, Reamur serta Kelvin
2. Menu B untuk Menghitung Luas, dengan data input Alas, Tinggi, Panjang,
Lebar, Jari-jari serta Sisi, dan output Luas Segitiga, Persegi, Lingkaran,
Jajaran Genjang serta Trapesium.
3. Menu C untuk Menghitung Volume, dengan data input Alas, Tinggi, Panjang,
Lebar serta Jari-jari, dan output Volume Balok, Bola serta Kerucut.
4. Menu D untuk Menghitung Keliling, dengan data input Panjang, Lebar, Tinggi,
Jari-jari serta Alas, dengan output yang diinginkan berupa Keliling Persegi
Panjang serta Keliling Bola.
5. Menu E untuk Menghitung Mata Uang, dengan data input Jumlah Uang dalam
Dinar, Dollar, Yen serta Euro, dan output hasil konversi seluruh mata uang
tersebut kedalam Rupiah.
Jawaban :
#include<stdio.h>
#include<iostream.h>
#include<conio.h>
#include<iomanip.h>
void line();
void main()
{
char pil;
float F;
float phi_1=0.8;
float phi_2=1.8;
float phi_3=3.14;
float phi_4=1.3333333;
float phi_5=0.3333333;
float alas, tinggi, panjang, lebar,
jari, sisi, dollar,dinar,yen,euro, DollartoRp, DinartoRp, YentoRp, EurotoRp;
float
KBola,KPersegi,Persegi,Segitiga,Lingkaran,Jajaran,Trapesium,Balok,Bola,Kerucut,
Celcius,Kelvin,Reamur;
cout<<” SELAMAT DATANG
Dl ANEKA PROGRAM MENGHITUNG “<<endl;
line();
cout<<” “<<endl;
cout<<” A. Program Menghitung Suhu
“<<endl;
cout<<” B. Program
Menghitung Luas “<<endl;
cout<<” C. Program Menghitung Volume “<<endl;
cout<<” D. Program
Menghitung Keliling “<<endl;
cout<<” E. Program
Menghitung Mata Uang”<<endl;
cout<<” “<<endl;
cout<<” Masukan Pilihan
Anda (A…E): “,cin>>pil;
switch(pil)
{
case ‘A’:
cout<<” Pilihan Anda A. Program Menghitung Suhu “<<endl;
cout<<” “<<endl;
cout<<” Masukkan derajat Fahrenheit = “,cin>>F;
cout<<” “<<endl;
Celcius=(F-32)/phi_2;
Kelvin=( F-32)/phi_2+273.15;
Reamur=(F-32)/2.25;
cout<<” Maka suhu derajat Celcius = “<<Celcius<<endl;
cout<<” Maka suhu derajat Reamur =
“<<Reamur<<endl;
cout<<” Maka suhu derajat Kelvin =
“<<Kelvin<<endl;
break;
case ‘B’:
cout<<” Pilihan Anda B. Program Menghitung Luas “<<endl;
cout<<” “<<endl;
cout<<” Masukkan alas = “,cin>>alas;
cout<<” Masukkan tinggi = “,cin>>tinggi;
cout<<” Masukkan panjang = “,cin>>panjang;
cout<<” Masukkan lebar = “,cin>>lebar;
cout<<” Masukkan jari-jari = “,cin>>jari;
cout<<” Masukkan sisi = “,cin>>sisi;
cout<<” “<<endl;
Segitiga=(alas*tinggi)/2;
Persegi=panjang*lebar;
Lingkaran=phi_3*jari;
Jajaran=alas*tinggi;
Trapesium=(2*sisi)/2*tinggi;
cout<<” Maka Luas Segitiga =
“<<Segitiga<<endl;
cout<<” Maka Luas
Persegi =
“<<Persegi<<endl;
cout<<” Maka Luas
Lingkaran = “<<Lingkaran<<endl;
cout<<” Maka Luas Jajaran Genjang = “<<Jajaran<<endl;
cout<<” Maka Luas Trapesium =
“<<Trapesium<<endl;
break;
case ‘C’:
cout<<” Pilihan Anda C. Program Menghitung Volume “<<endl;
cout<<” “<<endl;
cout<<” Masukkan alas = “,cin>>alas;
cout<<” Masukkan tinggi = “,cin>>tinggi;
cout<<” Masukkan panjang = “,cin>>panjang;
cout<<” Masukkan lebar = “,cin>>lebar;
cout<<” Masukkan jari-jari = “,cin>>jari;
cout<<” “<<endl;
Balok=2*(panjang*lebar);
Bola=phi_3*phi_4*((jari*jari)*jari);
Kerucut=phi_3*phi_5*(jari*jari)*tinggi;
cout<<” Maka Volume Balok =
“<<Balok<<endl;
cout<<” Maka Volume
Bola = “<<Bola<<endl;
cout<<” Maka Volume Kerucut =
“<<Kerucut<<endl;
break;
case ‘D’:
cout<<” Pilihan Anda D. Program Menghitung Keliling “<<endl;
cout<<” “<<endl;
cout<<” Masukkan panjang = “,cin>>panjang;
cout<<” Masukkan lebar = “,cin>>lebar;
cout<<” Masukkan tinggi = “,cin>>tinggi;
cout<<” Masukkan
jari-jari = “,cin>>jari;
cout<<” Masukkan alas =
“,cin>>alas;
cout<<” “<<endl;
KPersegi=(panjang*lebar)*2;
KBola=(2*phi_1)*jari;
cout<<” Maka Kelilihg Pesegi Panjang = “<<KPersegi<<endl;
cout<<” Maka Keliling
Bola =
“<<KBola<<endl;
break;
case ‘E’:
cout<<” Pilihan Anda E. Program Menghitung Mata Uang “<<endl;
cout<<” “<<endl;
cout<<” Masukkan Dinar = “,cin>>dinar;
cout<<” Masukkan Dollar = “,cin>>dollar;
cout<<” Masukkan Yen = “,cin>>yen;
cout<<” Masukkan Euro = “,cin>>euro;
cout<<” “<<endl;
DinartoRp=(dinar*5)*9500;
DollartoRp=dollar*9500;
EurotoRp=(euro*2)*9500;
YentoRp=(yen*9500)/4;
cout<<” Maka
“<<dinar;
cout<<” Dinar =
“<<DinartoRp<<” Rupiah “<<endl;
cout<<” Maka
“<<dollar;
cout<<” Dollar =
“<<DollartoRp<<” Rupiah “<<endl;
cout<<” Maka
“<<yen;
cout<<” Yen
= “<<YentoRp<<” Rupiah “<<endl;
cout<<” Maka
“<<euro;
cout<<” Euro =
“<<EurotoRp<<” Rupiah “<<endl;
break;
default:
cout<<” Pilihan Anda salah ! “<<endl;
}
getche();
}
void line()
{
int i;
for(i=0;i<80;i++)
cout<<“=”;
cout<<endl;
}
Output Program
Latihan 6
Soal :
Buatlah program dengan menggunakan Array
untuk menghitung nilai akhir mahasiswa. Setiap mahasiswa di input data Nama,
NIM, Jurusan, Nilai Tugas, Nilai UTS, Nilai UAS, proses input diulang untuk
seluruh mahasiswa. Jika proses penginputan selesai, maka cetak daftar nilai
mahasiswa berikut Nilai akhirnya.
Jawab :
#include<stdio.h>
#include<iostream.h>
#include<conio.h>
#include<iomanip.h>
void line();
void main()
{
int i,
Tugas[5],UTS[5],UAS[5],NilaiAkhir[5];
long int NIM[8];
char
NamaMahasiswa[30][30],Jurusan[20][20];
for(i=1;i<=5;i++)
{
cout<<” “<<endl;
cout<<setw(55)<<” PROGRAM MENGHITUNG NILAI AKHIR “<<endl;
cout<<setw(48)<<”
MAHASISWA ISTA “<<endl;
cout<<setw(52)<<” MATA KULIAH PEMROGRAMAN C++ “<<endl;
cout<<” “<<endl;
line();
cout<<setiosflags(ios::right);
cout<<” “<<endl;
cout<<” Mahasiswa ke- “<<i<<endl;
cout<<” Masukkan Nama Mahasiswa :
“;gets(NamaMahasiswa[i]);
cout<<” Masukkan NIM
: “;cin>>NIM[i];
cout<<” Masukkan Jurusan :
“;gets(Jurusan[i]);
cout<<” Masukkan Nilai Tugas : “;cin>>Tugas[i];
cout<<” Masukkan Nilai UTS
: “;cin>>UTS[i];
cout<<” Masukkan Nilai
UAS
: “;cin>>UAS[i];
NilaiAkhir[i]=Tugas[i]+UTS[i]+UAS[i];
cout<<endl;
}
cout<<” Output : “<<endl<<endl;
cout<<setw(54)<<”
DAFTAR NILAI MAHASISWA “<<endl;
cout<<setw(56)<<” MATA
KULIAH : PEMROGRAMAN C++ “<<endl;
cout<<endl;
line();
cout<<setiosflags(ios::right);
cout<<setw(5)<<“No. Nama
Mahasiswa NIM
Tugas UTS UAS Nilai Akhir”<<endl;
line();
for(i=1;i<=5;i++)
{
cout<<setiosflags(ios::left)<<setw(4)<<i;
cout<<setiosflags(ios::left)<<setw(20)<<NamaMahasiswa[i];
cout<<setiosflags(ios::left)<<setw(10)<<NIM[i];
cout<<setiosflags(ios::left)<<setw(6)<<Tugas[i];
cout<<setiosflags(ios::left)<<setw(6)<<UTS[i];
cout<<setiosflags(ios::left)<<setw(6)<<UAS[i];
cout<<setiosflags(ios::left)<<setw(66)<<NilaiAkhir[i];
cout<<endl;
}
{
line();
cout<<setiosflags(ios::right);
getch();
}
}
void line()
{
int i;
for(i=1;i<80;i++)
cout<<‘=’;
cout<<endl;
}
SELESAI
Tidak ada komentar:
Posting Komentar