C++ Standar Library

CONTAINERS

<bitset>
Menyediakan wadah khusus kelas std:: bitset, array bit.

<deque>
Menyediakan wadah template kelas std:: deque, antrian ganda berakhir.

<list>
Menyediakan wadah template kelas std:: list, doubly-linked.

<map>
Menyediakan wadah template kelas std:: map dan std:: Multimap, diurutkan array asosiatif dan Multimap.

<queue>
Menyediakan kelas adaptor wadah std:: antrian, antrian tunggal berakhir.

<set>
Menyediakan wadah template kelas std:: set dan std:: multiset diurutkan asosiatif kontainer atau set.

<stack>
Menyediakan kelas adaptor wadah std:: stack, stack.

<vector>
Menyediakan wadah template kelas std:: vector sebuah array dinamis.

Posted in | 4 Comments

Interpolation Search

Teknik ini dilakukan pada data yang sudah terurut berdasarkan kunci tertentu. Teknik searching ini dilakukan dengan perkiraan letak data. Contoh ilustrasi: jika kita hendak mencari suatu kata di dalam kamus telepon, misal yang berawalan dengan huruf J, maka kita tidak akan mencarinya dari awal buku, tapi kita langsung membukanya pada 1/3 atau 1/4 dari tebal kamus.
Rumus posisi relatif kunci pencarian dihitung dengan rumus:

Posted in | Leave a comment

Binary Search

Salah satu syarat agar binary search dapat dilakukan adalah data sudah dalam keadaan urut. Dengan kata lain, apabila data belum dalam keadaan urut, binary search tidak dapat dilakukan.
Prinsip dari binary search dapat dijelaskan sebagai berikut :

a.Mula-mula diambil posisi awal 0 dan posisi akhir = N - 1, kemudian dicari posisi data tengah dengan rumus (posisi awal + posisi akhir) / 2. Kemudian data yang dicari dibandingkan dengan data tengah.

b.Jika lebih kecil, proses dilakukan kembali tetapi posisi akhir dianggap sama dengan posisi tengah –1.

c.Jika lebih besar, proses dilakukan kembali tetapi posisi awal dianggap sama dengan posisi tengah +1. Jika data sama, berarti ketemu.

Berikut adalah script contoh programnya

Posted in | 1 Comment

Sequential Search (Pencarian Berurutan)

Adalah suatu teknik pencarian data dalam array (1 dimensi)yang akan menelusuri semua elemen-elemen array dari awal sampai akhir, dimana data-data tidak perlu diurutkan terlebih dahulu. Pencarian berurutan menggunakan prinsip sebagai berikut : data yang ada dibandingkan satu per satu secara berurutan dengan yang dicari sampai data tersebut ditemukan atau tidak ditemukan.

Berikut adalah contoh script penggunaan Sequential Searching

Posted in | Leave a comment

Typedef

#include<iostream.h>

int main(){
//mengaliaskan type data
typedef int a;
typedef float b;
typedef char c;

//mendeklarasikan variabel;
a bil1 = 10;
b bil2 = 25,55;
c karakter = 'A'

cout << "Hasillnya : ";
cout << "\nBilangan integer : " << bil1;
cout << "\nBilangan pecahan : " << bil2;
cout << "\nKarakter : " << karakter;
}

Posted in | Leave a comment

Pointer dengan Array

Contoh penggunaan pointer pada C++, dimana nilai pointer didapat dari nilai suatu Array.

#include <iostream.h>

main () {

int x[5]={10,99,23,15,2};
int *px;

cout <<"***********************************" <<endl;
cout <<"| nilai x | nilai px | alamat memori |\n";
cout <<"-------------------------------------------------" <<endl;
for(int i=0;i<=4;i++) {
px = &x[i]; //membaca alamat dari x

cout <<x[i] <<" " <<*px <<" " <<px <<endl;
}
}

Posted in | 1 Comment

Pointer dengan Variabel

Contoh penggunaan pointer pada C++, dimana nilai pointer didapat dari nilai suatu variabel.

#include <iostream.h>

main () {
int x = 10, y = 99;
int *p, *z;
int *a; //a = dangling pointer
int *b = 0; // b = null pointer
p = &x;
z = &y;

cout<<"nilai yang di tunjuk p = "<<*p<<"pada alamat " <<p<<endl;
cout<<"nilai yang di tunjuk z = "<<*z<<"pada alamat " <<z<<endl;
*z = *p;
cout<<"nilai yang di tunjuk p = "<<*p<<"pada alamat" <<p<<endl;
cout<<"nilai yang di tunjuk z = "<<*z<<"pada alamat "<<z<<endl;
cout<<"nilai a = "<<*a<<"<- ini merupakan dangling pointer\n";
cout<<"nilai b = "<<*b<<"<- ini merupakan null pointer\n";
}

Posted in | 1 Comment

Program Mempermainkan Kata

# include <iostream.h>
# include <conio.h>
# include <stdio.h>

main()
{

int i,pil;
char kata[20],*array,ulang;

clrscr();

do{
cout <<"\n********************************";
cout <<"\n* PROGRAM MEMPERMAINKAN KATA *";
cout <<"\n********************************";
cout <<"\n";
cout <<"\n1.Membalikkan Kata (inputan)";
cout <<"\n2.Kapitalis Kata";
cout <<"\n3.Exit";
cout <<"\n";
cout <<"\nMasukkan pilihan Anda ! : "; cin >>pil;
switch(pil){

case 1:
clrscr();
cout <<"\n================================";
cout <<"\n= Membalikkan Kata (inputan) =";
cout <<"\n================================";
cout <<"\n\n";
cout <<"Masukkan kata : "; cin >>kata;

for(kata[i]!='\0';i>=0;i--) // kata[i]!='\0' artinya, nilai awal array kata merupakan akhir dari index array yang diinputkan. '\0' = null, menandai akhir dari index array yang diinputkan.
{
cout <<kata[i];
}
cout <<"\n\n\n";
break;

case 2:
clrscr();
cout <<"\n====================";
cout <<"\n= Kapitalis Kata =";
cout <<"\n====================";
cout <<"\n\n";
cout <<"Masukkan kata ! : ";
gets(array); // fungsi pengambilan tipe data string pada Bahasa C
cout <<"\n--------------------------------";
cout <<"\n\nHASIL : ";

for(i=0;array[i]!='\0';i++)
{
if((array[i]>='A')&&(array[i]<='Z'))
{
printf("%c",array[i]+32); //penjumlahan bilangan desimal dari karakter huruf besar yang diinputkan untuk menghasilkan bilangan desimal karakter huruf kecil
}
else
{
printf("%c",array[i]-32); //pengurangan bilangan desimal dari karakter huruf kecil yang diinputkan untuk menghasilkan bilangan desimal karakter huruf besar
}
}
cout <<"\n\n\n";
break;

case 3 :
clrscr();
break;
}
cout <<"Apakah Anda ingin mengulang ? [Y/T] : ";
cin >>ulang;
}
while(ulang=='Y'||ulang=='y');

cout <<"\3\3\3 TERIMA KASIH \3\3\3";

getch();
}

Posted in | 2 Comments

Tabel Perkalian

# include <iostream.h>
# include <conio.h>

main()
{

int i,j,BA,BK,I;

clrscr();
cout <<"\n*******************";
cout <<"\n* TABEL PERKALIAN *";
cout <<"\n*******************";
cout <<"\n\n\n";
cout <<"Masukkan Bilangan Awal! = "; cin>>BA;
cout <<"Masukkan Bilangan Akhir! = "; cin>>BK;
cout <<"Masukkan Interval! = "; cin>>I;
cout <<"\n";
for(i=BA;i<=BK;i=i+I)
{
    for(j=BA;j<=BK;j=j+I)
   {
       cout <<i*j <<"\t";
   }
   cout <<"\n";
}

getch();
}

Posted in | Leave a comment

Trigonometry Angel Numbering Program

# include <conio.h>
# include <iostream.h>
# include <math.h>

main()
{

int der,FN,LN,I;
float rad,s,c,t;

clrscr();
cout <<"\n******************************************";
cout <<"\n*  TRIGONOMETRY ANGEL NUMBERING PROGRAM  *";
cout <<"\n******************************************";
cout <<"\n\n";
cout <<"Enter first number !   = "; cin >>FN;
cout <<"Enter last number !  = "; cin >>LN;
cout <<"Enter interval !     = "; cin >>I;
cout <<"\n\n";
cout <<"\n=================================================";
cout <<"\n|DERAJAT| RADIAN  |  SINUS  | COSINUS | TANGEN  |";
cout <<"\n=================================================";

if(LN<FN)
{
cout <<"\n\t~~~~~~~~~~~~EEEEERRRROOOORRRRR~~~~~~~~~~~~";
cout <<"\nYour false entering first number or last number";
}
else
{
for(der=FN;der<=LN;der=der+I)
{
rad=1;

rad=M_PI/180*der;
s=sin(rad);
c=cos(rad);
t=tan(rad);
cout <<"\n|  "<<der<<"  | "<<rad<<" | " <<s<< " | " <<c<< " | " <<t<< " |";
cout <<"\n===================================================";
}
}
cout <<"\n\n\n";
cout <<"\t~~~~~~~~~~~~THANK YOU~~~~~~~~~~~~";

getch();
}

