Minggu, 28 Desember 2008

Kumpulan tugas 13, 14 dan soal word

*Tugas Days 13*
1.Deret Fibonacci
Listing:


Flowchart:


ALgoritma:
1) Start .
2) Deklarasikan variabel fibo[100], i, dan n dengan tipe integer .
3) Masukkan nilai n .
4) Beri nilai awal fibo[0] dan fibo[1] sama dengan 1 .
5) Cetak fibo[0] dan fibo[1] .
6) Beri nilai awal i=2 .
7) Cek apakah nilai i kurang dari n ? .
8) Jika ya,
i. Maka hitung nilai fibo[i]=fibo[i-1]+fibo[i-2] .
ii. Cetak hasil fibo[i] dan beri nilai ++ pada i .
iii. Cek apakah nilai i yang sekarang kurang dari n ? .
9) Jika tidak, maka akhiri program ( End ) .


Hasil Eksekusi:




2.Konversi dari biner ke desimal
Listing:


Flowchart:




Algoritma:
1) Start
2) Deklarasikan i, j, hasil, des=0, jumkar, bilpang, dan angka dengan tipe integer dan input[100] dengan tipe character .
3) Masukkan nilai inputan .
4) Hitung jumkar = strlen(input) .
5) Apakah jumkar kurang dari sama dengan 8 ?
6) Jika tidak, maka cetak “Batas nilai hanya sampai 11111111 saja” dan akhiri program ( End ) .
7) Jika ya,
i. Beri nilai awal i = 0 .
ii. Cek apakah nilai i kurang dari sama dengan input[i] ?
iii. Jika tidak, maka cetak hasil des dan akhiri program .
iv. Jika ya,
1. Cek apakah nilai input[i]<48 atau input[i]>49 ?
a. Jika ya, maka cetak “Basis 2 yang anda masukkan salah” dan akhiri program .
b. Jika tidak, beri nilai awal bilpang=1 dan dilanjutkan dengan proses selajutnya .
c. Beri nilai awal j=I .
d. Cek apakah j<(jumkar-1) ? .
e. Jika ya, maka hitung bilpang=bilpang*2 dan beri nilai ++ pada j . Lalu cek apakah nilai j yang sekarang <(jumkar-1) ? .
f. Jika tidak, hitung angka=input[i]-48, hasil=angka*bilpang, dan des=des+hasil . Lalu tambahkan nilai ++ pada i . Sekarang cek apakah nilai i yang sekarang kurang dari sama dengan input[i] ? .
2. Cetak hasil dari konversi desimal dan akhiri program .


Hasil Eksekusi:




3.Konversi dari desimal ke biner
Listing:


Flowchart:



ALgoritma:
1) Start .
2) Deklarasikan variabel des, n, i, a[10] dengan tipe integer .
3) Masukkan nilai des .
4) Cek apakah des <= 255 ? .
5) Jika tidak, Cetak “Batas yang anda masukkan salah !!!” dan akhiri program (End).
6) Jika ya,
Hitung nilai a[i]=dec%2, dec=dec/2, dan beri nilai ++ pada i .
Cek apakah des !=0 ? .
1. Jika ya, hitung nilai a[i]=dec%2, dec=dec/2, dan beri nilai ++ pada i .
2. Jika tidak, cetak “Konversi dari Desimal ke Biner adalah ” dan dilanjutkan dengan proses berikutnya .
3. Beri nilai awal n=i-1 .
4. Cek apakah nilai n>=0 ? .
a. Jika tidak, maka akhiri program (End) .
b. Jika ya, cetak hasil n dan beri nilai -- pada n serta hitung apakah nilai n yang sekarang >= 0 ? .


Hasil Eksekusi:






*Tugas Days 14*
1.Bilangan prima
Listing:


Flowchart:


ALgoritma:
1) Start
2) Deklarasikan variabel bil, i, dan faktor dengan tipe integer .
3) Masukkan nilai bil .
4) Beri nilai awal factor = 0 dan i = 1 .
5) Cek apakah nilai i kurang dari sama dengan bil ?
6) Jika ya,
i. Cek apakah sisa bagi bil dengan i sama dengan 0 ?
I. Jika ya,
a. maka beri nilai ++ pada faktor dan i .
b. Cek apakah nilai i sekarang kurang dari sama dengan bil ?
II. Jika tidak, maka beri nilai ++ pada i dan cek apakah nilai i yang sekarang kurang dari sama dengan bil ? .
7) Jika tidak,
i. Maka cek apakah nilai faktor == 2 ? .
I. Jika ya, maka cetak “Bilangan Prima” dan akhiri program (End) .
II. Jika tidak, maka cetak “Bukan Bilangan Prima” dan akhiri program (End) .

Hasil Eksekusi:


2.Penjumlahan Matriks
Listing:



Flowchart:


ALgoritma:
1) Start .
2) Deklarasikan variabel barisA, barisB, kolomA, kolomB, A[6][6], B[6][6], C[6][6], i, dan j dengan tipe integer .
3) Masukkan jumlah baris dan kolom Matriks A dan B .
4) Masukkan angka pada Matriks A .
5) Masukkan angka pada Matriks B .
6) Penjumlahan Matriks akan dilakukan dan hasilnya akan di simpan pada Matriks C
7) End .

Hasil Eksekusi:



3.Perkalian Matriks
Listing:


Flowchart:


ALgoritma:
1) Start.
2) Deklarasikan variabel barisA, barisB, kolomA, kolomB, A[6][6], B[6][6], C[6][6], i, j, dan k dengan tipe integer .
3) Masukkan jumlah baris dan kolom Matriks A dan B .
4) Masukkan angka pada Matriks A .
5) Masukkan angka pada Matriks B .
6) Perkalian Matriks akan dilakukan dan hasilnya akan di simpan pada Matriks C .
7) End.

Hasil Eksekusi:




*Tugas soal d word*
1.Segitiga
Listing:



Flowchart:


ALgoritma:
1) Start .
2) Deklarasikan variable i, j, dan n dengan tipe data integer .
3) Masukkan nilai n .
4) Cek apakah nilai n kurang dari sama dengan 20 ? .
5) Jika tidak, maka cetak “Inputan melebihi batas” dan akhiri program ( End ) .
6) Jika ya, maka beri nilai awal i=1 .
7) Cek apakah nilai i kurang dari sama dengan n ?
8) Jika tidak, maka akhiri program ( End ) .
9) Jika ya, beri nilai awal j=1 .
10) Cek apakah nilai j kurang dari sama dengan i ?
11) Jika ya, maka cetak “ * ” dan beri nilai ++ pada j . Lalu cek apakah nilai j sekarang kurang dari sama dengan i ?
12) Jika tidak, maka beri nilai ++ pada i dan cek apakah nilai i sekarang kurang dari sama dengan n ?

Hasil Eksekusi:



2.Segitiga terbalik
Listing:


Flowchart:


ALgoritma:
1) Start .
2) Deklarasikan variable i, j, dan n dengan tipe data integer .
3) Masukkan nilai n .
4) Cek apakah nilai n kurang dari sama dengan 20 ? .
5) Jika tidak, maka cetak “Inputan melebihi batas” dan akhiri program ( End ) .
6) Jika ya, maka beri nilai awal i=1 .
7) Cek apakah nilai i kurang dari sama dengan n ?
8) Jika tidak, maka akhiri program ( End ) .
9) Jika ya, beri nilai awal j=n .
10) Cek apakah nilai j lebih dari sama dengan 1 ?
11) Jika ya, maka cetak “ * ” dan beri nilai -- pada j . Lalu cek apakah nilai j sekarang lebih dari sama dengan 1 ?
12) Jika tidak, maka beri nilai ++ pada i dan cek apakah nilai i sekarang kurang dari sama dengan n ?

Hasil Eksekusi:



3.Persegi
Listing:


Flowchart:


ALgoritma:
1) Start .
2) Deklarasikan variable i, j, dan n dengan tipe data integer .
3) Masukkan nilai n .
4) Cek apakah nilai n kurang dari sama dengan 20 ? .
5) Jika tidak, maka cetak “Inputan melebihi batas” dan akhiri program ( End ) .
6) Jika ya, maka beri nilai awal i=1 .
7) Cek apakah nilai i kurang dari sama dengan n ?
8) Jika tidak, maka akhiri program ( End ) .
9) Jika ya, beri nilai awal j=1 .
10) Cek apakah nilai j kurang dari sama dengan n ?
11) Jika ya, maka cetak “ # ” dan beri nilai ++ pada j . Lalu cek apakah nilai j sekarang kurang dari sama dengan n ?
12) Jika tidak, maka beri nilai ++ pada i dan cek apakah nilai i sekarang kurang dari sama dengan n ?

Hasil Eksekusi:


4.Persegi dan Segitiga
Listing:



Flowchart:


ALgoritma:
1) Start .
2) Deklarasikan variable i, j, dan n dengan tipe data integer .
3) Masukkan nilai n .
4) Cek apakah nilai n kurang dari sama dengan 20 ? .
5) Jika tidak, maka cetak “Inputan melebihi batas” dan akhiri program ( End ) .
6) Jika ya, maka beri nilai awal i=1 .
7) Cek apakah nilai i kurang dari sama dengan n ?
8) Jika tidak, maka akhiri program ( End ) .
9) Jika ya, beri nilai awal j=1 .
10) Cek apakah nilai j kurang dari sama dengan n ?
11) Jika ya, maka cek apakah sisa bagi n dengan 2 sama dengan 0 ? .
i. Jika ya, maka cetak “ # ” dan beri nilai ++ pada j, lalu cek apakah nilai j sekarang kurang dari sama dengan n ?
ii. Jika tidak, maka cetak “ * ” dan beri nilai ++ pada j, lalu cek apakah nilai j sekarang kurang dari sama dengan n ?
12) Jika tidak, maka cetak “Enter” dan beri nilai ++ pada i dan cek apakah nilai i sekarang kurang dari sama dengan n ?

Hasil Eksekusi:



5.Pagar dan Bintang
Listing:


Flowchart:


ALgoritma:
1) Start .
2) Deklarasikan variable i, j, dan n dengan tipe data integer .
3) Masukkan nilai n .
4) Cek apakah nilai n kurang dari sama dengan 20 ? .
5) Jika tidak, maka cetak “Inputan melebihi batas” dan akhiri program ( End ) .
6) Jika ya, maka beri nilai awal i=1 .
7) Cek apakah nilai i kurang dari sama dengan n ?
8) Jika tidak, maka akhiri program ( End ) .
9) Jika ya, beri nilai awal j=1 .
10) Cek apakah nilai j kurang dari sama dengan n ?
11) Jika ya, maka cek apakah sisa bagi i dengan 2 sama dengan 0 ? .
i. Jika ya, maka cetak “ # ” dan beri nilai ++ pada j, lalu cek apakah nilai j sekarang kurang dari sama dengan n ?
ii. Jika tidak, maka cetak “ * ” dan beri nilai ++ pada j, lalu cek apakah nilai j sekarang kurang dari sama dengan n ?
12) Jika tidak, maka cetak “Enter” dan beri nilai ++ pada i dan cek apakah nilai i sekarang kurang dari sama dengan n ?

Hasil Eksekusi:



6.Jajar Genjang
Listing:


Flowchart:


ALgoritma:
1) Start .
2) Deklarasikan variable i, j, dan n dengan tipe data integer .
3) Masukkan nilai n .
4) Cek apakah nilai n kurang dari sama dengan 10 ? .
5) Jika tidak, maka cetak “Inputan melebihi batas” dan akhiri program ( End ) .
6) Jika ya, maka beri nilai awal i=n .
7) Cek apakah nilai i lebih dari sama dengan 1 ? .
8) Jika tidak, maka akhiri program ( End ) .
9) Jika ya, beri nilai awal j=1 .
10) Cek apakah nilai j kurang dari i ? .
11) Jika ya, maka cetak “Spasi” dan beri nilai ++ pada j . Sekarang cek apakah nilai j yang sekarang kurang dari i ? .
12) Jika tidak, maka beri nilai awal j=1 .
13) Cek apakah j kurang dari sama dengan n ? .
14) Jika ya, maka cetak “ # “ dan beri nilai ++ pada j . Sekarang cek apakah nilai j yang sekarang kurang dari n? .
15) Jika tidak, maka cetak “ Enter “ dan beri nilai -- pada i . Sekarang cek apakah nilai i yang sekarang lebih dari sama dengan 1 ?

Hasil Eksekusi:



7.Ganjil dan Genap
Listing:


Flowchart:



ALgoritma:
1) Start .
2) Deklarasikan variable i, dan n dengan tipe data integer .
3) Masukkan nilai n .
4) Cek apakah nilai n kurang dari sama dengan 5000 ? .
5) Jika tidak, maka cetak “Inputan melebihi batas” dan akhiri program ( End ) .
6) Jika ya, maka cek apakah nilai sisa bagi n dengan 2 sama dengan 0 ? .
i. Jika ya,
1) Maka beri nilai awal i=2 .
2) Cek apakah nilai i <= n ? .
3) Jika ya, maka cetak nilai i dan beri nilai +=2 pada i . Sekarang cek apakah nilai i <= n ? .
4) Jika tidak, maka akhiri program ( End ) .
ii. Jika tidak,
1) Maka beri nilai awal i=1 .
2) Cek apakah nilai i <= n ? .
3) Jika ya, maka cetak nilai i dan beri nilai +=2 pada i . Sekarang cek apakah nilai i <= n ? .
4) Jika tidak, maka akhiri program ( End ) .

Hasil Eksekusi:


8.Deret Bilangan
Listing:


Flowchart:


ALgoritma:
1) Start .
2) Deklarasikan variabel i, j=0, dan n dengan tipe integer .
3) Beri nilai awal i=1 .
4) Cek apakah i <= n ?
5) Jika ya,
i. Beri nilai ++ pada j .
ii. Cek apakah sisa bagi i dengan 10 sama dengan 0 ?
1. Jika ya, maka beri nilai awal j=0 lalu cetak hasil j dan beri nilai ++ pada i
2. Jika tidak, maka cetak nilai j dan beri nilai ++ pada i .
iii. Sekarang cek apakah nilai i <= n ? .
6) Jika tidak, maka akhiri program

