Minggu, 23 Desember 2007

Algoritma & Flowchart pertemuan 13 dan 14

Algoritma dan Flowchart

Mencetak deret fibonanci

Algoritma:

  1. Deklarsikan variable array fibo[] sebagai deret fibonanci, i sebagai iterasi dan n sebagai jumlah deret yang akan dicetak user.
  2. Inputkan n sebagai banyaknya bilangan fibonancci yang akan ditampilkan
  3. Tetapkan nilai fibo[0] dengan 0
  4. Tetapkan nilai fibo[1] dengan 1
  5. Cetaklah nilai dari fibo[0]
  6. Cetaklah nilai dari fibo[1]
  7. Berikan nilai 2 pada i, selama i kurang dari n maka kerjakan langkah ke 8-10
  8. Tambahkan nilai pada variable fibo indeks ke-[i-1] dengan nilai pada fibo indeks ke-[i-2] den nyatakan dalam variable fibo indeks ke-i
  9. Cetak nilai variable fibo[i]
  10. Naikkan nilai i dengan 1
  11. Program selesai

Flowchart:


Algotitma dan Flowchart

Mengkonversi bilangan biner ke bilangan desimal

Maksimal 11111111

Algoritma:

1. Deklarasikan variabel bil sebagai bilangan yang akan dikonversi, bin sebagai penampung bilangan biner,hsl sebagai hasil dari konversi, dan i sebagai pangkat, dan stack sebagai stack

2. Inputkan bilangan dan nyatakan dalam variabel bil

3. Konfirmasi jika bilangan tidak kurang dari atau sama dengan 11111111 maka kembali ke langkah 2, bila ya maka lanjutkan ke langkah4

4. Hitung sisa hasil bagi antara nilai pada bil dengan 10 kemudian nyatakan ke bin

5. Konfirmasi jika hasil baginya sama dengan 0 atau sama dengan 1maka kerjakan langkah 6 jika tidak kembali ke langkah 2

6. Bagi nilai bil dengan 10 nyatakan dalam bil

7. Push nilai pada bin dan simpan ke stack

8. Konfirmasi apakah nilai pada bil=0, jika ya maka lanjutkan langkah ke 9 jika tidak maka kembali ke langkah 4

9. Selama stack belum kosong lakukan langkah ke10-12

10. Pop stack dan isi ke bin

11. Tambahkan nilai pada hasil dengan hasil kali antara nilai pada bin dengan 2 pangkat i

12. Tambahkan i dengan 1

13. Kemudian cetak hsl

14. Program selesai

Flowchart


Algoritma dan flowchart

Mengkonversi bilangan desimal ke bilangan biner

Algoritma

  1. Deklarasikan variabel bil sebagai bilangan yang, bin sebagi variabel array penampung nilai biner, i dan y sebagai iterai berikan nilai 0 pada y.
  2. Input bilangan yang akan dikonversi nyatakan dalam bil
  3. Konfirmasi jika bilangan inputan kurang dari atau sama dengan 255, maka lakukan langkah 4, jika tidak kembali ke langkah 2
  4. Berikan nilai 0 pada i, selama nilai dari bil tidak sama dengan 0, maka kerjakan langkah ke 5
  5. Hitung sisa hasil bagi nilai pada variabel bil dengan 2 nytakan dalam variabel bin pada indeks ke-i
  6. Bagi nilai pada variabel bil dengan 2
  7. Naikkan nilai pada i dengan 1
  8. Naikkan nilai y dengan 1
  9. Kurangi y dengan 1 nyatakan dalam i, selma i lebih dari atau sama dengan 0 lakukan langkah ke-10
  10. Cetak bin indeks ke[i]

Flowchart


Algoritma dan flowchart

Menentukan bilangan prima

Algoritma :

  1. Deklarasikan variabel bil sebagai bilangan yang diinputkan user, i sebagai iterasi dan n sebagai hasil proses
  2. Inputkan bilngan nyatakan dalam bil
  3. Konfirmasi apakah bilangan kurang dari atau sama dengan 0, jika ya maka cetak persan ”Bukan Bilangan Prima”, jika tidak maka lanjtkan langkah ke ke-4
  4. Berikan nilai 2 pada i, selama i kurang dari atau sama dengan bil lakukan langkah ke-5 sampai 7
  5. Hitung sisa bagi bil dengan i nyatakan dalam n
  6. Konfirmasi apakah n/sisa bagi sama dengan 0, jika ya maka cetak pesan ”bukan bilangan prima” jika tidak maka cetak pesan ”bilangan prima”
  7. Program selesai

Flowchart




Algoritma dan flowchart

Menghitung penambahan matrik

Algoritma:

  1. Deklarasikan variabel ordo sebagai ordo matrik, variabel array mat_a[][], mat_b[][] sebagai matrik a dan matrik b, i dan j sebagai iterasi baris dan kolom, dan hsl[][] sebagai hasil
  2. Inputkan ordo matrik nyatakan dalam variabel ordo
  3. Cetak ”matrik A”
  4. Berikan nilai 0 pada i, selama i kurang dari ordo kerjakan langkah 5 sampai6
  5. Berikan nilai 0 pada j, selama j kurang dari ordo kerjakan langkah 6
  6. Inputkan nilai matrik a indeks ke i dan indeks ke-j nyatakan dalam mat_a[i][j]
  7. Naikkan nilai i dengan 1
  8. Naikkan nilai j dengan 1
  9. Cetak ”Matrik B”
  10. Berikan nilai 0 pada i, selama i kurang dari ordo kerjakan langkah 11 sampai 12
  11. Berikan nilai 0 pada j, selama j kurang dari ordo kerjakan langkah 12
  12. Inputkan nilai matrik a indeks ke i dan indeks ke-j nyatakan dalam mat_b[i][j]
  13. Naikkan nilai i dengan 1
  14. Naikkan nilai j dengan 1
  15. Berikan nilai 0 pada i, selama i kurang dari ordo kerjakan langkah 17 sampai 18
  16. Berikan nilai 0 pada j, selama j kurang dari ordo kerjakan langkah 18
  17. Tambahkan nilai mat_a indeks ke-i dan j dengan mat_b indeks ke-i dan j nyatakan dalam variabel hsl indeks kei dan j
  18. Cetak hsl
  19. Naikkan nilai i dengan 1
  20. Naikkan nilai j dengan 1
  21. Program selsesai

Flowchart:



Algoritma dan flowchart

Menghitung Perkalian Matriks

Algoritma :

1. Deklarasikan variable i, j dan k untuk iterasi, bar_a untuk jumlah baris pada matriks A, kol_a untuk jumlah kolom pada matriks A, bar_b untuk jumlah baris pada matriks B, kol_b untuk jumlah kolom pada matriks B, mat_a sebagai penampung nilai matriks A, mat_b sebagai penampung nilai matriks B, mat_c sebagai penampung hasil perkalian kedua matriks.

2. Masukkan jumlah baris pada matriks A, nyatakan ke variable brs_a, jumlah kolom pada matriks A lalu nyatakan ke variable klm_a, jumlah baris pada matriks B lalu nyatakan ke variable brs_b, serta jumlah kolom pada matriks B lalu nyatakan ke variable klm_b.

3. Bila nilai pada brs_a tidak sama dengan nilai pada klm_b atau nilai pada klm_a tidak sama dengan nilai pada brs_b maka kembali ke langkah 2, bila tidak maka lakukan langkah 4.

4. Cetak “ Nilai matriks A ”

5. Berikan nilai 0 pada variable i, selama nilai pada i kurang dari jumlah baris pada matriks A lakukan langkah 6-9.

6. berikan nilai 0 pada variable j. Selama j kurang dari jumlah kolom pada matriks A lakukan langkah 7-9.

7. Masukkan nilai matriks pada indeks ke-i dan ke-j, nyatakan ke mat_a[i][j].

8. Naikkan nilai variable i dengan 1.

9. Naikkan nilai variabel j dengan 1.

10. Cetak “ Nilai matriks B ”

11. berikan niali 0 pada variabel i, selama nilai pada i kurang dari jumlah baris pada matriks B lakukan langkah 12-15

12. berikan nilai 0 pada variabel k, selama k kurang dari jumlah kolom pada matriks B lakukan langkah 13-15.

13. Masukkan nilai matriks pada indeks ke-i ke-j dan nyatakan ke mat_b[i][j].

14. Naikkan nilai variable k dengan 1.

15. Naikkan nilai variabel j dengan 1.

16. berikan niali 0 pada variabel i, selama i kurang dari jumlah baris pada matriks A lakukan langkah 17-23.

17. berikan niali 0 pada variabel j, selama nilai pada j kurang dari jumlah kolom pada matriks B lakukan langkah 18 - 22.

18. Isi hsl pada indeks ke-i dan ke-k dengan 0.

