Selasa, 30 April 2013

Topologi Jaringan

 

Kebutuhan yang diperlukan dalam koneksi jaringan (Topologi Jaringan):
o Koneksi secara fisik (Topologi secara fisik).
o Koneksi secara Logis (Topologi secara Logic).
 

Koneksi/Topologi Fisik Jaringan

o Topologi Jaringan adalah gambaran secara fisik dari pola hubungan antara komponen-komponen jaringan, yang meliputi server, workstation, hub/Switch dan pengkabelannnya.
o Kebutuhan Peralatan Jaringan
– PC
– NIC
– Network Media
– Peralatan Jaringan
      • Repeater
      • Hub
      • Bridge
      • Switch
      • Router
o Bentuk Koneksi secara Fisik
– Bus
– Ring
– Star
– Mesh
– Tree
 

Topology Bus

Pada topologi bus, terdapat lebih dari dua perangkat yang dihubungkan ke medium dan semuanya dapat mengirimkan sinyal pada medium tersebut.
clip_image002
Transmisi dari satu perangkat akan dirambatkan sepanjang media transmisi ke segala arah dan dapat diterima oleh semua perangkat lain.
Pada penerapannya, diujung bus dipasang suatu terminator, yang berfungsi menyerap signal dan membuangnya dari bus.
Kelemahan dari topologi dasar jenis ini adalah apabila salah satu segmen medianya terputus, maka seluruh PC tidak dapat berkomunikasi. Selain dari itu juga pada topologi ini sangat riskan terjadi tabrakan paket data (collision), hal ini terjadi karena hanya terdapat jalur tunggal yang digunakan untuk menghubungkan PC anggota jaringan komputer.
 

Topologi Ring

Pada topologi ring, semua workstation dan server dihubungkan secara berurut, sehingga terbentuk suatu pola lingkaran mirip cincin. Dalam perjalanannya dari pengirim sampai ke tujuan, data akan melalui beberapa host yang terdapat di antara pengirim dan tujuan.
clip_image004
Keunggulan dari topologi jenis ring ini adalah penggunaan media yang minimal, sehingga tidak akan terjadi collision atau tabrakan pengiriman data, karena hanya satu host dapat mengirimkan data pada suatu waktu.
Sedangkan kelemahan dari topologi ini adalah setiap host dalam jaringan akan selalu ikut serta mengelola informasi yang dilewatkan dalam jaringan, sehingga bila terdapat gangguan di suatu host maka seluruh jaringan akan terganggu. Selain dari itu juga waktu tempuh yang dimiliki oleh data dalam proses pengiriman dari satu host ke host lainnya mempunyai delay yang cukup besar dibanding topologi lainnya. Hal ini terjadi karena data yang ditumpangkan pada token atau pembawa paket data harus melalui host lain dulu dalam perjalanan menuju host tujuan (apabila antara kedua host pengirim dan penerima terdapat host lain).
 

Topologi Star

Pada topologi star setiap host dihubungkan langsung ke konsentrator yang fisiknya dapat berupa hub, switch atau perangkat lain yang dapat menggabungkan koneksi banyak host. Pengiriman paket data pada topologi ini menggunakan metoda akses CSMACD atau CSMA/CA.
clip_image006
Keunggulan yang dimiliki oleh topologi jenis star ini adalah jalur komunikasi dalam kabel akan semakin lebar, karena setiap host mempunyai media sendiri untuk komunikasi ke target komunikasinya melalui konsentrator. Selain dari itu apabila terdapat gangguan pada suatu jalur kabel maka gangguan hanya akan terjadi dalam komunikasi antara workstation yang bersangkutan dengan konsentrator saja.
Kelemahan dari topologi star adalah kebutuhan kabel yang lebih banyak dibandingkan dengan topologi lainnya, serta keharusan menyediakan perangkat tambahan berupa konsentrator (hub/switch).
Saat ini topologi ini merupakan topologi yang banyak digunakan oleh para implementator di lapangan, hal ini dikarenakan kemudahan dalam proses instalasinya, dan kemudahan perbaikan yang harus dilakukan apabila dalam unjuk kerjanya terjadi kerusakan terutama yang terjadi pada perangkat atau media.
 

Topologi Mesh

Setiap komputer terkoneksi dengan semua komputer yang ada dan jaringan yang lengkap
clip_image008
 

Topologi Tree (Pohon)

Pada jaringan pohon, terdapat beberapa tingkatan simpul (node). Pusat atau simpul yang lebih tinggi tingkatannya, dapat mengatur simpul lain yang lebih rendah tingkatannya. Data yang dikirim perlu melalui simpul pusat terlebih dahulu. Misalnya untuk bergerak dari komputer dengan node-3 ke komputer node-7 seperti halnya pada gambar, data yang ada harus melewati node-3, 5 dan node-6 sebelum berakhir pada node-7. Keungguluan jaringan model pohon seperti ini adalah, dapat terbentuknya suatu kelompok yang dibutuhkan pada setiap saat. Sebagai contoh, perusahaan dapat membentuk kelompok yang terdiri atas terminal pembukuan, serta pada kelompok lain dibentuk untuk terminal penjualan. Adapun kelemahannya adalah, apabila simpul yang lebih tinggi kemudian tidak berfungsi, maka kelompok lainnya yang berada dibawahnya akhirnya juga menjadi tidak efektif. Cara kerja jaringan pohon ini relatif menjadi lambat.
clip_image010

Koneksi Secara Logis

o Biasa disebut sebagai Topologi Logik Jaringan
o Berupa aturan supaya perangkat jaringan bisa saling berkomunikasi.
o ada beberapa jenis topologi logik yang dikenal saat ini yaitu :
Aturan bagaimana data di transmisikan lewat media, ada beberapa macam yang dipakai :
  • Ethernet > Yang paling umum dipakai
  • FDDI
  • Token Ring
  • ATM
Aturan bagaimana komputer saling bertukar data/informasi
  • TCP/IP > Yang paling umum dipakai
  • IPX/SPX
 

Ethernet

Pada dasarnya ethernet adalah suatu aturan bagaimana caranya dua atau lebih komputer menggunakan satu media untuk saling bertukar informasi. Aturan ini akan diakomodasi oleh TCP/IP dalam hal pengiriman data melalui media yang ada
 

Bagaimana Komputer Bisa Saling Berhubungan ?

Pada awal 1980-an International Organization for Standardization (ISO), suatu badan dunia yang mengatur standarisasi-standarisasi mengeluarkan sebuah konsep Open System Interconnection (OSI) yang secara konseptual menjelaskan bagaimana proses komunikasi data yang terjadi dalam jaringan komputer.
Model OSI membagi kompleksitas komunikasi data dari asal(source) ke tujuan (destination) dengan melalui lapisan-lapisan (layer), dimana setiap lapisan secara jelas mempunyai fungsi dan hubungan yang saling terkait. Model OSI ini terdiri dari 7 layer. Sedangkan untuk model riil bagaimana kedua komputer saling berhubungan maka digunakan konsep TCP/IP yang dikeluarkan oleh Department of Defense (DoD) yang membagi layer komunikasi menjadi 4 layer.
 

Model OSI dan TCP/IP

• Untuk kemudahan pembelajaran kita menggunakan Model OSI
• Untuk implementasi menggunakan TCP/IP
• Berbentuk layering
clip_image012




Troubleshooting Data Link Layer

o arp
• Untuk melihat alamat NIC dari komputer yang terkoneksi secara langsung dengan kita.
o ifconfig
• Command yang dipakai untuk melihat interface dan alamat yang diberikan ke interface tersebut
o route
• Memeriksa tabel routing, menambah dan menghapus tabel routing
o ping
• Memeriksa koneksi dengan protokol ICMP
o traceroute
• Memeriksa tahapan koneksi
o mtr
• Command gabungan ping dan traceroute
o netconfig
• Command untuk konfigurasi ip secara permanen
o Netstat
• Untuk mengetahui port berapa saja yang terbuka untuk koneksi pada PC
























































Sabtu, 27 April 2013

Program Hitung Keliling Persegi Dengan c++


Program Menghitung Keliling Persegi dengan C++, tutorial program ini saya posting dari blog teman ane dengan sedikit perubahan kata-kata. maaf yaa Neptura karena ada perubahan kata-kata, supaya lebih sesuai dengan blog ane,,hhe.

/*Menghitung Keliling Persegi*/
#include <iostream.h>
#include <conio.h>
    void main()
           {    
              float k,s;      
              cout<<"===================================\n";      
              cout<<"MENGHITUNG KELILING PERSEGI \n";          
              cout<<"===================================\n\n";

              cout<<"Masukan Panjang Sisi Persegi = ";cin>>s;
                                
                                     k=4*s; 

              cout<<"\nKeliling Persegi Adalah :\n";
              cout<<"K = 4 x S \n";
              cout<<"K = 4 x "<<s<<endl;
              cout<<”K = “<<;
              getch();
             }


outputnya
keliling persegi panjang
sumber :: http://neptura.blogspot.com

Jenis-jenis Media Transmisi pada Jaringan

 
clip_image002Media transmisi adalah media yang dapat digunakan untuk mengirimkan informasi dari suatu tempat ke tempat lain. Dalam jaringan, semua media yang dapat menyalurkan gelombang listrik atau elektromagnetik atau cahaya dapat dipakai sebagai media pengirim, baik untuk pengiriman dan penerimaan data. Pilihan media transmisi (pengirim) untuk keperluan komunikasi data tergantung pada beberapa faktor, seperti harga, performance jaringan yang dikehendaki, ada atau tidaknya medium tersebut.
A. Copper Media
Copper media merupakan semua media transmisi data yang terbuat dari bahan tembaga. Orang biasanya menyebut dengan nama kabel. Data yang dikirim melalui kabel,
bentuknya adalah sinyal-sinyal listrik (tegangan atau arus) digital.
Jenis-jenis kabel yang dipakai sebagai transmisi data pada jaringan :
1. Coaxial Cable
Kabel ini sering digunakan sebagai kabel antena TV. Disebut juga sebagai kabel BNC (Bayonet Naur Connector). Kabel ini merupakan kabel yang paling banyak digunakan pada LAN, karena memiliki perlindungan terhadap derau yang lebih tinggi, murah, dan mampu mengirimkan data dengan kecepatan standar.
Ada 4 jenis kabel coaxial, yaitu :
· Thinnet atau RG-58 (10Base2)
clip_image004
· Thicknet atau RG-8 (10Base5).
clip_image005
· RG-59
clip_image007
· RG-6
clip_image008
Ada 3 jenis konektor pada kabel Coaxial, yaitu T konektor, I konektor (socket) dan BNC konektor. Keuntungan menggunakan kabel koaksial adalah lebih murah dari pada kabel fiber optic dan jarak jangkauannya cukup jauh dari kabel jenis UTP/STP yang menggunakan repeater sebagai penguatnya. Kekurangannya adalah susah pada saat instalasi, baik installasi konektor maupun kabel. Untuk saat ini kabel koaksial sudah tidak direkomendasikan lagi intuk instalasi jaringan.
2. Twisted-Pair cable
Twisted Pair terdiri dari 2 jenis :
clip_image009
Kabel STP (Shielded Twisted Pair)
Keuntungan menggunakan kabel STP adalah lebih tahan terhadap interferensi gelombang elektromagnetik baik dari dari dalam maupun dari luar. Kekurangannya adalah mahal, susah pada saat instalasi (terutama masalah grounding), dan jarak jangkauannya hanya 100m .
Kabel UTP (Unshielded Twisted Pair)
Keuntungan menggunakan kabel UTP adalah murah dan mudah diinstalasi. Kekurangannya adalah rentan terhadap interferensi gelombang elektromagnetik, dan jarak jangkauannya hanya 100m.
Ada beberapa kategori untuk kabel Twisted Pair, yaitu :
• Kategori 1 (Cat-1).
Umumnya menggunakan konduktor padat standar AWG sebanyak 22 atau 24 pin dengan range impedansi yang lebar. Digunakan pada koneksi telepon dan tidak direkomendasikan untuk transmisi data.
• Kategori 2 (Cat-2).
Range impedansi yang lebar, sering digunakan pada sistem PBX dan sistem Alarm. Transmisi data ISDN menggunakan kabel kategori 2, dengan bandwidth maksimum 1 MBps.
• Kategori 3 (Cat-3).
Sering disebut kabel voice grade, menggunakan konduktor padat sebanyak 22 atau 24 pin dengan impedansi 100 Ω dan berfungsi hingga 16 MBps. Dapat digunakan untuk jaringan 10BaseT dan Token Ring dengan bandwidth 4 Mbps.
• Kategori 4 (Cat-4).
Seperti kategori 3 dengan bandwidth 20 MBps, diterapkan pada jaringan Token Ring dengan bandwidth 16 Mbps.
• Kategori 5 (Cat-5).
Merupakan kabel Twisted Pair terbaik (data grade) dengan bandwidth 100 Mbps dan jangkauan transmisi maksimum 100 m.
B. Optical Media
Ada tiga jenis kabel fiber optic yang biasanya digunakan, yaitu single mode, multi mode dan plastic optical fiber yang berfungsi sebagai petunjuk cahaya dari ujung kabel ke ujung kabel lainnya. Dari transmitter^ receiver, yang mengubah pulsa elektronik ke cahaya dan sebaliknya, dalam bentuk light-emitting diode ataupun laser. Kabel fiber optic single mode merupakan fiber glass tunggal dengan diameter 8.3 sampai 10 mikrometer, memiliki satu jenis transmisi yang dapat mengantarkan data berkapasitas besar dengan kecepatan tinggi untuk jarak jauh, dan membutuhkan sumber cahaya dengan lebar spektrum yang lebih kecil.
clip_image010Kemampuan kabel jenis single mode dalam mengantarkan transmisi adalah 50 kali lebih cepat dari kabel jenis multimode, karena memiliki core yang lebih kecil sehingga dapat menghilangkan setiap distorsi dan pulsa cahaya yang tumpang tindih.
clip_image011 Kabel fiber optic multimode terbuat dari fiberglass dengan diameter lebih besar, yaitu 50 sampai dengan 100 mikrometer yang dapat mengantarkan data berkapasitas besar dengan kecepatan tinggi untuk jarak menengah. Apabila jarak yang ditempuh lebih dari 3000 kaki, akan terjadi distorsi sinyal pada sisi penerima yang mengakibatkan transmisi data menjadi tidak akurat. Sedang plastic optical’fiber adalah kabel berbasis plastik terbaru yang menjamin tingkat performa yang sama dengan fiber glass dalam jarak pendek dengan biaya yang jauh lebih murah. Saat ini, fiber optic telah digunakan sebagai standar kabel data dalam biding physical layer telekomunikasi atau jaringan, seperti perangkat TV kabel, juga sistem keamanan yang menggunakan Closed Circuit Television (CCTV), dan lain sebagainya Bahan dasar dari optical media adalah kaca dengan ukuran yang sangat kecil (skala mikron).Biasanya dikenal dengan nama fibre optic (serat optic). Data yang dilewatkan pada medium ini dalam bentuk cahaya (laser atau inframerah).
Satu buah kabel fibre optic terdiri atas dua fiber, satu berfungsi untuk Transmit (Tx) dan satunya untuk Receive (Rx) sehingga komunikasi dengan fibre optic bisa terjadi dua arah secara bersama-sama (full duplex).
C. Wireless Network
Saat ini sudah banyak digunakan jaringan tanpa kabel (wireless network), transmisi data menggunakan sinar infra merah atau gelombang mikro untuk menghantarkan data. Walaupun kedengarannya praktis, namun kendala yang dihadapi disini adalah masalah jarak, bandwidth, dan mahalnya biaya. Namun demikian untuk kebutuhan LAN di dalam gedung, saat ini sudah dikembangkan teknologi wireless untuk Active Hub (Wireless Access Point) dan Wireless LAN Card (pengganti NIC), sehingga bisa mengurangi semrawutnya kabel transmisi data pada jaringan komputer. Wireless Access Point juga bisa digabungkan (up-link) dengan ActiveHub dari jaringan yang sudah ada.
clip_image012 clip_image013
Media transmisi wireless menggunakan gelombang radio frekuensi tinggi. Biasanya gelombang elektromagnetik dengan frekuensi 2.4 Ghz dan 5 Ghz. Data-data digital yang dikirim melalui wireless ini akan dimodulasikan ke dalam gelombang elektromagnetik ini.

































Kamis, 25 April 2013

Cara buat hardsub

 
Pada kesempatan kali ini saya akan membagikan tutorial bagaimana cara membuat hardsub. Tanpa basa-basi lagi nih tutorialnya buatan saya sendiri dengan settingan sendiri,,,hhe.
  • Pertama buka software MEGUI
clip_image002

  • Kemudian pilih Tools > File Indexer (ctrl+F2)
clip_image004
  • Lalu inputkan file > pilih video > pilih buka > queue
clip_image006
  • Pilih queue
clip_image007
  • Pilih start
clip_image009
  • Kemudian filter > cari subtitlenya > open > save
clip_image011
  • Kembali ke input, pada video pilih encoder settings, pilih x264:”scratchpad” . lalu file formatnya pilih MKV.
  • Pada audio di encoder settings pilih Nero AAC:NDAAC-HEPS-32Kbps , dengan extension MP4-AAC .
    :: bagi yang belum punya Nero AAC bisa download disini.
    #Copy file NeroAAC (neroAacTag,exe, neroAacDec,exe, dan neroAacEnc.exe) ke direktori   MeGUI\tools\neroaac\neroAacEnc.exe

    #cara memilih NeroAAC ::
    -saat membuka Megui , pilih options >> settings

    # kemudian pilih External Program Configuration >> centang Enable NeroAacEnc >> cari dimana file neroAacEnc.exe yg sobat simpan >> kemudian open /ok >> lalu pilih save

    # tutup kemudian buka lagi software Megui sobat.

  • Lalu pilih AutoEncode.
clip_image013
  • Kemdian ikuti seperti gambar dibawah ini
clip_image015
  • Langkah terakhir pilih Queue
clip_image017
  • Tunggu prosesnya sampai selesai .

Rabu, 17 April 2013

Dasar Pemrograman c++


