Kamis, 26 April 2012

pengulangan ( for) dalam c++


PENGULANGAN

         Saya akan jelaskan tentang pengulangan,yaitu proses yang melakukan statemen-statemen dalam sebuah program secara terus-menerus sampai terdapat kondisi untuk menghentikannya. Struktur pengulangan akan sangat membantu dlam efisiensi program.Biasanya kita ketahui jika kita ingin melakukan pengulangan secara manual kita menggunakan cout yang berulang-ulang tetapi dsini kita cukup menggunakan for,maka dengan sendirinya akan mengulang variabel-variabel yang kita ingin ulang. Menggunakan cout jika ditinjau dari hasilnya,secara program memang benar tetapi secara algoritma hal tersebut jelas salah karena tidak efisien. Baik  dilihat dari segi waktu maupun besarnya programyang dihasilkan. Mungkin untuk sepuluh kali pengulangan kita belum melihat bahwa program tersebut tidak efisien, namun bagaimana jika kita ingin menampilkan teks  sebanyak 500 atau bahkan 1000 kali?jika kita menggunakan cout tentu waktu dan tenaga kita akan terbuang sia-sia. Maka dari itu, dalam menghadapi kasus-kasus seperti ini, kita harus menggunakan struktur pengulangan.
                Namun untuk melakukan pengulangan statemen,tentunya kita harus mengenal dengan baik aturan-aturan yang terdapat didalamnya sehingga kita dapat terhindaar daari kesalahan-kesalahan yang tidak diinginkan. Dalam bahasa C++ terdapat tiga buah jenis struktur pengulangan yaitu struktur FOR, struktur WHILE dan struktur DO WHILE.
PENGULANGAN FOR
                Struktur pengulangan jenis ini digunakan untuk melakukan pengulangan yang telah diketahui banyaknya. Jenis ini merupakan jenis struktur pengulangan yang paling mudah dipahami. Untuk melakukan pengulangan dengan menggunakan struktur ini, kita harus memiliki sebuah variable sebagai indeksnya. Namun perlu sekali untuk diperhatikan bahwa tipe data dari variable yang akan digunakan sebagai indeks ahruslah tipe data yang mempunyai urutan yang teratur, misalnya tipe data interger (0,1,2,3….) atau char(‘a’,’b’,’c’…).
                Sebagai catatan bahwa jika kita melakukan pengulangan yang sifatnya menaik maka nilai awal dari variable yang kita definisikan  haruslah lebih kecil dari nilai akhir yang dituliskan dlam kondisi (ekspresi). Sebaliknya, jika kita ingin melakukan pengulangan yang sifatnya menurun maka nilai awal harus kebih besar dari nilai akhir.
Berikut ini contoh program yang menunjukan pengulangan dengan menggunakan struktur For. Program akan dituli dalam dua tipe, yaitu tipe menaik dan menurun.
A.      Pengulangan yang sifatnya menaik

#include<iostream.h>
#include<conio.h>
#inclusde<stdio.h>
Main(){
Int c;
For (c=0; c<10; c++)
{Cout<<”Saya sangat menyukai c++”<<endl;
}
Getch();
}

B.      Pengulangan yang sifatnya menurun
#include<iostream.h>
#include<conio.h>
#include<stdio.h>
Main()
{
Int c;
For (c=10; c>0; c-->){
Cout<<”saya sangat menyukai c++”<<endl;
}
Getch();

STRUKTUR FOR BERSARANG(NESTED FOR)
                Sama halnya seperti pada percabangan, pada struktur pengulangan  dapat juga diterapkan pengulangan bersarang. Pada bagian ini hanya akan diterangkan pengulangan bersarang dengan menggunakan struktur for. Konsepnya sangat sederhana, yaitu dalam sebuah pengulangan terdapat pengulangan yang lainnya.

STRUKTUR WHILE
                Struktur pengulangan jenis ini adalah pengulangan yang melakukan pengecekan kondisi di awal blok struktur. Kita tahu bahwa pengulangan hanya akan dilakukan jika kondisi yang didefinisikan di dalamnya terpenuhi (bernilai benar). Hal ini berarti jika kondisi yang didefinisikan tidak terpenuhi (bernilai salah) maka statemen-statemen yang terdapat dalam blok pengulanganpun tidaka kan pernah dieksekusi oleh program. Namun perlu sekali diperhatikan bahwa untuk melakukan pengulangan dengan menggunakan struktur while, Kita harus berhati-hati dalam menentukan inisialisasi  awal dan memanipulasi nilai tersebut supaya pengulangan akan berhasil sesuai yang diinginkan.
Struktur  pengulangan whilejuga dapat melakukanpengulangan yang sifatnya menurun.





Struktur do while

Berbeda dengan struktur while yang melakukan pengecekan kondisi di awal blok perulangan, pada struktur do while kondisi justru ditempatkan di bagian akhir. Hal ini tentu menyebabkan struktur pengulangan ini minimal akan melakukan satu kali proses walaupun kondisi yang didefinisikan tidak terpenuhi (bernilai salah). Berikut ini bentuk umum dari struktur do while.

Do{
  Statemen_yang_akan_diulang;
} While ( kondisi);

Sama seperti lainnya, struktur pengulangan jenis ini juga dapat digunakan untu kasus – kasus diatas, hanya saja kita harus teliti dan berhati-hati dalam mendefinisikan kondisi yang terdapat didalamnya. Contoh lain yang dapat digunakan untuk mengimplementasikan jenis struktur di while adalah pembuatan program untuk menentukan nilai factor persekutuan terbesar dari dua buah bilangan bulat. Misalnya kita memasukkan dua buah bilangan bulat yaitu 8 dan 12, maka factor persekutuan terbesar dari kedua bilangan tersebut adalah 4.


Menggunakan Kata Kunci Break

                Kata kunci ini berfungsi untuk menghentikan proses pengulangan dan program akan langsung meloncat ke statemen yang berada di bawah blok pengulangan yang bersangkutan.
Statemen while (TRUE) merupakan statemen yang memaksa program untuk selalu melakukan pengulangan sehingga program tersebut harus memiliki statemen yang dapat menghentikan pengulangan tersebut. Dan untuk melakukan hal ini,, kita harus menggunakan kata kunci break.

Menggunakan kata kunci continue
               
         Berbeda sekali dengan kata kunci break yang berguna untuk mengehentikan pengulangan, kata kunci continue ini justru berfungsi untuk melanjutkan proses pengulangan. Dengan kata lain, kata kunci ini akan menyebabkan program meloncat ke statemen awal yang terdapat dalam blok pengulangan.

Menggunakan Kata Kunci goto
                 
         Jika ditinjau dari bahasan mengenai struktur pengulangan. Penggunaan kata kunci goto ini dapat mewakili penggunaan kata kunci break maupun continue. Label di sini berfungsi untuk menyatakan lokasi yang akan dituju. Perlu juga diperhatikan bahwa untuk menuliskan suatu lebel haruslah menggunakan  tanda titik  dua  ( : )  di  belakang  nama  label tersebut.  Dalam  mendefinisikan  nama Label juga  tidak  perlu  dilakukan  pendeklarasian   seperti halnya  sebuah Variabel  karena  label  hanya  untuk  tanda  saja  sehingga  tidak memiliki  tipe data.

Menggunakan  Fungsi   exit
                Berbeda dengan statemen-statemen peloncatan yang lain, fungsi  exit() ini berfungsi  untuk  proses  terminasi  atau  keluar  dari  program.  Perlu untuk  diperhatikan bahwa dalam menggunakan fungsi exit () kita harus memasukkan file  header stdlib.h (untuk c++ lama) atau <cstdlib> (untuk c++ standar).

Rabu, 18 April 2012

Operasi Penyeleksian Kondisi

OPERASI PENYELEKSIAN KONDISI
PERNYATAAN IF
 
Belajar C++ khususnya tentang perintah IF membutuhkan logika atau pemikiran yang teliti dari seorang programmer sebelum menuliskan baris per baris kode program untuk menyelesaikan masalah yang ada. Perintah IF biasanya merupakan perintah pertama yang dipelajari setelah mengenal syntax-syntax dasar bahasa pemrograman, mengenal tipe data, konstanta, variable, mengenal operator dan lain-lain.

Contoh program C++ tentang operator aritmatika bisa dilihat pada posting blog kang asep sule sebelumnya yaitu contoh program C++ menghitung luas segitiga, hitung luas bujur sangkar, dan hitung luas persegi panjang.

Kembali ke IF dalam C++. Perintah atau pernyataan IF mengandung arti :
Jika kondisi bernilai benar, maka perintah akan dikerjakan.
Jika kondisi bernilai salah, maka perintah tidak akan dilaksanakan

Dari arti IF tersebut bila digambarkan dalam diagram alir (flowchart) seperti berikut ini :
 Flowchart IF

PERNYATAAN IF-ELSE
 
Pernyataan Percabangan If-Else digunakan untuk memecahkan persoalan untuk mengambil suatu keputusan diantara sekian pernyataan yang ada. Untuk keperluan pengambilan keputusan, Borland C++ menyediakan beberapa perintah antara lain:

1. Pernyataan If-Else

Bentuk umum dari pernyataan If-Else
if(kondisi)
{
statement 1;
}
else
{
statement 2;
}

Ket :
  • Kondisi adalah pernyataan relasi yang akan diuji kebenarannya. Kondisi bisa berbentuk pernyataan relasi tunggal maupun pernyataan relasi majemuk yang dihunbungkan dengan operator logika.
  • Statement adalah satu atau lebih perintah yang akan dikerjakan jika kondisi bernilai benar.
Kesimpulan:
Pernyataan if mempunyai pengertian, "Jika kondisi bernilai benar, maka statement 1 akan dikerjakan dan jika tidak memenuhi syarat maka akan mengerjakan statement 2".

Untuk contoh programnya, silahkan lihat di sini!


2. Pernyataan If-Else Multi Kondisi

Kondisi yang diperiksa di dalam perintah if bisa berupa kumpulan operasi yang dihubungkan dengan satu atau lebih operator logika.
Bentuk umum If-Else Multi Kondisi.
if(kondisi1 &&/|| kondisi2 .......dst)
{
statement;
}
.....dst

Ket:
  • Kondisi 1, kondisi 2, dst adalah beberapa pernyataan relasi yang akan diuji kebenarannya. Hasil akhir dari seluruh kondisi inilah yang akan menentukan apakah blok statement akan dikerjaka atau tidak.
  • Operator "&&" digunakan untuk menghubungkan dua relasi dengan logika AND. Hasil akhir akan bernilai benar apabila kedua kondisi benar. Dan bernilai salah apabila kedua kondisi atau salah satu kondisi bernilai salah.
  • Operator "||" digunakan untuk menghubungkan dua relasi dengan logika OR. Hasil akhir akan bernilai benar apabila kedua kondisi benar atau salah satunya benar. Dan bernilai salah apabila kedua kondisi bernilai salah.
Untuk contoh programnya, silahkan lihat di sini!


3. Pernyataan Nested If-Else

Percabangan If-Else secara Nested merupakan sebuah struktur percabangan bisa saja berada di dalam struktur percabangan yang lain, demikian terus tanpa batas, disesuaikan dengan persoalan yang dihadapi. Diproses atau tidaknya percabangan yang berada di bagian dalam ditentukan oleh diproses-tidaknya percabangan bagian luar.

Nested if merupakan pernyataan if berada didalam pernyataan if yang lainnya. Bentuk penulisan pernyataan Nested if adalah :
if(kondisi 1)
{
if(kondisi 1-1)
{
statement 1.1;
}
else
{
statement 1.2;
}
}
else
{
if(kondisi 2-1)
{
statement 2.1;
}
else
{
statement 2.2;
}
}

Kesimpulan:
Pernyatan Nested If-Else memiliki pengertian,
  • "Jika kondisi 1 bernilai benar, dan jika kondisi 1-1 bernilai benar, maka akan mengerjakan statement 1.1" Apabila kondisi 1-1 bernilai salah, maka akan mengerjakan statement 1.2".
  • "Jika kondisi 1 bernilai salah, dan jika kondisi 2-1 bernilai benar, maka akan mengerjakan statement 2.1" Apabila kondisi 2-1 bernilai salah, maka akan mengerjakan statement 2.2".


Pernyataan switch-case

   Penyataan percabangan kedua yang dimiliki Java adalah switch. Pernyataan switch lebih jarang digunakan, tetapi sering bermanfaat apabila kita ingin menuliskan percabangan multi arah.
Di sini pernyataan switch akan mencari nilai ekspresi yang sesuai dengan nilai-nilai yang didaftarkan pada pernyataan case. Jika salah satu nilai ditemui, maka program akan melompat ke cabang case tersebut dan melakukan perintah yang terdapat di sana. Jika tidak ditemui, maka program akan melompat ke perintah yang terdapat pada pernyataan default.

   Catatan ekspresi hanya bisa berbentuk nilai bilangan bulat (int, short, dan sejenisnya) atau karakter, sehingga kita tidak bisa menggunakan switch untuk mengevaluasi ekspresi yang berbentuk String.

   Pernyataan break di atas sebetulnya tidak harus selalu ada. Tetapi, perintah break di sini memerintahkan komputer agar segera keluar dari blok switch apabila perintah tersebut telah selesai dilaksanakan.

   Apabila perintah break tidak diberikan, maka program akan terus mengeksekusi perintah lain meskipun sudah berada di luar nilai yang tertera dalam pernyataan casenya.










































Rabu, 11 April 2012

Operator Borland C++


Bahasa C++ sendiri menawarkan banyak operator untuk melakukan banyak operator untuk melakukan pemecahan masalah-masalah tertentu di dalam program. Dalam buku ini Operator-operator tersebut akan dikelompokkan kedalam tiga bagian yaitu Operator unary, binary, dan ternary.

sebagai pengenalan sebelum melangkah ke pembahasan yang lebih jauh, berikut ini istilah-istilah yang harus diketahui dalam bekerja dengan Operator. Misalnya jika terdapat suatu statemen yang berupa persamaan matematika dan dituliskan sebagai berikut:

C= 5+7
Maka:
C          disebut dengan variabel
=          disebut dengan operator assignment
5 dan 7 disebut dengan operand
5+7      disebut dengan ekspresi
+          disebut dengan operator aritmatika (penambahan)
C = 5 + 7  DISEBUT DENGAN STATEMEN ARITMATIKA

1. Operator Unary
         Yaitu Operator yang hanya melibatkan sebuah operand. Adapun yang termasuk ke dalam operator unary adalah seperti tampak pada tabel dibawah ini.

+      -->  membuat nilai positif     contoh: +7
--     -->  membuat nilai negatif     contoh -7
++    --> increment                      contoh C++
--     -->  Decrement                   contoh C--

2. Operator Binary
         Yaitu operator yang digunakan untuk melakukan operasi-operasi aritmatika seperti penjumlahan, pengurangan dan segainya.Adapun yang termasuk dalam operator aritmatika di dalam C++, operator binary ini dikelompokkan lagi ke dalam empat jenis, yaitu operator aritmatika,logika,relasional dan bitwise.

A. Operator Aritmetika
         Yaitu operator yang digunakan untuk melakukan operasi-operasi aritmatika seperti penjumlahan, pengurangan dan sebagainya. Adapun yang termasuk dalam operator aritmatetika didalam C++ adalah seperti yang tampak dibawah ini :


+  --> penjumlahan --> 2 + 3 = 5
-  --> Pengurangan  -->5 - 3 = 2
*  --> Perkalian      --> 2 * 3 = 6
/  --> Pembagian    --> 10.0 / 3.0 = 3.3333
% -->Sisa bagi       --> 10 % 3 = 1

B. Operator Logika
        Operator yang digunakan untuk melakukan operasi dimana nilai yangh dihasilkan dari operasi tersebut hanya berupa nilai benar(true) dan salah (false). Nilai ini disebut dengan nilai boolean. Boolean sendiri ditemukan oleh seorang matematikawan Inggris yang bernama George Bool.
       Dalam bahasa C++ nilai benar tersebut dipresentasikan dengan bilangan selain 0 (biasanya nilai1), sedangkan nilai salah dipresentasikan dengan nilai 0.

C. Relasional
         Operator yang digunakan untuk menentukan relasi atau hubungan dari dua buah operand. Operator inio ditempatkan didalam sebuah ekspresi, yang kemudian akan menentukan benar atau tidaknya sebuah ekspresi.

D. Bitwise
       Operator ini berguna untuk melakukan operasi-operasi yang berhubungan dengan pemanipulasian bit. Sejak bahasa C diciptakan, bahasa C banyak digunakan untuk lebih memudahkan pemograman yang berhubungan dengan alat. Sebagai catatan bahwa operator bitwise ini hanya dapat dilakukan pada operand yang bertipe char dan int saja karena ini berkoresponden dengan type atau word didalam bit. Adapun yang termasuk dalam operator bitwise dalam C++ adalah seperti dibawah ini:
tanda ^ yang disebut jenis Operasi  Exlucive OR (XOR)


3. Operator Ternary
      Yaitu Operator yang digunakan dalam operasi yang melibatkan tiga buah operand. Adapun operator yang digunakan untuk menyatakannya adalah operator ? :. Konsep yang mendasari operasi ini adalh suatu percabangan yang didasarkan atas kondisi tertentu.


untuk nilai Rata-Rata

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

main( )
{
   char nim[9], nama[15];
   float tugas1, tugas2, tugas3;
   float rata = 0 ;
//input
cout<<"PROGRAM HITUNG NILAI RATA-RATA"<<endl<<endl;
cout<<"Nim siswa    :";cin>>nim;
printf("Nama siswa   :");gets (nama);
printf("Nilai Tugas I  :");scanf(%d%",&tugas1);
cout<<"Nilai Tugas II  :");cin>>tugas2;
printf(Nilai Tugas III  :");scanf("%d",tugas3);
//proses
rata = (tugas1 + tugas2 + tugas3)/3;
//output
printf("\n\n");
printf("Nim %s",&nim);
printf("Siswa yang bernama %s",&nama);
printf("\n");
cout<<"Memperoleh nilai rata-rata"<<rata;
cout<<"Dari hasil tugas yang diikutinya";
getch( );
}

Operator Logika
Operator logika merupakan operator yang membandingkan hubungan antara dua hasil dari operasi pembanding. Operator logika membandingkan logika hasil dari dua operasi pembanding dan akan melakukan operasi khusus apabila bernilai benar dan apabila bernilai salah maka akan melakukan sebaliknya. Operator yang digunakan dalam operasi logika ada tiga yaitu :
Logika
Keterangan
&&
Logika dan (AND)
||
Logika or (ATAU)
!
Logika not (INGKARAN)

C++ tersedia juga operator bitwise yang digunakan untuk keperluan memanipulasi data dalam bentuk bit. C++ menyediakan enam buah operator bitwise : Seluruh operator bitwise hanya bisa dikenakan pada operator operand bertipe integer dan karakter. Kegunaan dari operator-operator ini diantaranya adalah untuk mengakses bit secara individual di dalam memori. Oerator bitwise mempunyai prioritas lebih rendah dibandingkan operator aritmatika. Operator >> dan << berguna untuk menggeser bit-bit kedalam suatu bilangan bulat ke kiri atau ke kanan. Penggeseran bit ke kiri mempunyai efek seperti perkalian, sedangkan ke kanan memberikan efek seperti pembagian. Untuk kebih jelasnya,perhatikan syntax berikut. Saya akan memasukkan keenam operator bitwise bersamaan dalam satu program.

Original Source : http://world-of-programmer.blogspot.com/2010/03/operator-bitwise-dalam-c.html
Copyright world-of-programmer.blogspot.com


alam C++ tersedia juga operator bitwise yang digunakan untuk keperluan memanipulasi data dalam bentuk bit. C++ menyediakan enam buah operator bitwise : Seluruh operator bitwise hanya bisa dikenakan pada operator operand bertipe integer dan karakter. Kegunaan dari operator-operator ini diantaranya adalah untuk mengakses bit secara individual di dalam memori. Oerator bitwise mempunyai prioritas lebih rendah dibandingkan operator aritmatika. Operator >> dan << berguna untuk menggeser bit-bit kedalam suatu bilangan bulat ke kiri atau ke kanan. Penggeseran bit ke kiri mempunyai efek seperti perkalian, sedangkan ke kanan memberikan efek seperti pembagian. Untuk kebih jelasnya,perhatikan syntax berikut. Saya akan memasukkan keenam operator bitwise bersamaan dalam satu program.

Original Source : http://world-of-programmer.blogspot.com/2010/03/operator-bitwise-dalam-c.html
Copyright world-of-programmer.blogspot.com











Rabu, 04 April 2012

PERINTAH MASUKAN DAN KELUARAN II

PERINTAH MASUKAN DAN KELUARAN DALAM C++ PART II

Input menggunakan cin
  
    Sebelumnya yang dikemukakan sebelumnya bahwa cin adalah suatu stream yang akan merespon proses input yang dilakukan. stream ini hanya tersedia jika kita memasukkan file header iostream.h.

Output menggunakan cout
  Dalam C++ untuk melakukan output ke peralatan standar, yaitu layar (screen) adalah dengan cara menggunakan stream out. Adapun oprerator yang digunakan adalah <<. Operator ini juga telah di-overload sehingga dapat digunakan untuk berbagai macam tipe data. Sama seperti cin , cout juga dapat melakukan output secara beruntun. Artinya, satu penulisan cout dapat diikuti oleh banyak operator <<.

Fungsi puts ( ) dan gets ( )
 
   Fungsi put ( ) dan get ( ) dapat juga digunakan untuk proses penulisan dan pembacaan data. Lebih tepatnya, untuk menuliskan data kita menggunakan fungsi put ( ) dan untuk pembaca data kita menggunakan fungsi gets 
( ).



GETCH ()
   
     kegunaan fungsi getch() sebenarnya lebih dari itu, fungsi getch sebenarnya merupakan fungsi yang digunakan untuk membaca input dari keyboard. getch() ini merupakan kepanjangan dari Get Character. Dan karakter yang diambil oleh fungsi getch ini tidak akan ditampilkan pada console. Adapun karakter yang diambil dari keyboard hanya satu karakter.

SCANF 
  
   Fungsi scanf merupakan fungsi yang digunakan pada bahasa pemograman C++ untuk memasukan berbagi data, fungsi ini mirip dengan fungsi printf. Pada contoh program fungsi printfdata sudah ditentukan dari dalam program , sedangkan program pada funngsi scanf akan maembaca masukkan dari keyboard, artinya akan ditentukan oleh pemakai melalui masukkan dari keyboard.