Hasil Eksekusi:



Minggu, 30 November 2008

Tugas Days 11

NO. 1 MEMBALIK BILANGAN.....
LISTING:

#include
main()
{
int nbil,bil,bagi=1000;
printf("Program Memilah Bilangan\n");
printf("************************\n\n");
printf("Masukkan angka sembarang,maksimal 9999 :");scanf("%d",&bil);
printf("\nBila dipilah akan menjadi :\n\n");
if(bil>0)
{
while((bil>0)&&(bil<9999))
{
nbil=bil/bagi;bil=bil%bagi;
if(nbil!=0)printf("%d\t",nbil*bagi);
bagi=bagi/10;
}
}
else if(bil<0)
{
while(bil!=0)
{
nbil=bil/bagi;bil=bil%bagi;
if(nbil!=0)printf("%d\t",nbil*bagi);
bagi=bagi/10;
}
}
else printf("Bil tidak bisa dipilah\n");
}

FLOWCHART:


ALGORITMA:
1.Mulai.
2.Masukkan 2 angka atau lebih yang membentuk sebuah bilangan yang akan dibalik.
3.Balik angka atau bilangan dengan cara: susun angka dari yang paling akhir menuju ke awal.
4.Tampilkan hasil.
5.Selesai.

Hasil:



2. Membalikkan Kalimat....
Listing:

#include
main()
{
char kata[100];
int i,j,jumlah;
puts("masukkan kata : ");gets(kata);
jumlah=0;
for(i=0;kata[i];i++)
{
jumlah=jumlah++;
}
printf("\n");
printf("jika dibalik\n");
for(j=jumlah-1;j>=0;j--)
{
printf("%c",kata[j]);
}
printf("\n\n");
}

Flowchart:



Algoritma:
1.Mulai.
2.Masukkan kata atau kalimat yang akan dibalik.
3.Balik bilangan dengan cara: susun huruf dari kata atau kalimat tersebut, mulai dari akhir sampai ke awal.
4.Tampilkan hasil.
5.Selesai.

Hasilnya:



nO.3 Memilah Bilangan
Listing:

#include
main()
{
int nbil,bil,bagi=1000;
printf("Program Memilah Bilangan\n");
printf("************************\n\n");
printf("Masukkan angka sembarang,maksimal 9999 :");scanf("%d",&bil);
printf("\nBila dipilah akan menjadi :\n\n");
if(bil>0)
{
while((bil>0)&&(bil<9999))
{
nbil=bil/bagi;bil=bil%bagi;
if(nbil!=0)printf("%d\t",nbil*bagi);
bagi=bagi/10;
}
}
else if(bil<0)
{
while(bil!=0)
{
nbil=bil/bagi;bil=bil%bagi;
if(nbil!=0)printf("%d\t",nbil*bagi);
bagi=bagi/10;
}
}
else printf("Bil tidak bisa dipilah\n");
}

Flowchart:


Algoritma:
1.Mulai.
2.Masukkan bilangan yang akan dipilah.
3.Susunan bilangan: awal merupakan susunan bilangan yang satuannya paling besar. Diikuti susunan bilangan yang lebih kecil. Contoh: ribuan-ratusan-puluhan-satuan.
4.Tampilkan hasil.
5.Selesai.


Hasilnya:



No.4 Mengecek apakah inputan termasuk polindrom atau bukan.......
Listing:

#include
main()
{
int i,jum=0,k,sama;char kar[100],kar2[100];
printf("Program membalik kalimat\n\n");
printf("Masukkan kalimat :");gets(kar);
for(i=0;kar[i];i++)
{
jum=jum++;
}

printf("\nSetelah dibalik :\n");
k=0;
for(i=jum-1;i>=0;i--)
{
printf("%c",kar[i]);
kar2[k]=kar[i];
k++;
}
printf("\n");
sama=0;
for(i=0;i {
if(kar[i]==kar2[i])sama++;
}
if(sama==jum)printf("palindrom\n");
else
printf("Bukan palindrom\n");
printf("\n\n");
}

Flowchart:


Algoritma:
1.Mulai.
2.Masukkan kata atau kalimat yang akan dibalik.
3.Balik kata atau kalimat dengan cara: susun huruf dari kata atau kalimat tersebut, mulai dari akhir sampai ke awal.
4.Tampilkan hasil.
5.Apakah merupakan PALINDROM?
6.Jika YA, tampilkan hasil dengan tulisan PALINDROM.
7.Jika TIDAK, tampilkan hasil dengan tulisan BUKAN PALINDROM.
8.Selesai.

Hasilnya: