Sabtu, 03 Januari 2009

Tugas Algoritma

1. Definisi:

Lokal Variabel :- Variabel yang digunakan hanya dalam salah satu blok program itu sendiri.- dideklarasikan dalam salah satu blok program itu sendiri.- hanya dikenal dalam blok program itu sendiri.

Global Variabel : - Variabel yang digunakan dalam seluruh blok program. - umumnya harus di deklarasikan terlebih dahulu diawal program setelah ‘preprocessor directive’- berada diluar blok program, dan dapat dikenali dalam seluruh program.- Untuk membedakan dengan Lokal Variabel dapat digunakan tanda ‘::’ didepan Global Variabel dalam blok program.sehingga tidak menimbulkan kebingungan / kerumitan dalam struktur program itu sendiri.

Contoh Programnya :




2. Program Fibonaci :

- Cara Rekursif :
// Program Fungsi Rekursif Fibonaci
#include
#include
using namespace std;
long fibonaci(long n)
{
if ( n==1 n==2 )return (1);
else
return fibonaci(n-1)+fibonaci(n-2);
}
int main ()
{
int x;
cout << "Mencari Nilai Fibonaci" << endl; cout << "Masukkan Nilai X : ";
cin >> x;
cout << "Nilai Fibonaci dari " << x << " = " << fibonaci(x); cout << endl;
return 0;
}
Cara Literatif :
// Program Literatif Fibonacci
#include
#include
using namespace std;
int main ()
{
int x,fibonacci=0,f0=0,f1=1;
cout << "Mencari Nilai Fibonaci" << endl;
cout << "Masukkan Nilai X : ";
cin >> x;
for ( int i=0 ; i<=x ; i++ ) { if ( i==0 i==1 ) { fibonacci=i;
}
else { fibonacci=f0+f1; f0=f1; f1=fibonacci;
}
}
cout << "Nilai Fibonaci dari " << x << " = " << fibonacci << endl;
return 0;
}
3. Menara Hanoi
1. Algoritma :
Judul
Algoritma Menara Hanoi Deklarasin : integerasal : charbantu : chartujuan : char
Deskripsi read (n)asal <- “Tower Asal”
bantu <- “Tower Bantu”
tujuan <- “Tower Tujuan”
pindahkan (n,asal,bantu,tujuan)
jika n > 0
pindahkan (n-1,asal,tujuan,bantu)
write (”Pindahkan piringan “,n,” dari “,asal,” ke “,tujuan)
pindahkan (n-1,bantu,asal,tujuan)

2. Flowchart


3. Programnya :
// Program C++
Menara Hanoi dengan rekursi
#include
using namespace std;
void pindahkan( int n, char *asal , char *bantu , char *tujuan )
{
if( n>0 )
{
pindahkan( n-1, asal , tujuan , bantu );
// pindahkan piringan n-1 dari asal ke bantu
cout << "Pindahkan piringan " << n << " dari " << asal << " ke " << tujuan << endl;
// pindahkan piringan dari asal ke tujuanpindahkan( n-1, bantu , asal, tujuan );
// pindahkan piringan n-1 dari bantu ke tujuan
}
}
int main() { cout << "Program C++ untuk menyelesaikan masalah Menara Hanoi" << endl;
cout << "Masukkan Jumlah Piringan : ";
int n;
cin >> n;pindahkan ( n , "Menara Asal" , "Menara Bantu" , "Menara Tujuan" );
return 0;
}

Tidak ada komentar: