Wellcome To My Blog

Pages

Senin, 07 Januari 2013

Ringkasan pertemuan mata kuliah Algoritma dan Struktur Data


Postingan ini adalah ringkasan pertemuan mata kuliah Algoritma dan Struktur Data, dimana terdiri atas beberapa materi, diantaranya:

  • Input Output



Pernyataan  cout  (dibaca  C  out)  merupakan  sebuah  fungsi di  dalam  C++, yang  digunakan  untuk  mengarahkan  data  ke  dalam  standar  output  (cetak  pada layar). Sedangkan untuk menginputkan data, dapat digunakan cin (dibaca C in).
                             cout << daftar_keluaran
                             cin >> daftar_masukan
Perintah  cout (C out) atau keluaran dapat digunakan tanpa bantuan suatu variable, contoh:
#include <iostream.h>
#include <conio.h>
void main()
{
          clrscr();
          cout<<"Hello World"<<endl;
          cout<<"Selamat Belajar C/C++ "<<endl;
          cout<<"Tekan enter untuk keluar";
          getch();
}
Perhatkan: tidak ada suatu variable apapun, tapi perintah cout masih tetap bias menampilkan keluaran ke layar.
Hasil

Perintah cin ( C in) atau masukan bisa digunakan dengan bantuan suatu variable , seperti : int, string, float, double dll, tergantung tipe data yang mau kita masukkan.
Contoh:

Perhatikan source code diatas, ini membuktikan bahwa perintah cin bias berfunsi dengan bantuan suatu variable, yaitu int a, yang fungsinya adalah memasukkan angka bulat.
Hasil