Pengenalan C++
Bahasa pemrograman C++ bisa disebut sebagai bahasa pemrograman tingkat menengah ( middle level programming language) yang berarti juga termasuk dalam bahasa tingkat tinggi (high level programming language).
Struktur C++
# include
main()
{
Instruksi-instruksi
}
Keterangan :
a. # include sebagai proses compiler dari c++ menjalankan program yang dinamakan preprosesor yang memiliki kemampuan menambahkan dan menghapus kode dari file sumber. Include berarti menyertakan kode dari file header yang ada didalam kurung, file header adalah file yang berisi deklarasi untuk berbagai fungsi yang dibutuhkan oleh program.
b. main()
Untuk mendeklarasi fungsi utama, bahwa suatu program c++ dapat berisi banyak fungsi, tetapi harus selalu memiliki sebuah fungsi utama ( main function). Fungsi adalah modul yang berisi kode-kode untuk menyelesaikan masalah-masalah tertentu.
c. {
Menandakan awal program.
d. Instruksi
Berisi perintah-perintah yang akan dilakukan program.
e. }
Menandakan akhir program.
Pendeklarasian tipe data variable.
Tipe data Fungsi atau kegunaan Jangkauan Contoh
Int Dapat menampung nilai positif atau nilai negative. -32768 sampai 32767 125
Float Dapat menampung semua nilai bilangan real, mewakili semua bilangan,dan bilangan dengan pecahan decimal. -1038 sampai +1038 56.12
Char Mewakili suatu karakter tunggal, sebuah huruf, 1 digit, atau tanda baca. 1 byte ‘A’
Deklarasi & Variabel
Bentuk penulisan
Tipe_data nama_variabel;
Contoh Deklarasi Variabel
char nama_mahasiswa;
char grade;
float rata_rata ;
int nilai;
Perintah Keluaran
Perintah standar output yang disediakan oleh Borland C++, diantaranya adalah :
• printf()
• puts()
• putchar()
• cout()
printf()
Fungsi printf() merupakan fungsi keluaran yang paling umum digunakan untuk menampilkan informasi kelayar.
contoh1:
#include
#include
#include
main()
{
int a=7;
char b=’G';
clrscr();
printf(“%c Merupakan Abjad Yang Ke – %d”, b, a);
getch();
}puts()
Perintah puts() sebenarnya sama dengan printf(), yaitu digunakan untuk mencetak string ke layar. puts() berasal dari kata PUT STRING.
Perbedaan antara printf() dengan puts() adalah :
Contoh2:
#include
#include
#include
main()
{
char a[4]=”BSI”;
clrscr();
puts(“Saya Kuliah di. “); {put berfungsi untuk mencetak sekaligus mencipakan baris baru}
puts(a);
getch();
}
putchar()
Perintah putchar() digunakan untuk menampilkan sebuah karakter ke layar. Penampilan karakter tidak diakhiri dengan pindah baris.

Contoh3:
#include
#include
main()
{
clrscr();
putchar(‘B’);
putchar(‘S’);
putchar(‘I’);
getch();
}
cout()
Penjelasan Fungsi cout() merupakan sebuah objeck didalam C++ digunakan untuk menampilkan suatu data kelayar. Untuk menggunakan fungsi cout() ini, harus menyertakan file header iostream.h .
Contoh4:
#include
#include
#include
main()
{
float a, b, c;
a=7.5; b=8.4; c=0;
clrscr();
cout<<"Masukan Nilai A : "<<a;
cout<<"Masukan Nilai B : "<<b<<endl;
c = a + b;
cout<<"Masukan Nilai C : "<<c;
getch();
}
Perintah Masukan
Perintah standar input yang disediakan oleh Borland C++, diantaranya adalah :
• scanf()
• gets()
• cin()
• getch()
• getche()
scanf()
Fungsi scanf() digunakan untuk memasukkan berbagai jenis data.
Bentuk Umum dari fungsi ini adalah :
scanf("penentu format", &nama-variabel); format sama dengan format printf()
contoh5:
# include
# include
main()
{
int a, b, c = 0 ;
clrscr();
printf(“Masukan Nilai A = “); scanf(“%d”,&a);
printf(“Masukan Nilai B = “); scanf(“%d”,&b);
c = a + b;
printf(“Hasil Penjumlahan = %d”,c);
getch();
}
gets()
Fungsi gets() digunakan untuk memasukkan data string.
Bentuk Umum dari fungsi ini adalah :
gets(nama-variabel-array);
Perbedaan scanf dan gets
Contoh6:
# include
# include
main()
{
char nm1[20];
char nm2[20];
clrscr();
puts(“Masukan nama ke – 1 = “);
gets(nm1);
printf(“Masukan nama ke – 2 = “);
scanf(“%s”,&nm2);
printf(“\n\n”);
puts(“Senang Berkenalan Dengan Anda ..”);
puts(nm1);
printf(“Senang Berkenalan Dengan Anda ..%s”, nm1);
puts(“Senang Berkenalan Dengan Anda ..”);
puts(nm1);
printf(“\n\n”);
puts(“Senang Berkenalan Dengan Anda ..”);
puts(nm2);
printf(“Senang Berkenalan Dengan Anda ..%s”, nm2);
getch();
}
cin() Fungsi cin() merupakan sebuah objeck didalam C++ digunakan untuk memasukkan suatu data. Untuk menggunakan fungsi cin() ini, harus menyertakan file header iostream.h .
contoh7:
# include
# include
# include
main()
{
float a, b, c;
clrscr();
cout<>a;
cout<>b;
c = a + b;
cout<<"Nilai C : "<<c<<endl;
getch();
}
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.
Contoh8:
# include
# include
main()
{
char kar;
clrscr();
printf(“Masukan Sebuah Karakter Bebas = “);
kar = getch();
printf(“\nTadi Anda Memasukan karakter %c”, kar);
getch();
}
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.
Contoh9:
# include
# include
main()
{
char kar;
clrscr();
printf(“Masukan Sebuah Karakter Bebas = “);
kar = getche();
printf(“\nTadi Anda Memasukan karakter %c”, kar);
getch ();
}
Catatan : Getch() dan getche() penulisan sama
Operator Aritmatik
Operator Keterangan
+ pertambahan
* perkalian
% Sisa pembagian
- Pengurangan
/ Pembagian
Contoh1:
#include
#include
#include
main()
{
int a, b, c = 0, d = 0;
clrscr();
cout<>a;
cout<>b;
c = a % b;
d = a * b;
cout<<" Hasil dari C = A % B = "<<c<<endl;
cout<<" Hasil dari D = A * B = "<<d<<endl;
getch();
}
Operator Penambahan dan Pengurangan
A = A + 1 atau A = A – 1;
disederhanakan menjadi :
A += 1 atau A -= 1;
masih dapat disederhanakan menjadi A ++ atau A–
Notasi “ ++ “ atau “ — “ dapat diletakan didepan atau di belakang variabel.
Contoh A ++ atau ++A / A– atau –A
Kedua bentuk penulisan notasi ini mempunyai arti yang berbeda
• Jika diletakan didepan variabel, 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
• Jika diletakan dibelakang variabel, maka proses penambahan atau pengurangan akan dilakukan setelah ekspresi ini dijumpai atau nilai variabel akan tetap pada saat ekspresi ini ditemukan.
Contoh2:
/* Penggunaan Notasi Didepan Variabel*/
#include
#include
main()
{
int a = 10, b = 5;
clrscr();
printf(“Nilai A = %d”, a);
printf(“\nNilai ++A = %d”, ++a);
printf(“\nNilai A = %d”, a);
printf(“\nNilai B = %d”, b);
printf(“\nNilai –B = %d”, –b);
printf(“\nNilai B = %d”, b);
getch();
}
Contoh3:
/* Penggunaan Notasi Dibelakang Variabel*/
#include
#include
main()
{
int a = 10, b = 5;
clrscr();
printf(“Nilai A = %d”, a);
printf(“\nNilai A++ = %d”, a++);
printf(“\nNilai A = %d”, a);
printf(“\nNilai B = %d”, b);
printf(“\nNilai B– = %d”, b–);
printf(“\nNilai B = %d”, b);
getch();
}
Operator Relasi
Operator Keterangan
== Sama dengan (bukan pemberi nilai
!= Tidak sama dengan
> Lebih dari
= Lebih dari sama dengan
<= Kurang dari sama dengan
Contoh4:
#include
#include
#include
main()
{
float a, b, c, d, e, f, x, y;
clrscr();
cout<>x;
cout<>y;
a = x == y;
b = x != y;
c = x > y;
d = x = y;
f = x <= y;
cout<<endl;
cout<<"Hasil dari "<<x<<" == "<<y<<" = "<<a<<endl;
cout<<"Hasil dari "<<x<<" != "<<y<<" = "<<b<<endl;
cout<<"Hasil dari "<<x< “<<y<<" = "<<c<<endl;
cout<<"Hasil dari "<<x<<" < "<<y<<" = "<<d<<endl;
cout<<"Hasil dari "<<x<= “<<y<<" = "<<e<<endl;
cout<<"Hasil dari "<<x<<" <= "<<y<<" = "<<f<<endl;
getch();
}
Operator Logika
Operator Relasi digunakan untuk menghubungkan dua buah operasi relasi menjadi sebuah ungkapan kondisi. Hasil dari operator logika ini menghasilkan nilai numerik 1 (True) atau 0 (False).
Operator Keterangan
&& Operator Logika AND
|| Operator Logika OR
! Operator Logika NOT
Operator And
digunakan untuk menghubungkan dua atau lebih ekspresi relasi, akan dianggap BENAR, bila semua ekspresi relasi yang dihubungkan bernilai BENAR.
Contoh :
A + 4 A + 5àEkspresi Relasi-1
C – 3àEkspresi Relasi-3 >= 4
Contoh5:
/* Penggunaan Operasi Logika AND */
#include
#include
#include
main()
{
float a, b, c, d, e, f, g, h;
clrscr();
cout<>a;
cout<>b;
cout<>c;
// Proses
d = a + 4 a + 5;
f = c – 3 >= 4;
g = d && e && f;
cout<<endl<<endl;
cout<<"Program Ekspresi AND"<<endl<<endl;
cout<<"Hasil dari d = a + 4 < 10 adalah " <<d<<endl;
cout< a + 5 adalah ” <<e<<endl;
cout<= 4 adalah ” <<f;
cout<<endl<<endl;
cout<<"Hasil dari g = d && e && f adalah " <<g;
cout<<endl;
getch();
}
Operator OR
digunakan untuk menghubungkan dua atau lebih ekspresi relasi, akan dianggap BENAR, bila salah satu ekspresi relasi yang dihubungkan bernilai BENAR.
Contoh :
A + 4 A + 5àEkspresi Relasi-1
C – 3àEkspresi Relasi-3 > 4
Contoh6:
/* Penggunaan Operasi Logika OR */
#include
#include
#include
main()
{
float a, b, c, d, e, f, g, h;
clrscr();
cout<>a;
cout<>b;
cout<>c;
d = a + 5 > 10;
e = b > 5 + a ;
f = c – 4 <= 7;
g = d || e || f;
cout<<endl<<endl;
cout<<"Program Ekspresi OR"<<endl<<endl;
cout< 10 adalah ” <<d<<endl;
cout< 5 + a adalah ” <<e<<endl;
cout<<"Hasil dari f = c – 4 <= 7 adalah " <<f;
cout<<endl<<endl;
cout<<"Hasil dari g = d || e || f adalah " <<g;
cout<<endl;
getch();
}
Operator 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.
Contoh:
A + 4àEkspresi Relasi < 10
Contoh7:
/* Penggunaan Operasi Logika NOT */
#include
#include
#include
main()
{
int a, b, c;
clrscr();
cout<>a;
/* Proses */
b = (a + 4 < 10);
c = !(b);
cout<<endl<<"Program Ekspresi NOT "<<endl;
cout<<"Nilai A = "<<a<<endl;
cout<<"Nilai b = (a + 4 < 10) = "<<b<<endl;
cout<<"Nilai c = !(b) = "<<c;
getch();
}
Operasi Penyeleksian Kondisi
Pernyataan Percabangan digunakan untuk memecahkan persoalan untuk mengambil suatu keputusan diantara sekian pernyataan yang ada.
Pernyataan IF
if (kondisi)
{
Pernyataan;
……
}
Contoh1:
#include
#include
#include
main()
{
double tot_beli, potongan=0, jum_bayar=0;
clrscr();
cout<>tot_beli;
if (tot_beli >= 50000)
potongan = 0.2 * tot_beli;
cout<<"Besarnya Potongan Rp. "<<potongan<<endl;
jum_bayar = tot_beli – potongan;
cout<<"Jumlah yang harus dibayarkan Rp. "<<jum_bayar;
getch();
}
Pernyataan If Else
if (kondisi-1)
{
perintah-1;
….
}
else
{
perintah-2;
….
}
Contoh2:
#include
#include
#include
main()
{
double tot_beli, potongan=0, jum_bayar=0;
clrscr();
cout<>tot_beli;
if (tot_beli >= 50000)
potongan = 0.2 * tot_beli;
else
potongan = 0.05 * tot_beli;
cout<<"Besarnya Potongan Rp. "<<potongan<<endl;
jum_bayar = tot_beli – potongan;
cout<<"Jumlah yang harus dibayarkan Rp. "<<jum_bayar;
getch();
}
Pernyataan Nested If
if(syarat)
if(syarat)
… perintah;
else
… perintah;
else
if(syarat)
… perintah;
else
… perintah;
Contoh3:
#include
#include
#include
main()
{
char kd;
char ukr,merk[20];
long int hrg,byr,ppn,ttl,u_byr,u_kembali,byk;
clrscr();
cout<<"***Toko Kelontong Keroncongan***"<<endl;
cout<<"============================================="<<endl;
cout<<"A. Susu Dancow "<<endl;
cout<<" 1. Ukuran Kecil "<<endl;
cout<<" 2. Ukuran Sedang "<<endl;
cout<<" 3. Ukuran Besar "<<endl;
cout<<"B. Susu Bendera "<<endl;
cout<<" 1. Ukuran Kecil "<<endl;
cout<<" 2. Ukuran Sedang "<<endl;
cout<<" 3. Ukuran Besar "<<endl;
cout<<"C. Susu SGM "<<endl;
cout<<" 1. Ukuran Kecil "<<endl;
cout<<" 2. Ukuran Sedang "<<endl;
cout<<" 3. Ukuran Besar "<<endl;
cout<>kd;
cout<>ukr;
cout<>byk;
if(kd==’A'||kd==’a')
{strcpy(merk,”Dancow”);
if(ukr==’1′)hrg=15000;
else if(ukr==’2′)hrg=26000;
else hrg=45000;}
else if(kd==’B'||kd==’b')
{strcpy(merk,”Bendera”);
if(ukr==’1′)hrg=12000;
else if(ukr==’2′)hrg=22000;
else hrg=40000;}
else
{strcpy(merk,”SGM”);
if (ukr==’1′)hrg=20000;
else if(ukr==’2′)hrg=38000;
else hrg=70000;}
cout<<"Merk Susu :"<<merk<<endl;
cout<<"Harga :"<<hrg<<endl;
byr=hrg*byk;
cout<<"Pembayaran :"<<byr<<endl;
ppn=0.1*byr;
ttl=byr+ppn;
cout<<"PPN :"<<ppn<<endl;
cout<<"Total Bayar :"<<ttl<<endl;
cout<>u_byr;
u_kembali=u_byr-ttl;
cout<<"Uang Kembali :"<<u_kembali<<endl;
cout<<"Terima Kasih Anda Telah Ke Counter Kami"<<endl;
getch();
}
Pernyataan If – Else Majemuk
if (syarat)
{
… perintah;
… perintah;
}
else if (syarat)
{
… perintah;
… perintah;
}
else
{
… perintah;
… perintah;
}
Contoh4:
#include
#include
#include
main()
{
char nm_pes[20],nm[20],kode,tujuan[30];
int jml;
long int harga,ttl;
clrscr();
cout<<"PT TRAVELLING INDONESIA"<<endl;
cout<>nm;
cout<>kode;
cout<>jml;
if(kode==’1′)
{strcpy(tujuan,”Jakarta – Medan”);
strcpy(nm_pes,”Garuda Airlines”);
harga=400000;}
else if(kode==’2′)
{strcpy(tujuan,”Jakarta – Lampung”);
strcpy(nm_pes,”Asia Airlines”);
harga=200000;}
else
{strcpy(tujuan,”Jakarta – Palembang”);
strcpy(nm_pes,”Sriwijaya Airlines”);
harga=300000;}
ttl=jml*harga;
cout<<"Penumpang Yang Bernama :"<<nm<<endl;
cout<<"Nama Pesawat :"<<nm_pes<<endl;
cout<<"Tujuan :"<<tujuan<<endl;
cout<<"Harga Tiket :"<<harga<<endl;
cout<<"Total Bayar :"<<ttl<= 85, maka mendapat hadiah Seperangkat Komputer P4
- Jika Nilai Rata-Rata >= 70, maka mendapat hadiah Uang sebesar Rp. 500,000
- Jika Nilai Rata-Rata < 70, maka mendapat hadiah Hiburan
• Tampilan yang diinginkan sebagai berikut :
Layar Masukkan
PROGRAM HITUNG NILAI RATA-RATA
Nama Siswa : …
Nilai Pertandingan I : …
Nilai Pertandingan II : …
Nilai Pertandingan III : …
Layar Keluaran
Siswa yang bernama …
Memperoleh nilai rata-rata
dari hasil perlombaan yang diikutinya.
Hadiah yang didapat adalah ..
Pernyataan switch – case
switch (ekspresi integer atau karakter )
{
case konstanta-1 :
… perintah;
… perintah;
break;
case konstanta-2 :
… perintah;
… perintah;
break;
default :
… perintah;
… perintah;
}
Setiap cabang akan dijalankan jika syarat nilai konstanta tersebut dipenuhi dan default akan dijalankan jika semua cabang diatasnya tidak terpenuhi. Pernyataan break menunjukan bahwa perintah siap keluar dari switch. Jika pernyataan ini tidak ada, maka program akan diteruskan kecabang – cabang yang lainnya.
Contoh1:
#include
#include
#include
main()
{
char kode;
clrscr();
cout<>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();
}
Contoh2:
#include
#include
#include
main()
{
char nama[30],kd,bonus[20],jwb;
int jml;
long int hrg,ppn,total,pot;
atas:
clrscr();
cout<<"TOKO BUKU SEJAHTERA"<<endl;
cout<<"Jl.Keadilan No.16"<<endl;
cout<<"Telp.7236573-7236574"<<endl;
cout<<"======================================="<<endl;
cout<>kd;
switch(kd)
{
case ‘A’:
case ‘a’:
{strcpy(nama,”Laskar Pelangi”);
hrg=50000;}
break;
case ‘B’:
case ‘b’:
{strcpy(nama,”Jangan Tinggalkan Aku”);
hrg=35000;}
break;
case ‘C’:
case ‘c’:
{strcpy(nama,”Mencari Mutiara di Dasar Hati”);
hrg=45000;}
break;
default:
cout<<"Anda Salah Memasukan Kode";
break;
}
cout<<"Nama Buku Yang Anda Beli :"<<nama<<endl;
cout<<"Harga Buku Yang Anda Beli :"<<hrg<<endl;
cout<>jml;
if (jml>=3)
{pot=0.1*hrg*jml;
strcpy(bonus,”Buku Saku”);}
else
{pot=0;
strcpy(bonus,”Maaf Anda Tidak Dapat Bonus”);}
cout<<"Anda Dapat Potongan : "<<pot<<endl;
cout<<"Bonus Yang Anda Peroleh : "<<bonus<<endl;
total=jml*hrg;
ppn=0.02*jml*hrg;
cout<<"Total Bayar Buku Yang Dibeli : "<<total<= 80 mendapat Grade A
• Nilai Akhir >= 70 mendapat Grade B
• Nilai Akhir >= 59 mendapat Grade C
• Nilai Akhir >= 50 mendapat Grade D
• Nilai Akhir < 50 mendapat Grade E
• Tampilan yang diinginkan sebagai berikut :
Layar Masukkan
PROGRAM HITUNG NILAI AKHIR
Nama Siswa : ……
Nilai Keaktifan : ……
Nilai Tugas : ……
Nilai Ujian : ……
Layar Keluaran
Siswa yang bernama
Dengan Nilai Persentasi Yang dihasilkan.
Nilai Keaktifan * 20% : …
Nilai Tugas * 30% : …
Nilai Ujian * 50% : …
Jadi Siswa yang bernama
memperoleh nilai akhir sebesar …
Grade nilai yang didapat adalah …
Latihan IF dan Switch case:
PT. DINGIN DAMAI, memberikan Honor tetap kepada karyawan kontraknya sebesar Rp. 300,000,- per bulan, dengan memperoleh tujangan-tunjangan sebagai berikut :
• Tunjangan Jabatan
Golongan Persentase
1 5%
2 10%
3 15%
Sebagai contoh : Jika seorang keryawan tersebut dengan golongan 3, maka mendapatkan tunjangan sebesasr 15% * Rp. 300,000,-
• Tunjangan Pendidikan
Kode Pendidikan Persentase
1 SMU 2,5%
2 D3 5%
3 S1 7,5%
• Honor Lembur
Jumlah jam kerja normal sebanyak 8 Jam Kerja. Honor lembur diberikan jika jumlah jam kerja sebih dari 8 jam, maka kelebihkan jam kerja tersebut dikalikan dengan honor lembur perjam sebesar Rp. 2,500 untuk setiap kelebihan jam kerja perharinya.
• Tampilan yang diinginkan sebagai berikut :
Layar Masukkan
Program Hitung Honor Karyawan Kontrak
PT. DINGIN DAMAI
Nama Karyawan : …
Golongan : …
Pendidikan (SMU/D3/S1) : …
Jumlah Jam Kerja : …
Layar Keluaran
Karyawan yang bernama : …
Honor yang diterima
Honor Tetap Rp. ….
Tunjangan jabatan Rp. ….
Tunjangan Pendidikan Rp. ….
Honor Lembur Rp. ….
———————————————— +
Honor Yang Diterima Rp. ….
Proses Perulangan
Perulangan 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;
}
Keterangan:
* inisialisasi : nilai awal pada variabel
* syarat pengulangan : hal yang menentukan apakah suatu perulangan diteruskan atau dihentikan.
* pengubah nilai pencacah : pengatur nilai kenaikan atau penurunan nilai pencacah.
Contoh1:
/* ————————— */
/* Program for – bilangan naik */
/* ————————— */
#include
#include
#include
main()
{
int a;
clrscr();
for(a = 1; a <= 10; ++a)
cout<<a;
getch();
}
Contoh2:
/* ——————————*/
/* Program Menampilkan Warna – 1 */
/* ——————————*/
#include
#include
main()
{
int a=2, b=1, c=2, d=1, e;
clrscr();
for(e=1; 17>e; e++)
{
gotoxy(e, e); textcolor(e);
cprintf(“\nwarna ke-%d”,e);
}
getche();
}
Keterangan:
cprintf() = Menampilkan data dengan format pewarnaan teks dan pewarnaan latar belakang.
Perulangan 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;
}
}
Contoh3:
/* ————————- */
/* Program for – Nested for */
/* ————————- */
#include
#include
#include
main()
{
int a, b;
clrscr();
for(a = 1; a <= 5; a++)
{
printf("\n");
for(b = a; b <= 5; b++)
cout<<a<<" ";
}
getch();
}
Pernyataan Goto
Pernyataan goto merupakan instruksi untuk mengarahkan eksekusi program ke-pernyataan yang diawali dengan suatu label. Label merupakan suatu pengenal (identifier) yang diikuti dengan tanda titik dua ( : ). Bentuk pemakaian goto sebagai berikut :
goto label;
contoh4:
/* —————————— */
/* Program dengan pernyataan goto */
/* —————————— */
#include
#include
#include
main()
{
int a, b;
char lagi;
atas:
clrscr();
cout<>a;
b = a % 2;
printf(“Nilai %d %% 2 adalah = %d”,a, b);
printf(“\n\nIngin Hitung Lagi [Y/T] : “);
lagi = getche() ;
if (lagi == ‘Y’ || lagi == ‘y’)
goto atas;
getch();
}
Pernyataan While
Pernyataan perulangan while merupakan instruksi perulangan yang mirip dengan perulangan for. Bentuk perulangan while dikendalikan oleh syarat tertentu, yaitu perulangan akan terus dilaksanakan selama syarat tersebut terpenuhi.
Bentuk umum perulangan while, sebagai berikut :
while ( syarat )
Pernyataan / perintah ;
Contoh5:
/* Program while01.cpp */
/* ——————- */
#include
#include
#include
main()
{
int bil=1;
clrscr();
while(bil<=10)
{
cout<<bil<<" ";
++bil;
}
getch();
}
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 );
contoh6:
/* Program do – while */
/* —————— */
#include
#include
#include
main()
{
int bil=2;
clrscr();
do
{
cout<<bil<<" "; bil+=2;
}
while(bil<=10);
getch();
}
Latihan:
1. Buatlah program untuk menghitung 10 deret bilangan genap dengan hasilnya :
2 + 4 + 6 + 8 + 10 + 12 + 14 + 16 + 18 + 20 = 110
2. Buatlah program untuk menghitung 10 deret bilangan ganjil dengan hasilnya :
1 + 3 + 5 + 7 + 9 + 11 + 13 + 15 + 17 + 19 = 100
Operasi String
Fungsi strcat()
Fungsi ini digunakan untuk menambahkan string sumber kebagian akhir dari string tujuan.
File header yang harus disertakan adalah : string.h dan ctype.h
Bentuk Penulisan :
strcat(tujuan, sumber);
contoh1:
#include
#include
#include
#include
#include
main()
{
char a1[20];
char a2[20];
clrscr();
cout<>a1;
cout<>a2;
strcat(a1, a2);
cout<<"Hasil Penggabungannya "<<a1;
getch();
}
Fungsi strlen()
Fungsi ini digunakan untuk memperoleh banyaknya karakter dalam string. File header yang harus disertakan adalah : string.h
Bentuk Penulisan :
strlen(str);
Contoh2:
#include
#include
#include
#include
main()
{
char huruf[20];
char pindah[20];
clrscr();
cout<<"Masukkan Sembarang Kata = ";
gets(huruf);
cout<<"Panjang Kata Yang Diinputkan = ";
cout<<strlen(huruf);
getch();
}
Fungsi strrev()
Penjelasan Fungsi ini digunakan untuk membalik letak urutan pada string. String urutan paling akhir dipindahkan keurutan paling depan dan seterusnya. File header yang harus disertakan adalah : string.h
Bentuk Penulisan :
strrev(str);
contoh3:
#include
#include
#include
#include
main()
{
char kata[20];
clrscr();
cout<<"Masukan Sembarang Kata = ";
gets(kata);
strrev(kata);
cout<<"Hasil Perubahan = "<<kata;
getch();
}
Fungsi Strlwr()
Fungsi ini digunakan untuk mengubah setiap huruf kapital (huruf besar ) dalam string menjadi huruf kecil.
File header yang harus disertakan adalah : string.h
Bentuk Penulisan :
strlwr(str);
contoh4:
#include
#include
#include
#include
main()
{
char kata[20];
clrscr();
cout<<"Masukan Sembarang Kata dengan Huruf Besar ="; gets(kata); strlwr(kata);
cout<<"Hasil Perubahan = "<<kata;
getch();
}
Fungsi strupr()
Fungsi ini digunakan untuk mengubah setiap huruf kecil dalam string menjadi huruf kapital ( huruf besar ).
File header yang harus disertakan adalah : string.h
Bentuk Penulisan :
strupr(str);
contoh5:
#include
#include
#include
#include
main()
{
char kata[20];
clrscr();
cout<<"Masukan Sembarang Kata dengan Huruf Kecil=";
gets(kata);
strupr(kata);
cout<<"Hasil Perubahan = "<<kata;
getch();
}
Latihan 1:
#include
#include
#include
#include
garis()
{cout<<"____________________________________________________"<<endl;}
float harga(float a);
main()
{
int i;
char lagi;
struct
{
char nama[5][20];
char najur[5][10];
int jubel[5],kode[5],tot[5];
}travel[5];
atas:
clrscr();
cout<<"\tTRAVEL SILIWANGI"<<endl;
garis();
for (i=1;i<3;i++)
{
cout<<"Data Ke- "<<i;
cout<<"\nMasukan Nama : ";gets(travel[i].nama[i]);
cout<>travel[i].kode[i];
cout<>travel[i].jubel[i];
}
for (i=1;i<3;i++)
{
if (travel[i].kode[i]==1)
strcpy (travel[i].najur[i],"JKT – SBY");
else if (travel[i].kode[i]==2)
strcpy(travel[i].najur[i],"SBY – BALI");
else
strcpy (travel[i].najur[i],"SBY – JKT");
}
for (i=1;i<3;i++)
{
travel[i].tot[i]=travel[i].jubel[i]*harga(travel[i].kode[i]);
}
garis();
cout<<"\tTRAVEL SILIWANGI"<<endl;
cout<<"No. Nama Jurusan Harga jumlah Total"<<endl;
garis();
for (i=1;i<3;i++)
{
cout<<setiosflags(ios::left)<<setw(4)<<i;
cout<<setiosflags(ios::left)<<setw(10)<<travel[i].nama[i];
cout<<setiosflags(ios::left)<<setw(15)<<travel[i].najur[i];
cout<<setiosflags(ios::left)<<setw(8)<<harga(travel[i].kode[i]);
cout<<setiosflags(ios::left)<<setw(5)<<travel[i].jubel[i];
cout<<setiosflags(ios::left)<<setw(10)<<travel[i].tot[i];
cout<<endl;
}
garis();
cout<<"\n\n\n\n"<<"apakah anda ingin input lagi?";
lagi=getche();
if (lagi=='y'||lagi=='Y')
goto atas;
getch();
}
float harga(float a)
{
if (a==1)
{
return 400000;
}
else if (a==2)
{
return 250000;
}
else
{
return 150000;
}
}
Hasil Tampilan:
Latihan2:
/* Program Gaji Karyawan Honerer */
/* Jawaban Kuis Pra UAS C++ A1 */
/* ================================= */
#include
#include
#include
#include
long Lembur(int LJam);
main()
{
struct
{
char NIK[10];
char Nama[25];
int JmlJam;
long Total;
}Karyawan[5];
int i,N;
clrscr();
cout<>N;
for(i=1;i<=N;i++)
{
clrscr();
cout<<"==============================="<<endl;
cout<<" PROGRAM GAJI KARYAWAN "<<endl;
cout<<" HONORER "<<endl;
cout<<"==============================="<<endl;
cout<<" Data Ke – : "<<i<<endl;
cout<>Karyawan[i].NIK;
cout<<" Nama Karyawan : ";gets(Karyawan[i].Nama);
cout<>Karyawan[i].JmlJam;
}
clrscr();
cout<<"==============================================="<<endl;
cout<<" RINCIAN GAJI KARYAWAN HONORER "<<endl;
cout<<"==============================================="<<endl;
cout<<" No NIK Nama Jumlah Jam Upah Lembur Total Gaji "<<endl;
cout<<"==============================================="<<endl;
for(i=1;i<=N;i++)
{
cout<<setiosflags(ios::right)<<setw(3)<<i<<" ";
cout<<setiosflags(ios::left)<<setw(10)<<Karyawan[i].NIK;
cout<<setiosflags(ios::left)<<setw(10)<<Karyawan[i].Nama;
cout<<setiosflags(ios::right)<<setw(3)<<Karyawan[i].JmlJam<<" ";
cout<<setiosflags(ios::right)<<setw(10)< 48)
Karyawan[i].Total = (((Karyawan[i].JmlJam – (Karyawan[i].JmlJam – 48)) * 2000) + (Lembur(Karyawan[i].JmlJam)));
else
Karyawan[i].Total = ((Karyawan[i].JmlJam * 2000) + Lembur(Karyawan[i].JmlJam));
cout<<setiosflags(ios::right)<<setw(10)<<Karyawan[i].Total<<endl;
}
cout<<"==============================================="< 48)
{
return(LJam – 48) * 3000;
}
else
{
return 0;
}
}
Hasil Tampilan:
Masukan Keluaran
Latihan3:
#include
#include
#include
#include
#include
main()
{
long int total;
int i,j;
char napeg[20],hari[12];
struct
{
float jumbar[5],kobar[5];
long int tot[5],harga[5];
char nabar[5][20];
}terima[5];
clrscr();
cout<>j;
cout<>napeg;
cout<>hari;
cout<<"_______________________________________________________________"<<endl;
cout<<"Rincian Data Barang "<<endl;
for(i=1;i<=j;i++)
{
cout<<"Data Barang Ke = "<<i<<endl;
cout<>terima[i].kobar[i];
cout<>terima[i].nabar[i];
cout<>terima[i].jumbar[i];
cout<>terima[i].harga[i];
cout<<endl;
}
clrscr();
cout<<"\t\t\t Laporan Data Barang "<<endl;
cout<<"\t\t\t PT.Makmur Sejahtera "<<endl<<endl<<endl;
cout<<"Hari = "<<hari<<"\t\t\t\t\t"<<"Nama Pencatat = "<<napeg<<endl;
cout<<"_______________________________________________________________"<<endl;
cout<<" No Kode Nama Barang Jumlah Harga Total "<<endl;
cout<<" Barang "<<endl;
cout<<"_______________________________________________________________"<<endl;
total = 0;
for(i=1;i<=j;i++)
{
terima[i].tot[i]=terima[i].jumbar[i]*terima[i].harga[i];
cout<<setiosflags(ios::left)<<setw(2)<<ends;
cout<<setiosflags(ios::left)<<setw(10)<<i;
cout<<setiosflags(ios::left)<<setw(10)<<terima[i].kobar[i];
cout<<setiosflags(ios::left)<<setw(15)<<terima[i].nabar[i];
cout<<setiosflags(ios::left)<<setw(13)<<terima[i].jumbar[i];
cout<<setiosflags(ios::left)<<setw(10)<<terima[i].harga[i];
cout<<setiosflags(ios::left)<<terima[i].tot[i];
total = total + terima[i].tot[i];
cout<<endl;
}
cout<<"_______________________________________________________________"<<endl;
cout<<"total bayar"<<setiosflags(ios::left)<<setw(50)<<ends<< total;
getch();
}
Latihan_IF:
#include
#include
#include
main()
{
char kd,judul[20],np[20],bonus[20],jwb;
int jumbel;
float harsat,j_pemby,dis,harber,tunj;
awal:
textbackground(0);
clrscr();
cout<<" \n Toko Kaset Utama \n"<<endl;
cout<>np;
cout<>kd;
cout<>jumbel;
cout<<"\n##################################"<<endl<=5)
dis=0.15*j_pemby;
else
dis=0;
if(kd==’1′ &&jumbel>=5)
tunj=5000;
else
if(kd==’2′&&jumbel>=5)
tunj=6000;
else
if(kd==’3′&&jumbel>=5)
tunj=7000;
else
tunj=0;
harber=j_pemby-dis+tunj;
cout<<"Judul Lagu : "<<judul<<endl;
cout<<"Bonus : "<<bonus<<endl;
cout<<"Harga : "<<harsat<<endl;
cout<<"Jumlah bayar : "<<j_pemby<<endl;
cout<<"Discount : "<<dis<<endl;
cout<<"Tunjangan : "<<tunj<<endl;
cout<<"Total Bayar : "<<harber<<endl<<endl;
cout<<"Mau Menghitung Lagi[Y/T]?";jwb=getche();
if(jwb=='Y'||jwb=='y')
goto awal;
getch();
}
Array / Larik
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.
Array Berdimensi Satu
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.
Float Nil_Akhir[6];
Contoh1:
#include
#include
#include
#include
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<>nilai1[i];
cout<>nilai2[i];
hasil[i]=(nilai1[i]*0.40)+(nilai2[i]*0.60);
cout<<endl;
}
clrscr();
cout<<endl<<endl;
cout<<"———————————————–"<<endl;
cout<<"No. Nama Siswa Nilai Nilai Hasil "<<endl;
cout<<" Teori Praktek Ujian "<<endl;
cout<<"———————————————–"<<endl;
for (i=1;i<=2;i++)
{
cout<<setiosflags(ios::left)<<setw(4)<<i;
cout<<setiosflags(ios::left)<<setw(18)<<nama[i];
cout<<setprecision(2)<<" "<<nilai1[i];
cout<<setprecision(2)<<" "<<nilai2[i];
cout<<setprecision(2)<<" "<<hasil[i]<<endl;
}
cout<<"———————————————–"<<endl;
getch();
}
Array Berdimensi Dua
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
Contoh2:
#include
#include
#include
#include
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<>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_array1:
Sebuah perusahaan ayam goreng dengan nama “GEROBAK FRIED CHICKEN” yang telah lumayan banyak pelanggannya, ingin dibantu dibuatkan program untuk membantu kelancaran usahaannya.
“GEROBAK FRIED CHICKEN” mempunyai daftar harga ayam sebagai berikut :
Kode Jenis Harga
——————
D Dada Rp. 2500
P Paha Rp. 2000
S Sayap Rp. 1500
——————
Buatlah programnya dengan ketentuan :
• Setiap pembeli dikenakan pajak sebesar 10% dari pembayaran.
• Banyak Jenis, Jenis Potong dan Banyak Beli diinput.
• Tampilan yang diinginkan sebagai berikut :
Layar Masukkan
GEROBAK FRIED CHICKEN
———————
Kode Jenis Harga
———————
D Dada Rp. 2500
P Paha Rp. 2000
S Sayap Rp. 1500
———————
Banyak Jenis : …
Jenis Ke – …
Jenis Potong [D/P/S] : …
Banyak Potong : …
… <>
Layar Keluaran
GEROBAK FIRED CHICHEN
———————————————–
No. Jenis Harga Bayak Jumlah
Potong Satuan Beli Harga
———————————————–
… …. …. …. Rp ….
… …. …. …. Rp ….
———————————————–
Jumlah Bayar Rp ….
Pajak 10% Rp ….
Total Bayar Rp ….
FUNGSI
Fungsi (Function) merupakan blok dari kode yang dirancang untuk melaksanakan tugas khusus.
Kegunaan dari fungsi ini adalah untuk:
Mengurangi pengulangan penulisan program yang berulangan atau sama.|
Program menjadi lebih terstruktur, sehingga mudah dipahami dan dapat lebih dikembangkan.|
Fungsi-fungsi yang sudah kita kenal sebelumnya adalah fungsi main(), yang bersifat mutlak, karena fungsi ini program akan dimulai, sebagai contoh yang lainnya fungsi printf(), cout() yang mempunyai tugas untuk menampilkan informasi atau data kelayar dan masih banyak lainnya.
Struktur Fungsi
nama_fungsi(argumen)
{
… pernyataan / perintah;
… pernyataan / perintah;
… pernyataan / perintah;
}
Keterangan:
Nama fungsi, boleh dituliskan secara bebas dengan ketentuan, tidakØ menggunakan spasi dan nama-nama fungsi yang mempunyai arti sendiri.
Argumen, diletakan diantara tanda kurung “( )” yang terletakØ dibelakang nama fungsi. Argumen boleh diisi dengan suatu data atau dibiarkan kosong.
Pernyataan / perintah, diletakan diantara tanda kurung ‘{ }’.Ø
Pada pemanggilan sebuah fungsi, cukup dengan menuliskan nama fungsinya.
/* pembuatan fungsi garis() */
#include
#include
#include
garis()
{
printf(“\n———————-\n”);
}
/* program utama */
main()
{
clrscr();
garis(); //memanggil fungsi garis
cout<<"AMIK BSI – Salemba 22"<<endl;;
garis(); //memanggil fungsi garis
getche();
}
Prototipe Fungsi
Prototipe fungsi digunakan untuk mendeklarasikan ke kompiler mengenai: • Tipe data keluaran dari fungsi.
• Jumlah parameter yang digunakan
• Tipe data dari masing-masing parameter yang digunakan.
Keuntungan didalam pemakai prototipe yaitu :
• Kompiler akan melakukan konversi antara tipe parameter dalam definisi dan parameter fungsi.
• Jika jumlah parameter yang digunakan dalam definisi fungsi dan pada saat pemanggilan fungsi berbeda atau tidak sama, maka akan menunjukkan kesalahan.
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() dapat dilihat pada contoh berikut ;
Contoh pengiriman data konstanta
/* ———————— */
/* Pengriman data Konstanta */
/* ———————— */
#include
#include
#include
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);
}
Keterangan :
Dalam struktur program diatas dilihat bahwa, pernyataan luas_bs=luas(4.25), akan dikirimkan nilai kepada fungsi luas(), untuk diolah lebih lanjut, yang nilai tersebut akan ditampung pada variabel sisi. Selanjutnya didalam fungsi return terjadi perkalian sisi dengan sisi, setelah itu hasil perkalian tersebut dikirim balik ke variabel luas_bs yang memanggil fungsi.
Contoh Pengiriman data variable:
/* ———————— */
/* Pengriman data Variabel */
/* ———————— */
#include
#include
#include
luas(float sisi);
main()
{
float luas_bs, sisi_bs;
clrscr();
cout<<"\nMenghitung Luas Bujur Sangkar"<<endl;
cout<>sisi_bs;
luas_bs = luas(sisi_bs);
cout<<"\nLuas Bujur Sangkar = "<<luas_bs<<" Cm";
getch();
}
luas(float sisi)
{ return(sisi*sisi); }
Latihan function
#include
#include
#include
potong(float harga,float disk);
garis ()
{
printf(“===============================”);
}
main()
{
char nama[20],jwb;
long int harga,total,disk;
ulang:
clrscr();
garis();
cout<<"\n\tToko Mas Jayakarta "<<endl;
cout<>nama;
cout<>harga;
if(harga=1000000&&harga<=5000000)
disk=harga*0.2;
else
disk=harga*0.35;
cout<<"Besar diskont yang diberikan :"<<disk<<endl;
total=potong(harga,disk);
cout<<"Besar harga yang harus dibayar :"<<total<<endl;
cout<<"\n\tAnda Ingin Input Lagi [Y/T]:";jwb=getche();
if(jwb=='Y'||jwb=='y')
goto ulang;
getch();
}
potong(float harga,float disk)
{ return(harga-disk); }
Macro
Preprocessor Directives
Adalah suatu perintah yang termasuk kedalam program, tetapi bukanlah instruksi dari program itu sendiri, tetapi untuk preprocessor. Preprocessor ini dijalankan secara otomatis oleh kompiler, ketika didalam proses penterjemahan (Compile) program berlangsung, didalamnya membuat nilai pembuktian pertama dan menterjemahkan code program didalam kode objek. Didalam penggunaan preprocessor directive selalu dimulai dengan tanda : #
Ada beberapa preprocessor directive, diantaranya adalah :
# define
Digunakan untuk mendefinisikan suatu nilai tertentu kepada suatu nama konstanta.
Bentuk umum dari preprocessor directive #define ini adalah:
#define nama_konstanta teks
Contoh :
Teks
#define A 6
Nama_Konstanta
Dalam pendeklarasian preprocessor directive #define,
Nama_Konstanta sebaiknya ditulis dengan menggunakan huruf besar, guna untuk membedakannya dengan nama_variabel. Sedangkan Teks merupakan suatu nilai yang diberikan pada nama_konstanta. Teks dapat berupa :
• Numerik #define PI 3.14à
• Karakter #define HURUF ‘B’à
• String #define JABATAN “INSTRUCTOR”à
• Pernyataan #define CETAK (“Borland C++”)à
• Fungsi Sederhana #define LUAS_KUBUS (n*n)à
Contoh1:
/* ————————– */
/* Program Penggunaan #define */
/* ————————– */
#include
#include
#include
#define PI 3.141592
#define L(n) PI*n*n
main()
{
clrscr();
cout<<"Luas Lingkaran dengan : "<<endl;
cout<<"Jari-jari = 5 adalah "<<L(5)<<endl;
cout<<"Jari-jari = 10 adalah "<<L(10)<<endl;
getche();
}
Contoh2:
/* ————————– */
/* Program Penggunaan #define */
/* ————————– */
#include
#include
#include
#define awal {
#define akhir }
#define mulai() main()
#define cetak cout
#define masuk cin
#define hapus() clrscr()
#define tahan() getch()
#define LS_KUBUS (sisi*sisi)
mulai()
awal
int sisi, ls_kubus;
hapus();
cetak<<"Program Penggunaan #define"<<endl<<endl;
cetak<>sisi;
ls_kubus = LS_KUBUS;
cetak<<"Luas Kubus adalah : "<<ls_kubus;
tahan();
akhir
# include
berfungsi untuk memasukkan atau menyertakan file-file header kedalam program yang akan dibuat. Dalam penulisan #include ada dua bentuk penulisan :
#include "nama_file_header"
atau
#include
Pada bentuk penulisan #include mempunyai arti yang berbeda, yaitu :
• #include “nama_file_header”
“Pertama kali compiler akan mencari file header yang disebutkan pada directori yang sedang aktif dan apa bila tidak ditemukan akan mencari pada directori dimana file header tersebut berada “.
• #include
“Pertama kali compiler akan mencari file header yang disebutkan pada directori yang ada file headernya, kecuali pada directori yang sedang aktif.
Pembuatan File Header
File Header adalah suatu file dengan akhiran .h . File ini sebenarnya berisikan deklarasi fungsi dan definisi konstanta. Selain file-file header standar yang disediakan oleh C++, kita dapat juga membuat file header sediri, dengan cara yang sama seperti membuat file editor. Yang harus diperhatikan pada saat menyimpan file header yang telah dibuat harus digunakan akhiran .h .
Buatlah program file heder dibawah ini, kemudian simpan dengan nama : atur.h, pada folder kerja anda folder include
Contoh-1
/* atur.h */
#define awal {
#define akhir }
#define mulai() main()
#define cetak cout
#define tampil cprintf
#define masuk cin
#define hapus() clrscr()
#define jika if
#define warna textcolor
#define tahan getche()
Buatlah program dibawah ini, kemudian gunakan file header yang sudah anda buat dan simpan dengan nama : sendiri.cpp
/* ———————————- */
/* program dengan file header sendiri */
/* ———————————- */
#include
#include
#include
#include”atur.h”
mulai()
awal
int a, b, c;
hapus();
warna(4);
tampil(“\nPROGRAM PENJUMLAHAN\n”);
cetak<<endl;
cetak<>a;
cetak<>b;
c=a+b;
cetak<<"Hasil dari "<<a<<" + "<<b<<" = "<<c;
tahan;
akhir
Structure
Structure digunakan untuk mengelompokan sejumlah data yang mempunyai tipe data yang berbeda. Variabel-variabel yang membentuk sebuah struktur dinamakan elemen struktur. Struktur sama seperti Record di dalam Bahasa Pemrograman Pascal
Deklarasi Structure
Atau
Contoh1:
/* —————————- */
/* Program Penggunaan structure */
/* Nama File : struct1.cpp */
/* —————————- */
#include
#include
#include
main()
{
struct
{
char nim[5];
char nama[15];
int nilai;
} mahasiswa;
clrscr();
cout<>mahasiswa.nim;
cout<>mahasiswa.nama;
cout<>mahasiswa.nilai;
cout<<"\n\nData Yang di Inputkan adalah : \n\n";
cout<<"NIM = "<<mahasiswa.nim<<endl;
cout<<"Nama = "<<mahasiswa.nama<<endl;
cout<<"Nilai Akhir = "<<mahasiswa.nilai<<endl;
getch();
}
Nested Structure
Contoh2:
/* ———————————– */
/* Program Penggunaan Nested structure */
/* ———————————– */
#include
#include
#include
main()
{
struct dtmhs
{
char nim[9];
char nama[15];
};
struct dtnil
{
float nil1;
float nil2;
};
struct
{
struct dtmhs mhs;
struct dtnil nil;
} nilai;
clrscr();
//-> masukan data
cout<>nilai.mhs.nim;
cout<>nilai.mhs.nama;
cout<>nilai.nil.nil1;
cout<>nilai.nil.nil2;
cout< menampilkan hasil masukan
cout<<"masukan NIM = "<<nilai.mhs.nim<<endl;
cout<<"masukan Nama = "<<nilai.mhs.nama<<endl;
cout<<"masukan Nilai UTS = "<<nilai.nil.nil1<<endl;
cout<<"masukan Nilai UAS = "<<nilai.nil.nil2<<endl;
cout<<endl;
getch();
return(0);
}
Structure dengan Array
struct
{
elemen_struktur;
…..
…..
} nama_tipe_struktur[jml_index];
Contoh3:
#include
#include
#include
main()
{
int i,j=1;
struct
{
char nim[10];
char nama[15];
float nilai;
} mhs[5];
clrscr();
for(i=1;i<=2;i++)
{
cout<<"Data ke-"<<i<<endl;
cout<>mhs[i].nim;
cout<>mhs[i].nama;
cout<>mhs[i].nilai;
cout<<endl;
}
for(i=1;i<=2;i++)
{
cout<<"Data ke-"<<i<<endl;
cout<<"NIM = "<<mhs[i].nim<<endl;
cout<<"Nama = "<<mhs[i].nama<<endl;
cout<<"Nilai Akhir = "<<mhs[i].nilai<<endl;
cout<<endl;
}
getch();
}
Structure dengan Function
/* —————————————— */
/* Program Penggunaan structure pada function */
/* Nama File : struct4.cpp */
/* —————————————— */
#include
#include
#include
char ket(float n);
main()
{
int i, j=1, k=1;
struct
{
char nim[5];
char nama[15];
float nilai;
} mhs[5];
clrscr();
for(i=0; i<2; i++)
{
cout<<"Data Ke – "<<j++<<endl;
cout<>mhs[i].nim;
cout<>mhs[i].nama;
cout<>mhs[i].nilai;
cout<<endl;
}
clrscr();
for(i=0; i<2; i++)
{
cout<<"Data Ke – "<<k++<<endl;
cout<<"NIM = "<<mhs[i].nim<<endl;
cout<<"Nama = "<<mhs[i].nama<<endl;
cout<<"Nilai Akhir = "<<mhs[i].nilai<<endl;
cout<<"Keterangan yang didapat = ";
cout<<ket(mhs[i].nilai)<<endl; cout< 65)
return ‘L’;
else
return ‘G’;
}

Konversi Bilangan


  1. Biner adalah bilangan berbasis dua yang terdiri dari 0 dan 1,
  2. Octal adalah bilangan berbasis delapan yang terdiri dari 0, 1, 2, 3, 4, 5, 6, dan 7
  3. Decimal adalah bilangan berbasis sepuluh yang terdiri dari 0, 1, 2, 3, 4, 5, 6, 7, 8, dan 9
  4. Hexadecimal adalah bilangan berbasis enam belas yang terdiri dari 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, dan F
Tabel di bawah adalah contoh konversi bilangan Decimal, Biner, Octal, dan Hexadecimal sampai dengan 16 (dalam Decimal). Untuk mengetahui sebuah bilangan dalam basis bilangan yang berbeda dapat dilakukan konversi antar bilangan tersebut. Jika konversi hanya sampai 16 (dalam Decimal) dapat menggunakan tabel di bawah. 
clip_image001

KONVERSI ANTAR BILANGAN


A. BILANGAN DECIMAL

  1. Konversi Bilangan Decimal ke Biner
    Contoh 254 (10) = .......(2)
    Caranya dengan membagi bilangan tersebut dengan dua sampai bilangan tersebut tidak bisa lagi dibagi dua (kurang dari dua) dengan mencatat setiap sisa pembagian.
    254 : 2 = 127 sisa 0
    127 : 2 =   63 sisa 1
      63 : 2 =   31 sisa 1
      31 : 2 =   15 sisa 1
      15 : 2 =     7 sisa 1
        7 : 2 =     3 sisa 1
        3 : 2 =     1 sisa 1
        1 : 2 =        sisa 1
    Jadi  254 (10) = 11111110 (2) diurutkan dari sisa pembagian terakhir sebagai MSB (Most Significant Bit)
  2. Konversi Bilangan Decimal ke Octal
    Contoh 254 (10) = .......(8)
    Caranya dengan membagi bilangan tersebut dengan delapan sampai bilangan tersebut
    tidak bisa lagi dibagi delapan (kurang dari delapan) dengan mencatat setiap sisa pembagian.
    254 : 8 = 31 sisa 6
      31 : 8 =  3  sisa 7
        3 : 8 =      sisa 3
    Jadi  254 (10) = 376 (8) diurutkan dari sisa pembagian terakhir sebagai MSB (Most Significant Bit)
  3. Konversi Bilangan Decimal ke Hexadecimal
    Contoh 254 (10) = .......(16)
    Caranya dengan membagi bilangan tersebut dengan enam belas sampai bilangan tersebut tidak bisa lagi dibagi enam belas (kurang dari enam belas) dengan mencatat setiap sisa pembagian.
    254 : 16 = 15 sisa 14 atau E (lihat tabel di atas)
      15 : 16 =      sisa 15 atau F (lihat tabel di atas)
    Jadi  254 (10) = FE (16) diurutkan dari sisa pembagian terakhir sebagai MSB (Most Significant Bit)


