Materi C++

KERANGKA PROGRAM C++

Ket :
• Tanda # (pound)
digunakan sebagai awal penulisan kode program ke bagian preprosesor,diantaranya yaitu : #include, #define dll.
• # include
menginstruksikan compiler u/ menyisipkan file lain saat file header di kompilasi.
• File_Header
iostream.h = file header yg digunakan u/ proses input/output (I/O) standar.
objek yg menyertai yaitu : cin, cout, endl, dll.
stdio.h = file header yg digunakan u/ proses input/output (I/O) standar.
objek yg menyertai yaitu : scanf, gets, printf, dll.
iomanip.h = file header yg digunakan u/ input/output (I/O) manipulator.
objek yg menyertai yaitu : setw, dll.
conio.h = file header yg digunakan u/ constanta input/output (I/O).
objek yg menyertai yaitu : clrscr, getch dll.
• Main()  Fungsi utama dalam membuat program atau disebut juga program utama.


Ket :
• cout
berfungsi u/ menampilkan keluaran (output) ke layar monitor.
• endl
berfungsi u/ menyisipkan newline atau baris baru.
• getch
digunakan u/ membaca sebuah karakter tanpa harus menekan enter.






PENGENALAN MODEL DATA,OPERASI DASAR MASUKAN & KELUARAN

* Tipe data dalam C++ terdapat 7 tipe data yaitu :


* Konstanta
Mempunyai nilai yg bernilai tetap, yg terdiri dari :
1. Konstanta bilangan
Terdiri dari bilangan bulat dan desimal.
2. Konstanta text
Terdiri dari data karakter (terdiri dari satu karakter serta diapit kutip satu) dan data string (terdiri dari beberapa karakter serta diapit kutip dua).
Bentuk deklarasi dari konstanta :
Const nama_konstanta = nilai_konstanta;
Contoh :
const phi = 3.14;

* Variabel
Mempunyai nilai atau data yg dapat berubah – ubah, yg
terdiri dari :
1. Variabel bilangan
Terdiri dari bilangan bulat dan desimal.
2. Variabel text
Terdiri dari data karakter dan data string.
Ketentuannya :
Tdak ada spasi (u/ pemisah menggunakan garis bawah), Tidak boleh diawali angka, dan menggunakan operator aritmatika.
Bentuk deklarasi dari Variabel :
Tipe_data nama_variabel;
Contoh : int total_bayar;


* Operasi Dasar Masukkan :
Perintah Input File Header Keterangan
scanf() stdio.h Untuk memasukkan berbagai jenis data
gets() stdio.h Untuk memasukkan data string
cin() iostream.h Untuk memasukkan suatu data
getch() conio.h untuk membaca karakter tanpa harus menekan tombol enter

Perbedaan scanf() dan gets()
scanf() gets()
Tidak dpt menerima string yg mengandung spasi atau tab dan dianggap sebagai data terpisah Dapat menerima string yg mengandung spasi atau tab dan dianggap sebagai suatu kesatuan data.
Bentuk umum dari Operasi dasar masukkan :
1) scanf()
scanf(“penentu_format”,&nama_variabel);
Simbol & penunjuk alamat variabel yg dituju.
2) gets()
gets(nama_variabel);
3) cin()
cin>>nama_variabel;
4) getch() atau getche()
nama_ variabel=getch(); atau nama_variabel=getche();

* Operasi Dasar Keluaran :
Perintah Output File Header Keterangan
printf() stdio.h Untuk menampilkan informasi kelayar
Puts() stdio.h Untuk mencetak string di layar dan diakhiri pindah baris
cout() iostream.h Untuk menampilkan suatu data kelayar
putchar() stdio.h Untuk mencetak karakter ke layar, tidak diakhiri pindah baris
Bentuk umum dari Operasi dasar Keluaran :
1) printf()
printf(“string_control + penentu_format”,argument1,..);
2) puts() atau putchar()
puts(“string_control”); atau putchar(“string_control”)
3) cout()
cout<<”string_control”; Daftar penentu format : TIPE DATA PENENTU FORMAT Integer %d Floating point Desimal %f Berpangkat %e Desimal dan berpangkat %g Double Precision %lf Character %c String %s Long Integer %Id Fungsi Manipulator : MANIPULATOR FILE HEADER KETERANGAN Endl Iostream.h Menyisipkan newline dan mengirimkan isi penyangga keluaran ke piranti keluaran Ends Iostream.h Menyisipkan karakter null Flush Iomanip.h Mengirimkan isi penyangga keluaran ke piranti keluaran Dec Iomanip.h Mengonversi ke bilangan basis sepuluh Hex Iomanip.h Mengonversi ke bilangan 16 (oktal) Oct Iomanip.h Mengonversi ke bilangan 8 (oktal) Setbase(int n) Iomanip.h Mengonversi ke bilangan basis n (n=8,10 atau 16) Setw(int n) Iomanip.h Mengatur lebar field untuk suatu nilai sebesar n karakter Setfill(int n) Iomanip.h menyetel karakter pemenuh berupa c Setprecision(int n) Iomanip.h Menyetel presisi bilangan pecahan sebesar n digit Setiosflags(long f) Iomanip.h Menyetel format yang ditentukan oleh f.f adalah tanda format Resetiosflags(long f) Iomanip.h Menghapus format yang ditentukan oleh f.f adalah tanda format LATIHAN SOAL: INPUT : OUTPUT : // Jawaban # include
# include
# include
main()
{
char nama[10],jabatan[15];
int gapok,tunj,gaji;
clrscr();
puts(" PERHITUNGAN GAJI KARYAWAN");
printf("\n PADA PERUSAHAAN LC CORP");
cout<<"\n============================"<<<"Jabatan : ";cin>>jabatan;
cout<<"Gaji Pokok : ";cin>>gapok;
cout<<"Tunjangan : ";cin>>tunj;
gaji=gapok+tunj;
cout<<"============================"<<<"\n"; clrscr(); printf("Nama karyawan yang bernama %s",nama);cout<<" Memiliki jabatan "<<<<"Mendapatkan Gaji Pokok dan Tunjangan";cout<<"Sebesar "<<<" dan "<<<<"Maka Total Keseluruhan gaji yang didapat ";cout<<"adalah "<
#include
main()
{
int a,b;
printf("Nilai A = ");scanf("%d",&a);
printf("Nilai ++A = %d",++a);
printf("\nNilai A = %d",a);
printf("\n\nNilai B= ");scanf("%d",&b);
printf("Nilai - -B = %d",- -b);
printf("\nNilai B = %d",b);
getch();
}

/* Penggunaan Notasi dibelakang Variabel */
#include
#include
main()
{
int a,b;
printf("Nilai A = ");scanf("%d",&a);
printf("Nilai A++ = %d",a++);
printf("\nNilai A = %d",a);
printf("\n\nNilai B= ");scanf("%d",&b);
printf("Nilai B-- = %d",b--);
printf("\nNilai B = %d",b);
getch();
}




















Operator Relasi
Operator Relasi digunakan untuk membandingkan dua buah nilai. Hasil perbandingan operator ini menghasilkan nilai numerik 1 (True) atau 0 (False).
Operator Keterangan
= = Sama dengan ( bukan pemberi nilai )
! = Tidak sama dengan
> Lebih dari
< Kurang dari > = Lebih dari sama dengan
< = Kurang dari sama dengan #include
#include
main()
{
int x,y;
clrscr();
printf("Masukan Nilai X = ");scanf("%d",&x);
printf("Masukan Nilai Y = ");scanf("%d",&y);
printf("Hasil X = = Y = %d",x = = y);
printf("\nHasil X != Y = %d",x != y);
printf("\nHasil X > Y = %d",x > y);
printf("\nHasil X < y =" %d">= Y = %d",x >= y);
printf("\nHasil X <= Y = %d",x <= y); getch(); } Operator Logika Operator Logika digunakan untuk menghubungkan dua buah operasi relasi menjadi sebuah ungkapan kondisi. Hasil dari operator logika menghasilkan nilai numerik 1 (True) atau 0 (False). Operator Keterangan && Operator Logika AND || Operator Logika OR ! Operator Logika NOT Nilai 1 Nilai 2 NOT(NILAI 2) AND OR 1 1 0 1 1 1 0 1 0 1 0 1 0 0 1 0 0 1 0 0 Ket: 1=True; 0=False; Latihan : Jika J = 2; K = 5; L = 4; M = 3; maka hasil logika X = K + 5 <> 0


#include
#include
main()
{
int C,K,L,M,Z;
clrscr();
C = 2; K = 5; L = 4; M = 3;
printf("Hasil dari operasi\n");
X = (K + 5 <> 0);
printf("(K + 5 <> 0) =%d",Z);
getch();
}














LATIHAN
1. BUAT PROGRAM LUAS SEGITIGA
=================================
Program Menghitung Luas Segitiga
=================================
INPUT NILAI ALAS = .......
INPUT NILAI TINGGI = .......
=================================
MAKA LUAS SEGITIGA = ___
=================================

#include
#include
main()
{
float alas,tinggi,luas;

printf("============================\n");
printf("PROGRAM HITUNG LUAS SEGITIGA\n");
printf("============================\n");
printf("Input Alas = ");scanf("%f",&alas);
printf("Input Tinggi = ");scanf("%f",&tinggi);
luas=alas*tinggi/2;
printf("============================\n");
printf("Luas Segitiga = %5.2f",luas);
printf("\n============================\n");
printf("123456789012345 1234567890");
getch();
}













2. BUAT PROGRAM DENGAN OUTPUT DI BAWAH INI
==============================
SURYA KOMPUTER TECH.
==============================
Nama Barang = .......
Harga Barang = .......
Jumlah Beli = .......
----------------------------------------------------
Total = ____
PPN 10 % = ____
----------------------------------------------------
Total Keseluruhan = ____
==============================

Dengan Kriteria :
- Total didapat dari Harga Barang dikali Jumlah Beli
- PPN 10% didapat dari 10% dari Total
- Total Keseluruhan didapat dari penjumlahan total dan PPN 10%


#include
#include
main()
{
char nm_brg[30];
float total,ppn,tokes;
long harga;
int jumbel;
printf("================================\n");
printf(" SURYA KOMPUTER TECH. \n");
printf("================================\n");
printf("Nama Barang = ");gets(nm_brg);
printf("Harga Barang = ");scanf("%d",&harga);
printf("Jumlah Beli = ");scanf("%d",&jumbel);

total =harga*jumbel;
ppn =total*0.1;
tokes =total+ppn;

printf("================================\n");
printf("Total = Rp %10.2f",total);
printf("\nPPN 10%% = Rp %10.2f",ppn);
printf("\n================================\n");
printf("Total Keseluruhan = Rp %10.2f",tokes);
getch();
}


PENYELEKSIAN KONDISI
(BRANCHING)

1. PERNYATAAN IF
Bentuk Umum IF satu Pernyataan :





Bentuk Umum IF lebih dari satu Pernyataan :









Contoh :
==============================
SURYA KOMPUTER TECH.
==============================
Nama Barang = .......
Harga Barang = .......
Jumlah Beli = .......
----------------------------------------------------
Total = ____
Potongan = ____
----------------------------------------------------
Total Keseluruhan = ____
==============================

Dengan Kriteria :
- Total didapat dari Harga Barang dikali Jumlah Beli
- Potongan didapat jika Jumlah Beli Lebih dari sama dengan 10
maka mendapat potongan 5% dari Total
- Total Keseluruhan didapat dari total dikurangi Potongan 5%








#include
#include
main()
{
char nm_brg[30];
float total,pot,tokes;
long harga;
int jumbel;

printf("================================\n");
printf(" SURYA KOMPUTER TECH. \n");
printf("================================\n");
printf("Nama Barang = ");gets(nm_brg);
printf("Harga Barang = ");scanf("%d",&harga);
printf("Jumlah Beli = ");scanf("%d",&jumbel);

total=harga*jumbel;

if (jumbel >= 10)
pot=0.05*total;

tokes=total-pot;

printf("================================\n");
printf("Total = Rp %10.2f",total);
printf("\nPotongan = Rp %10.2f",pot);
printf("\n================================\n");
printf("Total Keseluruhan = Rp %10.2f",tokes);
getch();
}




















2. Pernyataan IF – ELSE Majemuk
Bentuk Umum :














3. Pernyataan NESTED – IF
 Pernyataan if didalam if.
Bentuk Umum :







Contoh IF – ELSE MAJEMUK:
==============================
SURYA KOMPUTER TECH.
==============================
Nama Barang = .......
Harga Barang = .......
Jumlah Beli = .......
-----------------------------------------------
Total = ____
Potongan = ____
-----------------------------------------------
Total Keseluruhan = ____
Bonus = ____
==============================

Dengan Kriteria :
- Total didapat dari Harga Barang dikali Jumlah Beli
- Potongan didapat :
jika Jumlah Beli >= 10 maka mendapat potongan 5% dari Total,
dan tidak mendapatkan Bonus.
Jika Jumlah Beli > 20 maka mendapat potongan 7% dari Total,
dan mendapatkan bonus TAS.
Selain itu tidak mendapatkan Potongan dan Bonus.
- Total Keseluruhan didapat dari total dikurangi Potongan 5%

#include
#include
main()
{
char nm_brg[30],*bonus;
float total,pot,tokes;
long harga;
int jumbel;

printf("=================================\n");
printf(" SURYA KOMPUTER TECH. \n");
printf("=================================\n");
printf("Nama Barang = ");gets(nm_brg);
printf("Harga Barang = ");scanf("%d",&harga);
printf("Jumlah Beli = ");scanf("%d",&jumbel);

total=harga*jumbel;

if (jumbel >= 10 && jumbel <=20) { pot =0.05*total; bonus="-"; } else if (jumbel > 20)
{
pot =0.07*total;
bonus="TAS";
}
else
{
pot =0;
bonus="-";
}

tokes=total-pot;

printf("=================================\n");
printf("Total = Rp %12.2f",total);
printf("\nPotongan = Rp %12.2f",pot);
printf("\n=================================\n");
printf("Total Keseluruhan = Rp %12.2f",tokes);
printf("\nBonus = %s",bonus);
printf("\n=================================\n");
getch();
}



CONTOH NESTED IF :

===============================
|Jenis | Ukuran | Harga |
------------------------------------------------
|1.Dancow | Kecil | 22500 |
| | Sedang | 27500 |
|2.Bendera | Kecil | 20000 |
| | Sedang | 25000 |
-----------------------------------------------
Input Ukuran Kaleng [K/S] = .....
Input Jenis Susu [1/2] = .....
Harga Satuan Barang = ____








































#include
#include
#include
main()
{
char jenis[1],ukrn[1],lagi;
long harga,jumbel,dibayar;
awal:
clrscr();
cout<<"========================="<<<"|Jenis | Ukuran | Harga | "<<<"--------------------------------------"<<<"|Dancow | Kecil | 22500| "<<<"| | Sedang | 27500| "<<<"|Bendera | Kecil | 20000| "<<<"| | Sedang | 25000| "<<<"--------------------------------------"<<<" Input Ukuran Kaleng [K/S]= ";cin>>ukrn;
cout<<" Input Jenis Susu [1/2] = ";cin>>jenis;
if (*ukrn=='K')
if (*jenis=='1')
harga=22500;
else
harga=20000;
else
if (*jenis=='1')
harga=27500;
else
harga=25000;

cout<<" Harga Satuan Barang =Rp. "<
#include
#include
main()
{
int no_hari;
char *hari;

clrscr();
cout<<"==============================="<<<"1. Senin 3. Rabu 5. Jum'at 7. Minggu"<<<"2. Selasa 4. Kamis 6. Sabtu "<<<"==============================="<<<"Masukkan Nomor Hari [1 .. 7 ] = ";cin>>no_hari;

switch(no_hari)
{
case 1 :
hari = "SENIN";
break;
case 2:
hari = "SELASA";
break;
case 3 :
hari = "RABU";
break;
case 4 :
hari = "KAMIS";
break;
case 5 :
hari = "JUM'AT";
break;
case 6 :
hari = "SABTU";
break;
default :
hari = "MINGGU";
break;
}
cout<<"Hari ini adalah "<<<<"============================================"<
#include
#include
main()
{
int a;
for (a=1;a<=10;a++) cout<
#include
#include
main()
{
int tinggi,baris,kolom;
clrscr();
cout<<"Tinggi Segitiga = ";cin>>tinggi;
cout<<<'*'; cout<
#include
#include
main()
{
int tinggi,baris,kolom;
char lagi;

awal:
clrscr();
cout<<"Tinggi Segitiga = ";cin>>tinggi;
cout<<<'*'; cout<<<"Mau Input Lagi [Y/T] = ";cin>>lagi;

if (lagi=='Y' || lagi=='y')
goto awal;
else
goto selesai;

selesai:
}


3. PERNYATAAN WHILE
Bentuk Umum while satu Pernyataan :




Bentuk Umum while lebih dari satu Pernyataan :







contoh:
#include
#include
#include
main()
{
int a=1;
clrscr();
while (a<=10) { cout<
#include
#include
main()
{
int a=2;
do
{
cout<<=10); getch(); } ARRAY Adalah tipe terstruktur yang terdiri dari sejumlah komponen-komponen tipe yang sama Array Berdimensi Satu Bentuk Umum : Ket : * Tipe Data : Untuk menentukan tipe data yang digunakan * Ukuran : Untuk menyatakan jumlah maksimum array yang digunakan Contoh : TAMPILAN INPUT : ****************************************** KEY CELLULAR ****************************************** NAMA ADMIN = SHINTA JUMLAH DATA YANG MAU DI INPUT (MAKSIMAL 10 ) = 2 DATA KE – 1 NAMA VOUCHER = MENTARI JENIS PULSA (10/15/20) = 10000 HARGA PULSA = Rp. 11000 DATA KE – 2 NAMA VOUCHER = ESIA JENIS PULSA (10/15/20) = 10000 HARGA PULSA = Rp. 12000 TAMPILAN OUTPUT : KEY CELLULAR =========================================================== NO. NAMA VOUCHER JENIS PULSA HARGA PULSA (Rp.) =========================================================== 1 MENTARI 10000 11000 2 ESIA 10000 12000 =========================================================== ADMIN : SHINTA Fungsi Merupakan sub program yang berguna untuk menjadikan program bersifat modular sehingga mudah dipahami dan dapat digunakan kembali, baik untuk program sendiri maupun untuk program lainyang memiliki proses sama. • Definisi Fungsi A. Fungsi Tanpa Nilai Balik Fungsi ini dikenal di Pascal dengan sebutan Procedure. B.U Fungsi ini adalah: Deklarasi pemanggilan fungsinya adalah : Contoh : #include
#include

cetak_garis() // membuat fungsi dengan nama cetak garis
{
cout<<”*****************************”<<<”BELAJAR FUNGSI DALAM C++”<
#include

double nilai (double x,double y); // deklarasi fungsi

main() //program utama
{
clrscr();
cout<<<< y)
return(x);
else
return(y);
}

* return digunakan untuk memberikan nilai balik fungsi
Dari contoh diatas
Berarti fungsi nilai memberikan nilai balik x kepada argument jika x > y
Dan memberikan nilai balik y jika x<=y • Storage Class Variabel Merupakan penggolongan variabel berdasarkan kelas penyimpanan di dalam fungsi A. Variabel Global Merupakan variabel yang di definisikan diluar fungsi. Contoh : #include
#include
#include
int G;
main()
{
G=17;
cout<<”Nilai G = “<<
#include
var_fungsi(); // deklarasi fungsi var_fungsi
main()
{
int m = 30; // variabel lokal pada main
int t = 12; // variabel lokal pada main
clrscr();
cout<<”Variabel Lokal Pada Main : m = “<<<” t = “<<<<”Variabel Lokal Pada Fungsi : m = “<<<” t = “<<
#include
int var_statis() // deklarasi fungsi var_statis
{
static (int S = 0 );
S = S + 17;
return S;
}
main()
{
int N1,N2,N3;
N1 = var_statis(); // memanggil deklarasi fungsi var_statis
N2 = var_statis(); // memanggil deklarasi fungsi var_statis
N3 = var_statis(); // memanggil deklarasi fungsi var_statis

cout<<”Nilai 1 pada pemanggilan Fungsi = “<<<<”Nilai 2 pada pemanggilan Fungsi = “<<<<”Nilai 3 pada pemanggilan Fungsi = “<<
#include
nilai_kali3( int x )
{
x=x*3;
cout<<”Nilai di dalam fungsi = “<<<<”Masukkan nilai bilangan bulat = “;cin>>nilai;
cout<<<”Nilai Awal = “<<<<”Nilai Akhir = “<<
#include
nilai_kali3( int&x )
{
x=x*3;
cout<<”Nilai di dalam fungsi = “<<<<”Masukkan nilai bilangan bulat = “;cin>>nilai;
cout<<<”Nilai Akhir = “<<
#include
Hitung(float total,float pot,float tokes;)
{
total=harga*jumbel;

if (jumbel >= 10)
pot=0.05*total;

tokes=total-pot;
}

(disimpan dengan nama file Hitung.h)


#include
#include
#include “Hitung.h”
main()
{
char nm_brg[30];
float total,pot,tokes;
long harga;
int jumbel;

printf("================================\n");
printf(" SURYA KOMPUTER TECH. \n");
printf("================================\n");
printf("Nama Barang = ");gets(nm_brg);
printf("Harga Barang = ");scanf("%d",&harga);
printf("Jumlah Beli = ");scanf("%d",&jumbel);

Hitung(total,pot,tokes)

printf("================================\n");
printf("Total = Rp %10.2f",total);
printf("\nPotongan = Rp %10.2f",pot);
printf("\n================================\n");
printf("Total Keseluruhan = Rp %10.2f",tokes);
getch();
}

(disimpan dengan nama file latihan_file_header.cpp)




Struktur
Digunakan untuk mengelompokkan sejumlah data yang berbeda.
Structure dalam bahasa pemrograman pascal disebut dengan record.

B.U deklarasi ini adalah :






Atau






Contoh Pendeklarasian ;
struct
{
char nim[8];
char nama[30];
int nilai;
} mahasiswa;

Contoh Soal Struktur :
#include
#include
#include
main()
{
struct
{
char nim[8];
char nama[30];
int nilai;
} mahasiswa;
clrscr();
cout<<”Masukkan N.I.M = “;cin>>mahasiswa.nim;
cout<<”Masukkan Nama = “;cin>>mahasiswa.nama;
cout<<”Masukkan Nilai = “;cin>>mahasiswa.nilai;

cout<<”\n Data Yang Di inputkan adalah : \n“; cout<<” N.I.M = “<<<<” Nama = “<<<<” Nilai = “<<