1. Bilangan Prima
- Listing Program
#include
main()
{
int n,i,fak=0;
puts("Program Menunjukkan Bilangan Prima");
puts("==================================");
printf("Silahkan Masukkan Bilangan = ");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
if(n%i==0)
{
fak=fak+1;
}
}
printf("Bilangan : ");
if(fak==2)
printf("%d adalah bilangan prima\n",n);
else
printf("\n%d bukan bilangan prima\n\n\n",n);
}
output
algoritma
-Masukkan bilangan
-Cari faktor bilangan tersebut dengan pembagian
-Apabila faktor dari bilangan tersebut ada 2,yaitu 1 dan bilangan itu sendiri, maka bilangan itu adalah bilangan prima
-Jika tidak maka bukan bilangan prima
-Cetak Hasil
-End
flowchart
2. Penambahan matriks
-listing program
#include
main()
{
int M1[2][2],M2[2][2],M3[2][2],i,j,k,l,a,b,c,d;
puts("Program Penjumlahan Matriks");
puts("===========================");
for(i=0;i<2;i++)
{
for(j=0;j<2;j++)
{
printf("Masukkan matrik 1[%d][%d]= ",i+1,j+1);
scanf("%d",&M1[i][j]);
}
}
printf("\n");
for(k=0;k<2;k++)
{
for(l=0;l<2;l++)
{
printf("Masukkan matrik 2[%d][%d]= ",k+1,l+1);
scanf("%d",&M2[k][l]);
M3[k][l]=M1[k][l]+M2[k][l];
}
}
printf("\n");
for(a=0;a<2;a++)
{
for(b=0;b<2;b++)
{
printf("%3d",M1[a][b]);
}
printf("\t");
for(c=0;c<2;c++)
{
printf("%3d",M2[a][c]);
}
printf("\t");
for(d=0;d<2;d++)
{
printf("%3d",M3[a][d]);
}
printf("\n");
}
printf("\n");
}
output
algoritma
1. Deklarasi variable M1[2][2],M2[2][2],M3[2][2],I,J,K,L,A,B,C,D.
2. Untuk I=0 sam pai I<2,lakukan>
a. untuk J=0 sampai J<2,lakukan>
:) Masukkan nilai M1 baris ke(j+1) kolom ke(j+1) dan nyatakan ke dalm variable M1[i][j]
:) Apakah J<2>
b. Apakah I<2>
3. cetak ganti baris(‘\n’)
4. Untuk K=0 sampai K<2>
a. Untuk L=0 sampai L<2>
:) Masukkan nilai M2 baris ke (K+2) kolom ke (L+2) dan nyakan ke dalm variable M2[K][L]
:) Hitung nilai dari M3[K][L]=M2[K][L]+M2[K][L]
:) Apakah L<2>
5. Cetak ganti baris
6. Untuk A=0 sampai A<2>
a. Untuk B=0 sampai B<2,lakukan>
:) Cetak nilai M1[A][B]
:) Apakah B<2,jika>
b. Cetak spasi (‘\t’)
c. Untuk C=0 sampai C<2>
:) Cetak nilai M2[A][C]
:) Apakah C<2,>
d, Cetak spasi(‘\t’)
e. Untuk D=0 sampai D<2>
:) Cetak nilai M2[A][D]
:) apakah D<2>
f. cetak gant baris(‘\n’)
g. Apakah A<2,bila>
7. Cetak ganti baris
8. Proses selesai
flowchart
3. perkalian matriks
-listing program
#include
main()
{
int M1[2][3],M2[3][2],M3[2][2];
int i,j,k,l,m,n,a,b,c,d,hsl;
puts("Program Perkalian Matriks");
puts("=========================");
for(i=0;i<2;i++)
{
for(j=0;j<3;j++)
{
printf("Masukkan Matrik 1 [%d][%d]= ",i+1,j+1);
scanf("%d",&M1[i][j]);
}
}
printf("\n");
for(k=0;k<3;k++)
{
for(l=0;l<2;l++)
{
printf("Masukkan Matrik 2 [%d][%d]= ",k+1,l+1);
scanf("%d",&M2[k][l]);
}
}
printf("\n");
for(m=0;m<2;m++)
{
for(n=0;n<2;n++)
{
hsl=0;
for(a=0;a<3;a++)
{
d=M1[m][a]*M2[a][n];
hsl=hsl+d;
}
M3[m][n]=d;
}
}
for(b=0;b<2;b++)
{
for(c=0;c<2;c++)
{
printf("%4d",M3[b][c]);
}
printf("\n");
}
printf("\n");
}
output
algoritma
1.
Deklarasikan variable M1[2][3],M2[3][2],M3[2][2],I,J,K,L,M,N,A,B,C,,Hsl
2.
Untuk I=0 sampai I=2,lakukan proses berikut;
1.
Untuk J=0 sampai J<3,lakukan>
Masukkan M1[I][J]
Apakah J<0,jika>
3.
Untuk K-0 sampai K<3,lakukan>
1.
Untuk L=0 sampai L<2,lakukan>
Masukkan nilaii M2[K][L]
apakah L<2?,>
2.
Apakah K<3>
4.
Untuk M=0 sampai M<2,>
1.
Untuk N=0 sampai N<2,lakukan>
1.
Inisisalisasi Hsl=0
2.
Untuk A=0 sampai A<3,lakukan>
Kalikan M1[M][A] dengan M2[A][N], kemudian assign hasilnya ke variable D ( D=M1[M][A]*M2[A][N] )
Tambahkan D dengan hasil,lalu assign ke variable Hsl(Hsl=Hsl+0)
Apakah A<3,jika>
3.
Assign Hsl ke M3[M][N] (M3[M][N]=Hsl)
4.
Apakah N<2>
2.
Apakah M<2?>
5.
Untuk B=0 sampai B<2,lakukan>
1.
Untuk C=0 sampai C<2,lakukan>
Cetak nilai M3[B][C]
Cetak ganti baris(‘\n’)
Apakah C<2?>
2.
Apakah B<2?>
6.
Cetak ganti baris(‘\n’)
7.
Proses Selesai
flowchart
Senin, 28 Desember 2009
Tugas Day 14
Diposting oleh ajeng's blog di 07.56 0 komentar
Tugas Day 13
1. Fibonacci
-Listing Program
#include
main()
{
int fib1,fib2,x,y,z;
puts("Program Deret Fibonacci");
puts("=======================");
printf("Masukkan banyaknya deret fibonacci= ");
scanf("%d",&x);
printf(“Masukkan bilangan pertama=”);
scanf(“%d”,&fib1);
printf(“Masukkan bilangan kedua=”);
scanf(“%d”,&fib2);
printf("%5d",fib1);
printf("%5d",fib2);
for(y=3;y<=x;y++)
{
z=fib1+fib2;
printf("%5d",z);
fib1=fib2;
fib2=z;
}
printf("\n");
}
output
algoritma
Inisalisasi int fib1,fib2,x,y,z
-Masukkan deret fibonacci
-masukkan bilangan pertama
-masukkan bilangan kedua
-for(y=3;y<=x;y++) -z=fib1+fib2 -Cetak z -fib1=fib2;fib2=z;
-End
Flowchart
2. Biner ke desimal
-Listing Program
#include
#include
main()
{
int bin,b=0,c=0,d,i,j;
double z=0;
int y[8];
puts("Program Konversi Biner ke Desimal");
puts("=================================");
do
{
printf("Masukkan biner= ");
scanf("%d",&bin);
}while(bin>11111111);
for(i=0;;i++)
{
if(bin==1)
{
y[i]=bin;
c=1;
break;
}
if(bin>=10)
{
y[i]=bin%10;
b=b+1;
}
bin=bin/10;
if(bin<10)
{
y[i+1]=bin;
c=c+1;
break;
}
}
d=b+c;
for(j=0;j
if(y[j]==0)
continue;
if(y[j]==1)
{
z=z+pow(2,j);
}
}
printf("Bilangan Desimalnya :");
printf("%.0f\n",z);
}
Output
Algoritma
-Masukkan bilangan biner
-Misal bilangan yang dimasukkan: 0000100
-Lakukan perhitungan 2^n*digit bilangan biner yang ada
-dimulai n=0,dari ujung kanan
-jumlahkan semua
-2^2*1=4
-maka hasilnya 4
-Cetak Hasil
-End
flowchart
3. Desimal ke biner
-Listing Program
#include
#define MAKS 100
main()
{
int x[MAKS],y,a=0,z,des;
puts("Program Konversi Desimal ke Biner");
puts("=================================");
do
{
printf("Masukkan bilangan desimal= ");
scanf("%d",&des);
}while(des>255);
for(y=0;x[MAKS];y++)
{
x[y]=des%2;
a=a+1;
des=des/2;
if(des<=0)
break;
}
printf("Bilangan Binernya :");
for(z=a-1;z>=0;z--)
{
printf("%d",x[z]);
}
printf("\n");
}
output
algoritma
-Masukkan bilangan decimal
-Bagi bilangan tersebut dengan 2
-Cetak sisa baginya 1 atau 0
-Bagi terus bilangan tersebut sampai habis atau sisanya 1
-Penulisan biner adalah tulis semua sisa hasil bagi dengan urutan terbalik
-End
flowchart
Diposting oleh ajeng's blog di 07.33 0 komentar
Tugas Day 11
1. Memilah Bilangan
- Listing Program
#include < stdio.h >
#include < stdlib.h >
main()
{
int bil,nbil,satuan=1000;
puts("===>>Program Memilah Bilangan<<===");
printf("\nMasukkan bilangan: ");
scanf("%d", &bil);
printf("Tampilannya adalah: ");
if (bil>9999)
{
printf("Masukan salah ");
exit(0);
}
while (bil>0 || bil<0)
{
nbil = bil / satuan;
bil = bil % satuan;
if(nbil>0 || nbil<0)
{
nbil=nbil*satuan;
printf("%d ", nbil);
}
satuan = satuan / 10;
}
printf("\n\n\n");
}
Output
Algoritma
a)Inisialisasi Int bil. ,nbil,sattuan=10000
b)Input bilangan
c)apakah bil>9999,jika ya maka input salah
d)jika tidak. ketika bil>0 atau bil<0, maka n bil = bil. / satuan
bil = bil % satuan
e)Apakah n bil >0 atau n bil < 0?
f)jika ya,maka n bil = n bil*satuan
g)jika tidak, maka satuan = satuan /10. kembali ke langkah d(looping)
h)cetak hasil
i)end
Flowchart
2. Membalik kalimat
-Listing Program
#include
main()
{
int i,jum=0;char kar[100];
puts("===>>Program Membalik Kalimat<<===");
printf("\nMasukkan kalimat :");
gets(kar);
for(i=0;kar[i];i++)
jum=jum++;
printf("\nSetelah dibalik :");
for(i=jum-1;i>=0;i--)
printf("%c",kar[i]);
printf("\n\n");
}
Output
Algoritma
-Inisialisasi var I,j,jumlah=0, char kal [100]
-Input kal
-i = 0
-untuk i=0;kar[i];i++
jum=jum++
-untuk i=jum-1;i>=0;i--
cetak kar
-cetak hasil
-end
Flowchart
3. Membalik Bilangan
- Listing Program
#include
main()
{
int i,j,jml;
char bil[50];
puts("===>>Program Membalik Bilangan<<===");
printf("\nInput bilangan: ");
gets(bil);
jml=0;
for (i=0;bil[i];i++)
jml=jml++;
printf("Jika dibalik menjadi:\n");
for(j=jml-1;j>=0;j--)
printf("%c",bil[j]);
printf("\n\n");
}
output
Algoritma
-Inisialisasi int i,j,jml; char bil[50];
-Masukkan bilangan
-Jml=0;
-for (i=0;bil[i];i++), maka jml=jml++;
-for(j=jml-1;j>=0;j--),cetak bil
-End
Flowchart
4. Palindrom
-Listing Program
#include
#include
main()
{
char kalimat[100],a;
int hasil;
puts("Program Kalimat Palindrom");
puts("=========================");
printf("Masukkan kalimat= ");
gets(kalimat);
a=strlen(kalimat);
hasil=palindrom(kalimat,a);
if (hasil==(a/2))
printf("Termasuk Palindrom\n");
else
printf("Bukan Palindrom\n");
}
int palindrom(char kata[100],int n)
{
int i,b=1,a=0;
for(i=0;i<(n/2);i++)
{
if(kata[i]==kata[n-b])
{
a++;
b++;
}
else
continue;
}
return a;
}
Output
Algoritma
pada Fungsi main
-Inisialisasi char kalimat[100],a; int hasil;
-a=strlen(kalimat);
-hasil=palindrom(kalimat,a);
-Jika hasil==(a/2), maka termasuk palindrom,jika tidak maka bukan palindrom
Pada Fungsi Palindrom
-Inisialisasi int i,b=1,a=0
-for(i=0;i<(n/2);i++)
*Apakah kata[i]==kata[n-b]
maka a++; b++;
*jika tidak maka continue;
-return a pada variabel hasil pada fungsi main
-End
Flowchart
Diposting oleh ajeng's blog di 06.58 0 komentar
Rabu, 16 Desember 2009
Tugas 10
1. Program kalkulator sederhana
Listing Program:
#include
main()
{
char kode;
float x,y;
printf("PROGRAM KALKULATOR SEDERHANA\n");
printf("============================\n");
printf("\tMENU\t\n");
printf("============================\n");
printf("PENJUMLAHAN[+]\t\n");
printf("PENGURANGAN[-]\t\n");
printf("PERKALIAN[*]\t\n");
printf("PEMBAGIAN[/]\t\n");
printf("============================\n");
printf("Masukkan kode operator[+,-,*,/]==> ");scanf("%c",&kode);
if(kode=='+')
{
printf("Masukkan bilangan ke-1: ");scanf("%f",&x);
printf("Masukkan bilangan ke-2: ");scanf("%f",&y);
printf("Maka hasil penjumlahan antara %.2f dan %.2f adalah %.2f",x,y,x+y);
}
else if(kode=='-')
{
printf("Masukkan bilangan ke-1: ");scanf("%f",&x);
printf("Masukkan bilangan ke-2: ");scanf("%f",&y);
printf("Maka hasil pengurangan antara %.2f dan %.2f adalah %.2f",x,y,x-y);
}
else if(kode=='*')
{
printf("Masukkan bilangan ke-1: ");scanf("%f",&x);
printf("Masukkan bilangan ke-2: ");scanf("%f",&y);
printf("Maka hasil perkalian antara %.2f dan %.2f adalah %.2f",x,y,x*y);
}
else if(kode=='/')
{
printf("Masukkan bilangan ke-1: ");scanf("%f",&x);
printf("Masukkan bilangan ke-2: ");scanf("%f",&y);
printf("Maka hasil pembagian antara %.2f dan %.2f adalah %.2f",x,y,x/y);
}
else
printf("KODE yang anda masukkan salah,OK!!!");
}
Output:
Algoritma dan flowchart:
2. Program mencetak bilangan dalam bentuk segitiga
Listing Program:
#include
main()
{
int x,a,b;
printf("Program Mencetak bilangan dalam bentuk Segitiga\n");
printf("===============================================\n");
printf("Masukkan bilangan : ");scanf("%d",&x);
for(a=1;a<=x;a++)
{
for(b=2*a-1;b>=1;b--)
printf("%d",a);
printf("\n");
}
}
Output:
Algoritma dan flowchart:
3. Program menghitung bilangan triangular
Listing Program:
#include
main()
{
int jum=0,bil,a;
printf("Program Menghitung Bilangan Triangular\n");
printf("======================================\n");
printf("Masukkan bilangan : ");scanf("%d",&bil);
for(a=bil;a>=1;a--)
{
jum=jum+a;
}
printf("Nilai %d triangular adalah : %d\n",bil,jum);
}
Output:
Algoritma dan flowchart:
Diposting oleh ajeng's blog di 04.11 0 komentar
Rabu, 25 November 2009
tugas 9
1. Konversi jam ke menit
Algoritma
1.Inisialisasikan jam dan menit ke dalam tipe data int
2.Inputkan jj:mm
3.Konversikan jam ke dalam menit
4.menit=jam*60
5.Tambahkan hasil konversi dengan menit awal
6.cetak hasil
7.Selesai
Listing program
#include
main()
{
int hasil,jam,menit;
printf("Masukkan jj:mm=");
scanf("%d:%d",&jam,&menit);
hasil=jam*60;
printf("Hasil konversi %d:%d=%d",jam,menit,hasil+menit);
}
output
flowchart
2.Konversi detik ke hari
Algoritma
1.Inisialisasi int= x,detik,menit,jam,hari,hasil1,hasil2,hasil3
2.Inputkan detik
3.Konversikan detik
4.hari=x/(3600*24)
hasil1=x%(3600*24)
jam=hasil1/3600
hasil2=hasil1%3600
menit=hasil2/60
hasil3=hasil2%60
detik=hasil3
5.Cetak hari,jam,menit,detik
6.Selesai
Listing program
#include
main()
{
int x,detik,menit,jam,hari,hasil1,hasil2,hasil3;
printf("Masukkan detik=");
scanf("%d",&x);
hari=x/(3600*24);
hasil1=x%(3600*24);
jam=hasil1/3600;
hasil2=hasil1%3600;
menit=hasil2/60;
hasil3=hasil2%60;
detik=hasil3;
printf("Konversi dari %d detik adalah %d hari:%d jam:%d menit:%d detik\n",x,hari,jam,menit,detik);
}
output
flowchart
3.Mencari max/min bilangan dari suatu deret bilangan
Algoritma
1.Inisialisasi int= n,min,max,sum=0,i=0,true=1,nilai
2.Masukkan n untuk menentukan jumlah anggota himpunan
3.Masukkan anggota himpunan
4.Bandingkan anggota pertama dengan anggota kedua,anggota kedua dengan ketiga dan seterusnya.
5.Cetak nilai max dan min
6.Selesai
Listing program
#include
main()
{
int n,min,max,sum=0,i=0,true=1,nilai;
printf("masukkan nilai n=");
scanf("%d",&n);
while(true)
{
i++;
printf("Masukkan nilai ke %d=",i);
scanf("%d",&nilai);
sum=sum+nilai;
if(i==1)
{
max=nilai;
min=nilai;
}
else if(max
{
max=nilai;
}
else
min=nilai;
if(i>=n)
break;
}
{
printf("max=%d\n",max);
printf("min=%d\n",min);
}
}
output
flowchart
Diposting oleh ajeng's blog di 06.37 0 komentar
Sabtu, 31 Oktober 2009
tugas algoritma dan flowchart
Tugas Flowchart dan algoritma
1. Menghitung Keliling dan Luas Lingkaran
1.Menentukan nilai pi sebesar 3.14
2.Masukkan jari-jari, nyatakanlah dengan nilai r
3.Hitung Keliling Lingkaran dengan rumus= 2 * pi * r
4.Hitung Luas Lingkaran dengan rumus= 0.5 * pi * r * r
5.Tampilkan Keliling lingkaran
6.Tampilkan Luas Lingkaran
7.Cetak hasil
Flowchart
2. Mengkonversi Suhu
1.Masukkan suhu dalam Celcius, nyatakan dengan simbol C
2.Hitung konversi suhu dalam Fahrenheit dengan rumus F = C * 1.8 + 32
3.Tampilkan hasil dari perhitungan rumus F
4.Cetak hasil
flowchart
3. Menampilkan sederetan bilangan ganjil dari 10 sampai 30 kecuali 21 dan 27
1.Tentukan nilai x = 10
2.Hitung x / 2, nyatakan hasil bagi dengan y.
3.Jika y tidak sama dengan 1, langsung menuju ke proses 7.
4.Jika x sama dengan 21, langsung menuju ke proses 7.
5.Jika x sama dengan 27, langsung menuju ke proses 7.
6.Tampilkan x
7.Jumlahkan x dengan 1, nyatakan dengan x.
8.Jika x tidak sama dengan 30, kembali ke proses 2.
9.Cetak hasil
flowchart
4. Menghitung determinan dan mencari akar-akar dari persamaan kuadrat : ax2 + bx + c = 0
1.Masukkan nilai a, b dan c
2.Hitung determinan dengan rumus b * b – 4 * a *c, nyatakan dengan D.
3.Jika D tidak sama dengan 0, lagsung ke proses 7.
4.Hitung (-b) / 2 * a, nyatakan dengan x1,
5.Karena D = 0, maka x2 = x1.
6.Cetak x1 dan x2. Selesai.
7.Jika D < 0, langsung ke proses 11.
8.Hitung (-b + sqrt(D)) / 2 * a, nyatakan dengan x1
9.Hitung (-b – sqrt(D)) / 2 * a, nyatakan dengan x2
10.Cetak x1 dan x2. Selesai.
11.Hitung (-b) / 2 * a, nyatakan dengan x.
12.Hitung (sqrt(-D) / 2 * a, nyatakan dengan y.
13.Cetak x1 dengan nilai (x + y) i
14.Cetak x2 dengan nilai (x – y) i.
15.Selesai.
flowchart
5. Menentukan apakah suatu bilangan(tahun) termasuk tahun kabisat atau bukan antara tahun 1900-2020
1.Masukkan tahun
2.Bagi tahun dengan 4
3.Jika hasil bagi 0, cetak tahun adalah tahun kabisat. Selesai.
4.Jika tahun > 2020 dan tahun < 1900, cetak tahun bukan di antara tahun 1900 – 2020. Selesai.
5.Cetak bukan tahun kabIsat dan bukan di antara 1900 – 2020.
6.Selesai.
flowchart
6. Menampilkan bilangan genap dari 2 sampai n deret kecuali bilangan genap tersebut kelipatan 4
1.Tentukan x = 2, i = 0
2.Masukkan nilai n
3.Tampilkan x
4.Jumlahkan i dengan 1, nyatakan dengan i.
5.Jika i = n, Selesai. Jika tidak, lanjut ke proses 6
6.Hitung x ditambah 2, nyatakan dengan x
7.Bagi x dengan 4, nyatakan deng!n y
8.Jika y = 0, kembali ke 0roses 6. Jika tidak, kembali ke proses 3.
flowchart
7. Menentukan harga yang harus dibayar oleh seorang pembeli bila setiap pembelian barang mendapatkan diskon dengan aturan: jika total harga pembelian > 1.500.000 maka dapat diskon 10
1.Tentukan harga CPU = Rp. 700.000,- RAM = Rp. 380.000,- Motherboard = Rp.800.000,-
2.Tentukan jm_CPU = 0, jm_RAM=0, jm_Motherboard=0, diskon=0
3.Masukkan jm_CPU
4.Masukkan jm_RAM
5.Masukkan jm_Motherboard
6.Hitung= CPU * jm_CPU, nyatakan dengan CPU
7.Hitung=RAM * jm_RAM, nyatakan dengan RAM
8.Hitung= Motherboard * jm_Motherboard, nyatakan dengan Motherboard
9.Hitung CPU + RAM+ Motherboard, nyatakan dengan jumlah
10.Jika jumlah > 1500000, hitung 0.1 * jumlah, nyatakan dengan diskon.
11.Hitung jumlah – diskon, nyatakan dengan Total
12.Tampilkan nilai total.
flowchart
Diposting oleh ajeng's blog di 05.07 0 komentar