19. Berikan nilai 0 pada variabel k, selama k kurang dari jumlah baris pada matriks B lakukan langkah 20 - 21.

20. Tambahkan nilai pada hsl indeks ke-i ke-j dengan hasil kali dari nilai pada mat_a pada indeks ke-i ke-k dengan nilai pada mat_b pada indeks ke-k ke-j kemudian nyatakan ke hsl pada indeks ke-k ke-j.

21. Naikkan nilai k dengan 1.

22. Naikkan nilai j dengan 1.

23. Naikkan nilai i dengan 1

24. berikan niali 0 pada variabel i, selama nilai i kurang dari jumlah baris pada matriks A lakukan langkah 25-28.

25. berikan niali 0 pada variabel k, Selama nilai k kurang dari jumlah kolom pada matriks B lakukan langkah 26 - 27.

26. Cetak nilai pada hsl indeks ke-i ke-j.

27. Naikkan nilai k dengan 1

28. Naikkan nilai k dengan 1

Flowchart :



Label:

Sabtu, 01 Desember 2007

Flowchart Tumpukan bilangan

Algoritma

1. Deklarasikan variable i, j, n untuk bilangan maksimal, klm untuk jumlah kolom, Definisikan variabel brs, klm, dan n dengan tipe integer. Tentukan nilai awal variabel kol dengan nilai 1.

2. Masukkan bilangan maksimal (n) yang akan ditampilkan.

3. Proses perulangan untuk brs sama dengan satu sampai dengan n :

a. Proses looping untuk klm sama dengan 1 sampai dengan klm :

cetak nilai pada variabel brs.

b. Tambahkan harga pada variebel kol dengan 2 dan nyatakan ke variabel kol.



Kalkulator sederhana
Flowchart

Algoritma
    1. Definisikan pil sebagai pilihan, bil1 dan 2 sebagai bilangan inputan pertama dan kedua, hsl sebagai hasil
    2. inputkan bilangan pertama
    3. inputkan bilangan kedua
    4. Konfirmasikan pilihan operator, pil 1 apabila memilih operator “+”, 2 jika memilih operator “-”, dan 3 untuk memilih operator “*”
    5. jika pilihan adalah 1 maka lakukan proses perhitungan hsl=bil1+bil2 kemudian ke langkah 8
    6. jika pilihan adalah 2 maka lakukan proses perhitungan hsl=bil1-bil2 kemudian ke langkah 8
    7. hitung hsl=bil1*bil2
    8. Tampilkan hasil perhitungan
    9. program selesai

Triangular
Flowchart

Algoritma

1. Deklarasikan variable i untuk perulangan, triang untuk menghitung triangular, n untuk jumlah triangular. Tentukan nilai awal variabel i dan tri dengan nilai 0.

2. Masukkan jumlah triangular atau jumlah bola yang berada pada urutan paling bawah ( n ).

3. Proses looping untuk i sama dengan satu sampai dengan n :

jumlahkan nilai pada variabel triang dengan nilai pada variabel i dan nyatakan ke dalam variabel triang.

4. Cetak nilai yang ada pada variabel triang.

5. Proses selesai


Membalik susunan angka
Flowchart

Algoritma

1. Deklarasikan variable bil untuk bilangan yang diinputkan, i untuk iterasi, dan jml untuk menghitung jumlah karakter bilangan, inisialisasikan jum=0.

2. Masukkan bilangan.

3. Proses perulangan untuk i sama dengan 0 sampai dengan isi dari variabel bil pada indeks ke-i:

a. Tambahkan nilai pada variabel jml dengan 1, kemudian nyatakan ke variabel jml.

b. Kembali ke langkah looping 1.

4. Proses perulangan mulai dari i sama dengan jumlah karakter sampai dengan i sama dengan 0 :

4.a Cetak isi dari varibel bil pada indeks ke-i.

4.b Kurangi nilai i dengan angka 1 dan nyatakan ke variabel i.

4.c Kembali ke langkah 4.a.

5. Program selesai



Membalik kalimat
Flowchart
Algoritma

1. Deklarasikan variable klm untuk kalimat yang diinputkan, i untuk iterasi, dan jml untuk menghitung jumlah karakter. Definisikan tipe, array of char unruk variabel klmt serta integer untuk variabel i dan jum yang diinisialisasi dengan 0.

2. Masukkan kalimat.

3. Proses perulangan untuk i sama dengan 0 sampai dengan isi dari variabel klmt pada indeks ke-i:

a. Tambahkan nilai pada variabel jml dengan 1, kemudian nyatakan ke variabel jml.

