Monday, January 7, 2013

Ringkasin Materi Algoritma



RINGKASAN MATERI ALGORITMA
SEMESTER 1
PENGENALAN ALGORITMA
·     Algoritma adalah urutan langkah-langkah logis penyeselaian masalah yang disusun secara sistematis dan logis.
FLOWCHART
  Suatu flowchart adalah suatu representasi secara diagram yang mengilustrasikan urutan dari operasi yang dilakukan untuk mendapatkan suatu hasil.
Dengan kata lain, flowchart membantu kita untuk mengerti dan melihat bentuk algoritma dengan menampilkan algoritma dalam simbol-simbol gambar.




CASE SENSITIVE
Pada C++, huruf kecil dan huruf kapital pada suatu pengenal dianggap tidak sama.
Sifat ini dikenal dengan case sensitive. Maka dari itu pengenal seperti NAMA, nama, Nama merupakan tiga pengenal yang berbeda.
           TIPE DATA
Tipe data dasar pada C++ meliputi :
o   char
o   int
o   short
o   long
o   float
o   double
o   long double
o   string
o   bolean
Tipe data yang berhubungan dengan bilangan bulat adalah char, int, short dan long. Sedangkan yang lainnya berhubungan dengan bilangan pecahan.
Tipe Data Dasar Pemrograman C++
• Bahasa C menyediakan programmer dengan satu set tipe data untuk programmer menyimpan informasi dan membangun tipe data yang bukan merupakan bagian dari bahasa itu sendiri. Tipe data yang pertama kali disebut tipe built-in, dan selanjutnya disebut dengan tipe user-defined atau tipe data yang telah ditetapkan
• Tiga dasar built-in tipe ini adalah:
Character (char) seperti a,b,c,d (alphabet)
Integer (Int) seperti 1,2,3,4 (Bilangan Bulat)
Floating Point Number (float) seperti 20,12 (Bilangan real)
1. Identifier (Pengenal)
Identifier adalah suatu nama yang biasa dipakai dalam pemrograman untuk menyatakan variabel, konstanta, tipe data, dan fungsi.
Aturan untuk penulisan identifier sama dengan aturan dalam pascal, antara lain:
• Tidak boleh dimulai dengan karakter non huruf, contoh: (2x , 55) <------ salah.
(X2, XX, Var1) <----- benar.
• Tidak boleh ada spasi.
• Tidak boleh menggunakan karakter-karakter ~ ! @ # $ % ^ & * ( ) + ` - = { } [ ] : " ; ' < > ? , . / |
• Tidak boleh menggunakan reserved words yang ada dalam C++
2. Tipe Data
Berikut ini tipe data yang ada dalam C++
• Tipe data bilangan bulat:
o   Tabel Tipe Data
Adalah tipe data yang tidak mempunyai titik decimal dan tidak diperbolehkan menggunakan karakter koma antara dua bilangan.
Tipe Keterangan
o   Char
Menyatakan sebuah karakter seperti A, f, 9
o   Int
Menyatakan Bilangan bulat
o   Long
Menyatakan bilangan bulat namun jumlahnya nilainya lebih banyak dari pada biasanya, contohnya pada long int yaitu 2147483648 - 2147483647
o   Short
Menyatakan Bilangan Bulat namun dengan nilai yang normal, contohnya pada short int yaitu antara -32768 - 32767
• Tipe data bilangan real:
Tipe data bilangan real adalah bilangan yang mengandung titik decimal sehingga
tipe data ini digunakan untuk menyatakan suatu bilangan pecahan/decimal
Tipe Keterangan
o   Double
Menyatakan bilangan real dengan ketelitian tinggi (15 digit)
o   Float
Menyatakan bilangan real dengan ketelitian rendah (7 digit)

·                  Tipe data unsigned
Tipe data unsigned mirip dengan yang bukan unsigned. Bedanya adalah tipe data unsigned tidak mengenal nilai bilangan negatif (nilainya selalu posisif).
• Tipe data unsigned:
- unsigned char
- unsigned int (integer)
- unsigned short (short integer)
- unsigned long (long integer)

Contoh Program Tipe Data Menggunakan C++

#include
#include
void main()
{
int x;
float y;
char z;
double w;
x = 10;
y = 9.45;
z = 'C';
w = 3.45;
cout<<"Nilai dari x adalah : "<< x << endl;
cout<<"Nilai dari y adalah : "<< y << endl;
cout<<"Nilai dari z adalah : "<< z << endl;
cout<<"Nilai dari w adalah : "<< w << endl;
getch();
}

DECISION
Decision atau Keputusan : Merupakan suatu keadaan dalam dua nilai, yaitu true (ya) atau False (tidak).
Tujuan dari suatu decision adalah melakukan perbandingan antara dua hal atau lebih untuk kemudian melakukan eksekusi selanjutnya.
JENIS STRUKTUR SELEKSI
o   Struktur seleksi sederhana (if)
o   Struktur seleksi umum (if-else)
o   Struktur seleksi tersarang (nested if)
o   Struktur case-of