Posted in | Leave a comment

Program Menghitung Luas dan Keliling Lingkaran

# include <conio.h>
# include <iostream.h>
# include <math.h> // Mengaktifkan fungsi-fungsi matematika pada script program

main ()
{
float r,L,K;

clrscr();
cout <<"\n*******************************";
cout <<"\n* LUAS & KELILING LINGKARAN *";
cout <<"\n*******************************";
cout <<"\n\n";
cout <<"\nMasukkan jari-jari ! = "; cin >>r;
cout <<"\nphi = " <<M_PI; //M_PI adalah fungsi matematika (phi)

L=M_PI*r*r;
K=2*M_PI*r;

cout <<"\n\n";
cout <<"\n=========";
cout <<"\n= HASIL =";
cout <<"\n=========";
cout <<"\n\n";
cout <<"\nLuas = " <<L;
cout <<"\nKeliling = " <<K;

getch();
}

Posted in | Leave a comment

Program Konversi Jarak

# include <conio.h>
# include <iostream.h>

main()
{
int BA,BK,I,pil,bil,no;
float H;
char ulang;

clrscr();
cout <<"\n*************************************";
cout <<"\n* TUGAS AKHIR PRAKTIKUM C++ DASAR *";
cout <<"\n* PROGRAM KONVERSI JARAK *";
cout <<"\n*************************************";

do
{
clrscr();
cout <<"\n********************************";
cout <<"\n* KONVERSI VOLUME DARI METER^3 *";
cout <<"\n********************************";
cout <<"\n\n";
cout <<"1.Meter^3 - Kaki^3\n";
cout <<"2.Meter^3 - Yard^3\n";
cout <<"3.Exit";
cout <<"\n";
cout <<"\nMasukkan Pilihan Anda ! : "; cin >>pil;

switch(pil)
{
case 1:
clrscr();
do
{
cout <<"\n====================";
cout <<"\n= METER^3 - KAKI^3 =";
cout <<"\n====================";
cout <<"\n";
cout <<"\nMasukkan Bilangan Awal ! = "; cin >>BA;
cout <<"\nMasukkan Bilangan Akhir ! = "; cin >>BK;

if(BA>BK)
{
cout <<"\n\t\tANDA SALAH MEMASUKKAN BILANGAN";
cout <<"\n\t SEHARUSNYA BILANGAN AWAL < BILANGAN AKHIR";
cout <<"\n\n\nMENU UTAMA Tekan Sembarang Tombol !";
}
else
{
cout <<"\nMasukkan Interval ! = "; cin >>I;
cout <<"\n=========================";
cout <<"\n|No.| METER^3 | KAKI^3 |";
cout <<"\n=========================";

no=1;
for(bil=BA;bil<=BK;bil=bil+I)
{
H=bil/0.02832;
no=no+1;
cout <<"\n| "<<no<< " | "<<bil<<" | "<<H<<" |";
}
cout <<"\n---------------------------------";
cout <<"\n\nApakah Anda Ingin Mengulang Konversi ? [Y/T] : ";
cout <<"\n\nMENU UTAMA Tekan Sembarang Tombol !";
}
ulang=getche();
}
while(ulang=='Y'||ulang=='y');
break;

case 2:
clrscr();
do
{
cout <<"\n====================";
cout <<"\n= METER^3 - YARD^3 =";
cout <<"\n====================";
cout <<"\n";
cout <<"\nMasukkan Bilangan Awal ! = "; cin >>BA;
cout <<"\nMasukkan Bilangan Akhir ! = "; cin >>BK;

if(BA>BK)
{
cout <<"\n\t\tANDA SALAH MEMASUKKAN BILANGAN";
cout <<"\n\t SEHARUSNYA BILANGAN AWAL < BILANGAN AKHIR";
cout <<"\n\n\nMENU UTAMA Tekan Sembarang Tombol !";
}
else
{
cout <<"\nMasukkan Interval ! = "; cin >>I;
cout <<"\n=========================";
cout <<"\n|No.| METER^3 | YARD^3 |";
cout <<"\n=========================";

no=1;
for(bil=BA;bil<=BK;bil=bil+I)
{
H=bil/0.7645;
no=no+1;
cout <<"\n| "<<no<< " | "<<bil<<" | "<<H<<" |";
}
cout <<"\n---------------------------------";
cout <<"\n\nApakah Anda Ingin Mengulang Konversi ? [Y/T] : ";
cout <<"\n\nMENU UTAMA Tekan Sembarang Tombol !";
}
ulang=getche();
}
while(ulang=='Y'||ulang=='y');
break;

case 3:
default:
cout <<"\n\n\t\tTERIMA KASIH Telah Menggunakan Program Ini";
break;

}
}
while(pil!=3);
getch();

}

Posted in | Leave a comment

Program Perhitungan Luas

# include <conio.h>
# include <iostream.h>
# include <stdio.h>
main()
{
int pil,s,p,l,a,t,LP,LPP;
float LS;
char ulang;

clrscr();

do{
cout <<"\n******************************";
cout <<"\n* PROGRAM PERHITUNGAN LUAS *";
cout <<"\n******************************";
cout <<"\n";
cout <<"\n1.Luas Persegi";
cout <<"\n2.Luas Persegi Panjang";
cout <<"\n3.Luas Segitiga";
cout <<"\n4.Exit";
cout <<"\n";
cout <<"\nMasukkan pilihan Anda ! : "; cin >>pil;

switch(pil){

case 1:
clrscr();
cout <<"\n==============================";
cout <<"\n= Perhitungan Luas Persegi =";
cout <<"\n==============================";
cout <<"\n";
cout <<"\nMasukkan sisi ! = "; cin >>s;

LP=s*s;

cout <<"\nLuas Persegi = " <<LP;
cout <<"\n\n\n";
break; /*break, berfungsi untuk keluar dari struktur switch*/

case 2:
clrscr();
cout <<"\n======================================";
cout <<"\n= Perhitungan Luas Persegi Panjang =";
cout <<"\n======================================";
cout <<"\n";
cout <<"\nMasukkan panjang ! = "; cin >>p;
cout <<"\nMasukkan lebar ! = "; cin >>l;

LPP=p*l;

cout <<"\nLuas Persegi Panjang = " <<LPP;
cout <<"\n\n\n";
break;

case 3:
clrscr();
cout <<"\n===============================";
cout <<"\n= Perhitungan Luas Segitiga =";
cout <<"\n===============================";
cout <<"\n";
cout <<"\nMasukkan alas ! = "; cin >>a;
cout <<"Masukkan tinggi ! = "; cin >>t;

LS=0.5*a*t;

cout <<"\nLuas Segitiga = " <<LS;
cout <<"\n\n\n";
break;

case 4:
clrscr();
break;

}
cout <<"Apakah Anda ingin mengulang ? [Y/T] : ";
cin >>ulang;
}
while(ulang=='Y'||ulang=='y');

cout <<"\2\2\2 TERIMA KASIH \2\2\2";
getch();

}

Posted in | Leave a comment

Array 2 Dimensi

Example 1:
#include <iostream.h>
#include <conio.h>

main()
{

//initial
int array[2][3] = {/*element in row 1*/ {10, 20, 30},/*element in row 2*/{11, 21, 31 }
};
int row,col;

clrscr();

for (row=0;row<2;row++)
{
for (col=0;col<3;col++)
{
cout <<">
}
cout <<"\n\n";
}

getch();
}

Posted in | 1 Comment

Array

Array adalah variabel Larik atau lebih dikenal dengan ARRAY adalah adalah Tipe terstruktur yang terdiri dari sejumlah komponen-komponen 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.
Dalam bahasa C, index dari array dimulai dengan 0 (zero).

Variabel array dalam Borland C++, dapat digolongkan menjadi tiga buah dimensi :
•Array Berdimensi Satu.
•Array Berdimensi Dua
•Array Berdimensi Tiga.

Pembahasan ini, hanya dibatasi pada Array Berdimensi Dua saja :

1. Array Berdimensi Satu
Sebelum digunakan, variabel array perlu dideklarasikan terlebih dahulu. 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 :
•Type Data : Untuk menyatakan type data yang digunakan.
•Ukuran : Untuk menyatakan jumlah maksimum elemen array.

contoh pendeklarasian array
float Nil_Akhir[6];


1. 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 :
•Type Data : Untuk menyatakan type data yang digunakan.
•Index-1 : Untuk menyatakan jumlah baris
•Index-2 : Untuk menyatakan jumlah kolom

contoh pendeklarasian array
int data_jual[3][3]

* Inisialisasi Array
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:
float data[2][5] = { {2, 3, 4, 5, 2},{4, 2, 6, 2, 7},};

Posted in | Leave a comment

Array 1 Dimensi

Example 1:
#include <iostream.h>
#include <conio.h>