b. Kembali ke langkah looping 1.

4. Proses perulangan mulai dari i sama dengan jumlah karakter sampai dengan i sama dengan 0 :

4.a Cetak isi dari varibel klm pada indeks ke-i.

4.b Kurangi nilai i dengan angka 1 dan nyatakan ke variabel i.

4.c Kembali ke langkah 4.a.

8. Program selesai


Memilah bilangan maksimal 9999
Flowchart
Algoritma

1. Deklarasikan variable n sebagai bilangan yang diinputkan, i sebagai iterasi, sisa sebagai sisa awal, ss sebagai sisa definisikan dengan array of integer .

2. Masukkan bilangan yang ingin dipilah.

3. Konfirmasi apakah bilangan yang diinputkan berada di antara kurang dari 9999.

4. Apabila bilangan yang diinputkan lebih dari 9999, maka akan kembali ke langkah kedua (input n)

5. Konfirmasi apakah bilangan yang diinputkan berada lebih dari nol.

6. Apabila bilangan yang diinputkan kurang dari 0, maka akan kembali ke langkah kedua, (input n).

7. Namun apabila bilangan yang diinputkan sudah memenuhi syarat konfirmasi,maka akan terjadi proses looping dimulai dari i sama dengan 1 dan looping akan berjalan sampai i kurang dari 10000 atau lebih tepatnya maksimal sampai 9999 :

a. Hitung sisa bagi antara nilai pada variabel n dengan bilangan 10 dan nyatakan ke variabel sisa.

b. Kalikan nilai di variabel sisa dengan nilai i, dan nyatakan ke variabel ss pada indeks ke i.

c. Bagi bilangan dengan angka 10 dan nyatakan ke variabel n.

d. Kalikan nilai i dengan angka 10 kemudian nyatakan ke variabel i.

e. Kembali ke langkah looping 1.

6. Proses looping mulai dari i sama dengan 10000 sampai dengan 1 :

a. Cek apakah sisa pada indeks ke i tidak sama dengan 0.

b. Jika sisanya sama dengan 0, maka lanjut.

c. Bila sisanya tidak sama dengan 0, maka cetak nilai pada variabel ss dari indeks ke i dahulu, baru kemudian ke langkah selanjutnya.

d. untuk nilai yang ada pada variabel i dengan angka 10, dan nyatakan ke variabel i.

e. Kembali ke langkah looping 1.

7. Program selesai


Palindrom
Flowchart
Algoritma

1. Deklarasikan variabel, kal1 untuk kalimat yang diinputkan user, kal2 untuk copian dari klmt1, i untuk iterasi klmt 1, j untuk iterasi kalimat2 dan jum untuk menghitung jumlah karakter yang dituliskan user. Definisikan tipe array of char untuk variabel kal1 dan kal2, serta integer untuk variabel i, j dan jum. Inisialisasi nilai jml dan i dengan 0.

2. Masukkan kalimat yang ingin dibalik.

3. Proses perulangan untuk i sama dengan 0 sampai dengan isi dari variabel kal pada indeks ke-i adalah berupa karakter ’\0’ :

a. Hitung jumlah karakter dengan menambahkan nilai pada variabel jml dengan 1, kemudian nyatakan ke variabel jml.

b. Kembali ke langkah looping 1.

4. Proses perulangan mulai dari i sama dengan 0 sampai dengan i sama dengan jumlah karakter :

a. Copykan isi dari variabel kal ke variabel kal2.

b. Kembali ke langkah looping 1.

5. Kurangkan nilai pada variabel jml dengan 2, kemudian nyatakan ke variabel j untuk iterasi kal2.

6. Isi nilai i dengan 0.

7. Proses looping sampai dengan j bernilai 0 :

a. Konfirmasi apakah isi dari klmt1 pada indeks ke-i sama dengan isi dari kal2 pada indeks ke-j.

b. Bila isi dari kal1 pada indeks ke-i tidak sama dengan isi dari kal2 pada indeks ke-j, maka cetak ”Bukan palindrom” dan langsung ke langkah 9.

c. Namun apabila isi dari kal1 pada indeks ke-i sama dengan isi dari kal2 pada indeks ke-j maka lanjut ke langkah looping 4.

d. Hitung nilai j dengan mengurangkan nilai j dengan 1.

e. Hitung nilai i dengan menambahkan nilai i dengan 1.

f. Kembali ke langkah looping 1.

8. Cetak ”Palindrom”.

9. Program selesai