B. BILANGAN BINER

  1. Konversi Bilangan Biner ke Decimal
    Contoh 1100100 (2) = .......(10)
    Dengan cara mengalikan bilangan-bilangan tersebut dengan dua yang telah dipangkatkan sesuai urutan 0,1,2,4, dan seterusnya kemudian menjumlahkannya.
    0 x 20 = 0
    0 x 21 = 0
    1 x 22 = 4
    0 x 23 = 0
    0 x 24 = 0
    1 x 25 = 32
    1 x 26 = 64
    0+0+4+0+0+32+64 = 100
    Jadi 1100100 (2) = 100 (10)
  2. Konversi Bilangan Biner ke Octal
    Contoh 1100100 (2) = .......(8)
    Dengan cara memisahkan bilangan tersebut menjadi beberapa bagian dimulai dari bilangan paling kanan (LSB). Setiap bagian terdiri dari tiga angka (digit), kemudian lihat tabel di atas. Jika bagian terakhir (paling kiri) kurang dari tiga digit, dapat menambahkan bilangan 0.
    1100100 dipisahkan menjasi tiga bagian menjadi 1-100-100 atau 001-100-100
    100 (2) = 4 (8)
    100 (2) = 4 (8)
    001 (2) = 1 (8)
    Jadi  1100100 (2) = 144 (8)
  3. Konversi Bilangan Biner ke Hexadecimal
    Contoh 1100100 (2) = .......(16)
    Dengan cara memisahkan bilangan tersebut menjadi beberapa bagian dimulai dari bilangan paling kanan (LSB). Setiap bagian terdiri dari empat angka (digit), kemudian lihat tabel di atas. Jika bagian terakhir (paling kiri) kurang dari empat digit, dapat menambahkan bilangan 0.
    1100100 dibagi empat bagian menjadi 110-0100 atau 0110-0100
    0100 (2) = 4 (16)
    0110 (2) = 6 (16)
    Jadi 1100100 (2) = 64 (16)
C. BILANGAN OCTAL
  1. Konversi Bilangan Octal ke Decimal
    Contoh 200 (8) = ...... (10)
    Dengan cara mengalikan bilangan-bilangan tersebut dengan delapan yang telah dipangkatkan sesuai urutan 0,1,2,4, dan seterusnya kemudian menjumlahkannya.
    0 x 80 = 0
    0 x 81 = 0
    2 x 82 = 128
    0+0+128 = 128
    Jadi 200 (8) = 128 (10)
  2. Konversi Bilangan Octal ke Biner
    Contoh 200 (8) = ...... (2)
    Dengan cara melihat tabel di atas kemudian tulis dalam tiga digit, setelah itu diurutkan (disatukan).
    0 (8) = 000 (2)
    0 (8) = 000 (2)
    2 (8) = 010 (2)
    Jadi 200 (8) = 010000000 (2)
  3. Konversi Bilangan Octal ke Hexadecimal
    Contoh 200 (8) = ...... (16)
    Lakukan konversi ke Decimal atau ke Biner terlebih dahulu kemudian konversi lagi ke Hexadecimal. Jika konversi dilakukan ke bilangan Biner, maka hasil konversi dipisahkan menjadi beberapa bagian dimana setiap bagian terdiri dari empat digit dimulai dari sebelah kanan (LSB) kemudian dikonversi ke Hexadecimal dengan melihat tabel di atas.
    200 (8) = 010000000 (2)
    010000000 menjadi 0-1000-0000 atau 0000-1000-0000
    0000 (2) = 0 (16)
    1000 (2) = 8 (16)
    0000 (2) = 0 (16)
    Jadi  200 (8) = 080 (16)
D. BILANGAN HEXADECIMAL
  1. Konversi Bilangan Hexadecimal ke Biner
    Contoh FA (16) = ..... (2)
    Caranya dengan menggunakan tabel di atas.
    A (16) = 1010 (2)
    F (16) = 1111 (2)
    Jadi  FA (16) = 11111010 (2)
  2. Konversi Bilangan Hexadecimal ke Octal
    Contoh FA (16) = ..... (8)
    Caranya dengan mengkonversi bilangan tersebut ke Biner  terlebih dahulu kemudian gunakan cara konversi bilangan Biner ke Octal.
    FA (16) = 11111010 (2)
    11111010 menjadi 11-111-010 atau  011-111-010
    010 (2) = 2 (8)
    111 (2) = 7 (8)
    011 (2) = 3 (8)
    Jadi  FA (16) = 372 (8)
  3. Konversi Bilangan Hexadecimal ke Decimal
    Contoh FA (16) = ..... (10)
    Dengan cara mengalikan bilangan-bilangan tersebut dengan enam belas yang telah dipangkatkan sesuai urutan 0,1,2,4, dan seterusnya kemudian menjumlahkannya.
    A x 160 atau 10 x  160 = 10
    F x 161 atau 15 x  161 = 240
    10+240 = 250
    Jadi  FA (16) = 250 (10)