main()
{

int x;
int number[ ] = {1,2,3,4,5,6,7,8,9};
char character[ ] = {'H','E','L','L','O'};

clrscr();

for(x=0;x<9;++x)
{
cout <<"\nData [" <<x <<"] = "< number[x];
}
cout<<"\n";

for(x=0;x<5;++x)
{
cout <<"\nData ["<<x<<"] = "<< character[x];
}

getch();
}
Example 2:
#include <iostream.h>
#include <conio.h>

main()
{

int number[3];
char character[3];
int index;

clrscr();

//Number
cout <<"\n****************";
cout <<"\n* INPUT NUMBER *";
cout <<"\n****************";
//input
for(index=0;index<3;index++)
{
cout <<"\nData "<<index+1 <<" = ";
cin >>number[index];
}
cout <<"\n";
//output
for(index=0;index<3;index++)
{
cout <<"\nData ke-"<<index+1 <<"] = " <<number[index];
}

//Character
cout <<"\n*******************";
cout <<"\n* INPUT CHARACTER *";
cout <<"\n*******************";
//input
for(index=0;index<3;index++)
{
cout <<"\nData "<<index+1 <<" = ";
cin >>character[index];
}
cout <<"\n";
//output
for(index=0;index<3;index++)
{
cout <<"\nData "<<index+1 <"] = " <<character[index];
}

getch();
}

Posted in | Leave a comment

Nested For

Example 1:
# include <iostream.h>
# include <conio.h>

main()
{

int loop,counter;
clrscr();

for(counter=0;counter<5;counter++)
{
for(loop=0;loop<counter;loop++)
{
cout <<counter;
}
cout <<"\n";
}

getch();
}
Example 2:
# include <iostream.h>
# include <conio.h>

main()
{

int bil,loop,counter;
clrscr();

cout <<"Masukkan sembarang bilangan ! : ";
cin >>bil;

for(counter=0;counter<=bil;counter++)
{
for(loop=1;loop<counter;loop++)
{
cout <<"*";
}
cout <<"\n";
}
for(counter=bil;counter>=0;counter--)
{
for(loop=2;loop<counter;loop++)
{
cout <<"*";
}
cout <<"\n";
}

getch();
}

Posted in | Leave a comment

For Multi Condition

Untuk For Multi Kondisi (kondisi1 & kondisi2), maka diperlukan operator LOGIKA && untuk relasi AND, dan operator LOGIKA || untuk relasi OR.
Untuk materi dasar for, dapat dilihat di sini!

Langsung saja pada contoh listing programnya.

# include <iostream.h>
# include <conio.h>

main()
{

int bil;
char ket;
clrscr();

for((bil=1)&&(ket='D');(bil<=4)&&(ket>='A');(bil++)&&(ket--))
{
cout <<bil <<" | " <<ket;
cout <<"\n";
}

getch();
}

Posted in | Leave a comment

For

Untuk materi dasar for, dapat dilihat di sini!


Example 1:

# include <iostream.h>
# include <conio.h>

main()
{

int number;
clrscr();

for(number=1;number<5;number=number+1)
{
cout <<number;
cout <<"\n";
}

getch();
}

Example 2 :
# include <iostream.h>
# include <conio.h>

main()
{

clrscr();

for(int number=1;number<5;number=number+1) //Declaration variable type, example (int) will do in property for
{
cout <<number;
cout <<"\n";
}

getch();
}

Example 3:
# include <iostream.h>
# include <conio.h>

main()
{

int number;
clrscr();

number=1;
for( ;number<=5; ) //Initial Variable in property for, moved before intruction for. fix Condition write in property for. And Interval put on under instruction for
{
cout <<number;
cout <<"\n";
bil++; //interval can brief writing from number=number+1 to be number++, and number=number-1 to be number--
}

getch();
}

Posted in | Leave a comment

Do-While

Perulangan selain for adalah Do-While. Bentuk umum pernyataan Do-while sebagai berikut :
initial_counter;
do
{
statement 1;
statement 2;
update_counter;
}
while(
condition_counter);


Do-While Multi Condition

Untuk Do-While multi kondisi sama dengan perulangan for yakni initial_counter, condition_counter, dan update_counter lebih dari 1.


Nested Do-While

Istilah nested-loop adalah situasi dimana sebuah proses berulang lainnya. Bentuk umum dari Nested-loop adalah sebagai berikut;
initial_counter;
do
{
initial_loop;
statement 1;
update_counter;
do
{

statement 1;
update_loop;
}
while(
condition_loop);
}
while(
condition_counter);

Posted in | Leave a comment

Search

Support by Blogger ITN | Converted by LiteThemes.com