Sumber: materi preaktek algoritma dan pengetahuan saya sendiri.




  •      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-jenis perulangan :
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}
Contoh :
i=0
while (i<10)
{
p=2+i;
i++;
}
c.   DO – WHILE
Syntax :  do {
pernyataan}
while (kondisi);
Contoh :
i=0
do
{
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.
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.
Komparasi akan menghasilkan keputusan yaitu benar atau salah
STRUKTUR SELEKSI SEDERHANA ( IF )
Bentuk ini merupakan bentuk yang paling sederhana dari keseluruhan struktur seleksi yang ada. Pada bentuk ini, hanya jika komparasi memiliki niali true saja. Jadi tidak ada bentuk dari nilai seperti false.
Contoh :
Jika Nilai Siswa >= 60, maka Keterangan=‘Lulus’
Jika Nilai Siswa < 60, maka Keterangan=‘Tidak Lulus’
#include <iostream.h>
#include <stdio.h>
#include <conio.h>
void main()
{
int nilai=70 ;
if (nilai>=60)
{
cout<<”keterangan = Lulus”<<endl;
}
getch();
}
STRUKTUR SELEKSI UMUM (IF-ELSE)
Bentuk kedua ini, baik kondisi bernilai true ataupun false di ikuti proses khusus.
Tetapi yang harus diperhatikan adalah bahwa proses khusus pada keadaan true tidak mungkin akan diperoses pada keadaan false dan sebaliknya.
#include <iostream.h>
#include <stdio.h>
#include <conio.h>
void main()
{
int nilai=70 ;
if (nilai>=60)
{
cout<<”keterangan = Lulus”<<endl;
}
else
{
cout<<”Keterangan = Tidak Lulus “<<endl;
}
getch() ;
}
Keterangan program : Nilai Variabel adalah 70, atau nilai dari inputannya, dan harus selalu kamu ingat tentang Rumus dari penggunaan if-else adalah :
IF(variabel : Operator  :kondisi)
{
Maka :
}
Else
{
Maka :
}
Keterangan :  Dari penjelasan di atas bahwa setelah kita tulis Kondisi IF maka setelah itu kita masukan bentuk kondisi dari Variabel yang ingin kita buat pilihannya, dan setelah itu untuk pembanding dari variabel tadi kita menggunakan Operator  dan kemudian masukan pembanding dari nilai yang ingin kita badingkan dengan Variabel.
Sumber: http://salmanfz.wordpress.com/2012/02/29/decision-keputusan-3/

  • FUNGSI VOID

·                     Fungsi yang void sering disebut juga prosedur
·                     Disebut void karena fungsi tersebut tidak mengembalikan suatu nilai keluaran yang didapat dari hasil proses fungsi tersebut.
Ciri-ciri Program :                       
- tidak adanya keyword return.
- tidak adanya tipe data didalam deklarasi fungsi.
- menggunakan keyword void.

·                     Tidak dapat langsung ditampilkan hasilnya
·                     Tidak memiliki nilai kembalian fungsi
·                     Keyword void juga digunakan jika suatu fungsi tidak mengandung suatu parameter apapun. 
Dan berikut adalah contoh program menggunakan FUNGSI VOID :
#include <iostream.h>
#include <conio.h>
void volume(int &vol, int p, int l, int t)
{ vol = p*l*t; }
main(){
int pj,lb,tg, hsl;
cout<<"Panjang = ";cin>>pj;
cout<<"Lebar = ";cin>>lb;
cout<<"Tinggi = ";cin>>tg;
volume(hsl,pj,lb,tg);
cout<<"\nVolume = "<<hsl;
getch();
}
  •  Array 

Suatu array adalah suatu identifier yang mewakili sekelompok data yang mempunyai nama sama. Setiap data harus mempunyai tipe data yang sama (misalkan semua integer atau semua float). Setiap elemen array dibedakan dari yang lain dengan menggunakan nama array yang diikuti dengan subscript. Subscript array dalam C/C++ selalu dimulai dari nol, bukan satu. 

Setiap subscript diletakan diantara tanda kurung siku ([]). Subscript sering disebut juga index. Harga dari setiap subscript dapat berupa suatu konstanta integer, variabel integer atau suatu expression. Banyaknya subscript menentukan dimensi dari array contoh array a[15] adalah array satu dimensi, b[3][5] adalah array dua dimensi dan c[4][2][5] adalah array tiga dimensi. 

Bentuk umum dari array : 
data_type nama_array [expression-1]... ... [expression-n]; 

Berikut ini diberikan contoh mendefinisikan sebuah array charakter : 

char nama[5]; 
Kita juga dapat menginisialisasi sebuah array langsung pada saat kita mendefinisikannya : 

char nama[5] = “Budi”; 

Sintaks C++ untuk menginisialisasi string pada array karakter pada definisi char nama[5] tak dapat diterapkan pada array numeris. Sedangkan pada akhir karakter akan terdapat null untuk mengakhiri string tersebut hanyalah berlaku pada data berjenis string. Berikut ini adalah cara menginisialisasi nama[5] satu persatu tiap elemen : 

char nama[5] = { ‘B’,‘u’,’d’,’i’,’\0’ }; 

C++ akan menghitung jumlah elemennya untuk kita. Bila kita memesan array lima elemen di C++, maka jangan kita memasukan enam atau lebih dari 5 pada array. Bila hal ini kita lakukan maka akan menimpa memori yang mungkin berisi variabel lain. Berikut ini contoh definisi array numerik : 
int nilai[5] = { 15, 25, 35, 45, 55 }; 

Statemen ini memberi harga : 
nilai[0]=15, nilai[1]=25, nilai[2]=35, nilai[3]=45, nilai[4]=55 

Berikut ini akan diberikan contoh pemberian harga awal untuk array dengan dimensi lebih dari satu : 

int matrik[2][3] = { 1, 7, 5, -2, 3, -4 }; 

Array matrik[2][3] adalah array dua dimensi. Hasil dari pemberian harga awal ini adalah: 

matrik[0][0]=1 
matrik[0][1]=7 
matrik[0][2]=5 
matrik[1][0]=-2 
matrik[1][1]=3 
matrik[1][2]=-4 

Bila digunakan tanda kurung kurawal ({ }) tambahan untuk mengelompokan elemen-elemen dari harga awal dari array, maka pemberian harga awal array matrik[2][3] diatas dapat dituliskan sebagai berikut : 

int matrik[2][3] = {{1, 7, 5}, {-2, 3, -4}}; 

hasil dari pemberian harga awal array matrik[2][3] ini sama seperti contoh sebelumnya. 
Program berikut ini akan menampilkan data yang tersimpan pada sebuah variabel bukan array : 

#include 
#include 

void main() 
{ 
int n; 
float data; 
clrscr(); 

cout << "Banyaknya data : "; 
cin >> n; 

cout << endl << "Pada bagian ini adalah data yang kita ketikan" 
<< endl; 
for ( int i=0; i
{ 
cout << "Data ke-" << i << " : "; 
cin >> data; 
} 

cout << endl; 
cout << "Berikut ini adalah data yang tersimpan di variabel 
bukan array" << endl; 
for ( i=0; i
{ 
cout << "Nilai ke-" << i << " : " << data << endl; 
} 
getch(); 
} 

Keluaran programnya : 

Banyaknya data : 3 

Pada bagian ini adalah data yang kita ketikan 
Data ke-0 : 1000 
Data ke-1 : 2000 
Data ke-2 : 3000 

Berikut ini adalah data yang tersimpan di variabel bukan array 
Nilai ke-0 : 3000 
Nilai ke-1 : 3000 
Nilai ke-2 : 3000 

Program berikut ini akan menampilkan data yang tersimpan pada sebuah variabel array : 

#include 
#include 

void main() 
{ 
int n; 
float data[100]; 
clrscr(); 

cout << "Banyaknya data : "; 
cin >> n; 

cout << endl << "Pada bagian ini adalah data yang kita ketikan" 
<< endl; 
for ( int i=0; i
{ 
cout << "Data ke-" << i << " : "; 
cin >> data[i]; 
} 

cout << endl; 
cout << "Berikut ini adalah data yang tersimpan di variabel 
array" << endl; 
for ( i=0; i
{ 
cout << "Nilai ke-" << i << " : " << data[i] << endl; 
} 
getch(); 
} 

Keluaran programnya : 

Banyaknya data : 3 

Pada bagian ini adalah data yang kita ketikan 
Data ke-0 : 1000 
Data ke-1 : 2000 
Data ke-2 : 3000 

Berikut ini adalah data yang tersimpan di variabel array 
Nilai ke-0 : 1000 
Nilai ke-1 : 2000 
Nilai ke-2 : 3000 

Dari dua contoh  program diatas terlihat bahwa data yang tersimpan di variabel bukan array ketika diisikan dengan nilai maka nilai yang tersimpan adalah nilai yang terakhir. Sedangkan variabel berjenis array, datanya tersimpan dalam setiap elemen sehingga ketika diisikan dengan nilai maka nilai tersebut tersimpan sesuai dengan nilai yang diisikannya. 

Array dan Fungsi 
Suatu array dapat digunakan sebagai argumen terhadap suatu fungsi. Hal ini memungkinkan seluruh array dikirim ke fungsi. Untuk mengirim suatu array ke suatu fungsi, nama (parameter aktual) dari array tersebut harus dituliskan tanpa tanda kurung siku ( [] ) atau subscript sebagai argumen untuk memanggil fungsi itu. 
Parameter formal yang berbentuk array di dalam definisi fungsi cukup dituliskan nama array diikuti tanda kurung siku kosong ( [] ). Berikut ini merupakan contoh fungsi yang menggunakan nama array.  

#include 
#include 

const int maks = 5; 
int maksimum (int x[], int y); 

void main() 
{ 
int n, data[maks], hasil; 
clrscr(); 

cout << "Banyaknya data yang kita inginkan : "; 
cin >> n; 
for (int i=0; i
{ 
cout << "Masukan bilangan bulat ke[" << i+1 << "] : "; 
cin >> data[i]; 
} 

hasil = maksimum (data, n); 

cout << endl << "Nilai terbesarnya adalah : " << hasil << endl; 
getch(); 
} 

int maksimum (int x[], int y) 
{ 
int besar=-32000; 
for (int j=0; j
{ 
if ( x[j] > besar ) 
{ besar = x[j]; } 
} 
return besar; 
} 

Keluaran programnya : 

Banyaknya data yang kita inginkan : 5 
Masukan bilangan bulat ke[1] : 6 
Masukan bilangan bulat ke[2] : -10 
Masukan bilangan bulat ke[3] : 2 
Masukan bilangan bulat ke[4] : -1 
Masukan bilangan bulat ke[5] : 4 

Nilai terbesarnya adalah : 6 


Perhatikan cara penulisan argumen yang berbentuk array untuk memanggil fungsi maksimum() di dalam main() : 

hasil = maksimum (data, n); 

dan penulisan definisi fungsi yang menggunakan argumen berbentuk array : 

int maksimum (int x[], int y) 
Sumber: http://yanekaybr.blogspot.com/2011/12/array.html

0 komentar:

Terimakasih Sudah Berkunjung