DECISION (Using IF dan else)
Pernyataan If mempunyai pengertian “jika kondisi bernilai benar, maka perintah akan dikerjakana dan jika tidak memenuhi syarat maka akan diabaikan.
Contoh program:
Kasus : tentukan besarnya nilai bilangan , 2 dan 6 yang manakah nilainya yang lebih besar.
Dari kasus diatas maka dapat dibuatkan program sebagai berikut:

#include <iostream.h>
#include <conio.h>
 void main()
                int angka;
cout<<"Program menentukan bilangan GENAP atau GANJIL";
cout<<"\nDengan menggunakan mod (%)";
cout<<"\n";

cout<<endl;
cout<<"Masukan sebuah bilangan : ";
cin>>angka;

if (angka % 2 == 0){
cout<<"Bilangan yang anda masukan adalah";
cout<<"\nBilangan GENAP.";
}else{
cout<<"Bilangan yang anda masukan adalah";
cout<<"\nBilangan GANJIL.";
}
getch();
}




 FUNGSI
Sebuah fungsi berisi sejumlah pernyataan yang dikemas dalam sebuah nama.
Selanjutnya nama ini dapat dipanggil beberapa kali di beberapa tempat dalam program.
Memudahkan dalam mengembangkan program.
Menghemat ukuran program, terutama bila ada beberapa deretan instruksi yang sama digunakan pada beberapa tempat dalam program.
Apabila fungsi tidak memiliki nilai balik, maka tipe nilai baliknya adalah void.
Fungsi tanpa nilai balik tidak memerlukan pernyataan return pada definisinya.




  ARRAY
Array adalah kumpulan data bertipe sama yang menggunakan nama sama.
Dengan mengggunakan array, sejumlah variabel dapat memakai nama yang sama.
Array dapat dibedakan menjadi :
        Array berdimensi satu
        Array berdimensi dua
        Array berdimensi banyak
Syntax :
·         Dua Dimensi :
                         tipe Nama_Array [indeks1] [indeks2] ;
                         tipe Nama_Array [indeks1] [indeks2] = { Nila i };
·         Tiga Dimensi :
                         tipe Nama_Array [indeks1] [indeks2] [indeks3];
                         tipe Nama_Array [indeks1] [indeks2] [indeks3] ={ Nilai };



·         Array 1 Dimensi
tipe nama_var[max_data];
Contoh:
int a[5];
float x[100];
char nama[25];
.
dst.
Cara mengakses data bertipe array
nama_variabel[alamat]
Misal : Array a
27
23
35
46
87
à data yang tersimpan di array
0
1
2
3
4
à alamat array (dimulai dari 0)
a[0] = 27
a[1] = 23
.
.
a[4] = 87
·         Array 2 Dimensi
Contoh deklarasi :
int a[4][5];

0
1
2
3

0
25
40
26
12

1
6
8
12
5

2
1
3
8
9

3
15
22
13
19

4
0
5
7
15







Mengakses data :
a[0][0] = 25
a[0][1] = 40
.
.
dst

PERULANGAN (Looping)
Perulangan data atau yang biasa disebut dengan “looping” adalah proses yang dilakukan secara berulang-ulang sampai batas yang ditentukan. Biasanya bila dalam perulangan tersebut tidak disertakan batasnya maka syntax akan error karena proses itu akan berulang terus hingga tak terhingga sementara variabel dalam komputer masih terbatas.
Jenis Looping:
a. For
Syntax : for (inisialisasi; syarat; penambahan) {pernyataan}

            inisialisasi        : keadaan awal dari variabel control
syarat               : ekspresi relasi yang merupakan kondisi
penambahan    : pengatur perubahan nilai variabel control

Contoh :

            for (i=0;i<10;i++)
{
p=2+i;
}

b. While
Syntax: while (kondisi) {pernyataan}
i=0      
while (i<10)
{
p=2+i;
i++;
}

c. Do While
Syntax: Do {pernyataan} While(kondisi);
Syntax : for (inisialisasi ; syarat ; penambahan) {pernyataan}

i=0
do
{
p=2+i;
i++;
}while (i<10)



Perbedaan antara FOR, WHILE, dan DO-WHILE :

·         For :
untuk mengulang suatu proses yang telah diketahui jumlahnya.
·         While : Pre Tested Loop
untuk mengulang suatu proses yang belum diketahui jumlahnya. Pengecekan kondisi akan dilakukan terlebih dahulu. Jika kondisi masih bernilai true, maka looping akan terus berlanjut.
·         Do-while : Post Tested Loop
untuk mengulang suatu proses yang belum diketahui jumlahnya. Instruksi akan dijalankan lebih dahulu, kemudian dilakukan pengecekan kondisi apabila masih bernilai true maka looping akan terus berlanjut.