Selasa, 29 Desember 2009

tugas day 14

1.Bilangan Prima
Algoritma:

- Input bilangan

- Menghitung sisa hasil bagi bilangan tersebut dimulai dengan angka pembagi 2,selanjutnya

Selanjutnya menghitung sisa hasil bagi bilangan tersebut dengan angka pembagi tadi

ditambah dengan 1.menghitung sisa hasil bagi dengan pembagi mulai 0 sampai pembagi =

bilangan yang diinputkan.

- Jika sisa hasil bagi=0 maka factor bilangan bertambah.

- Jika factor == 2,maka termasuk bilangan prima,jika tidak maka bukan bilanngan prima.

- Cetak bilangan.

Flowchart:


Koding:
#include
main()
{
int bil, faktor=0, i;

printf("Masukkan bilangan = ");
scanf("%d", &bil);

for(i=1;i<=bil;i++) { if(bil%i==0) faktor++; } if(faktor==2) printf("\nHASIL:\n%d --> bilangan PRIMA\n\n", bil);
else
printf("\nHASIL:\n%d --> BUKAN bilangan PRIMA\n\n", bil);
}

Output:


2.Program Untuk Menjumlahkan Dua Matriks
Algoritma:

- menginputkan nilai matrik1 dan matrik 2 dengan banyak baris dan kolom [2][2].

- Pada kolom dan baris yang sama ,antara nilai pada matrik1 dan nilai pada matriks 2

dijumlahkan.dan menampung hsilnya pada matrik 3.dimana penempatan hasilnya sesuai

dengan baris dan kolom yang sama.

-Mencetak hasilnya.


Flowchart:



Koding:
#include
main()
{
int A[2][2], B[2][2], i, j, jumlah;

printf("PROGRAM UNTUK MENJUMLAHKAN DUA MATRIKS\n\n\n");

for(i=1;i<=2;i++) for(j=1;j<=2;j++)
{
printf("Masukkan nilai A%d%d = ", i,j); scanf("%d", &A[i][j]); } printf("\nMatriks A :\n"); for(i=1;i<=2;i++)
{
for(j=1;j<=2;j++)
printf("%3d", A[i][j]); printf("\n");
}
printf("\n");
for(i=1;i<=2;i++)
for(j=1;j<=2;j++) {
printf("Masukkan nilai B%d%d = ", i,j);
scanf("%d", &B[i][j]); }
printf("\nMatriks B :\n");
for(i=1;i<=2;i++) {
for(j=1;j<=2;j++)
printf("%3d", B[i][j]);
printf("\n"); }
printf("\n");
printf("\n\nWal-Hasil :\nMatriks C : \n\n");
for(i=1;i<=2;i++) {
for(j=1;j<=2;j++) {
jumlah=A[i][j]+B[i][j];
printf("%3d", jumlah); }
printf("\n");
}
}
Output:


3.Program Untuk Mengalikan Matriks
Algoritma:
1. inisialisasi M1[2][3],M2[3][2],M3[2][2]
2. inisialisasi i,j,k,l,m,n,a,b,c,d,hsl
3. melakukan proses looping i = 0, i <2
4. looping kembali dengan j = 0, j<3
5. lalu input m1[i][j]
6. lalu looping kembali dengan k = 0; k<3
7. looping kembali dengan l=0;l<2
8. input M2[k][l]
9. proses looping dengan m= 0;m<2
10. looping kembali dengan n =0;n<2
11. inisialisasi hsl=0
12. looping dengan a=-; a<3
13. d = M1[m][a]*M2[a][n]
14. hsl = hsl+d
15.M3[m][n] = d
16. looping kembali dengan b =0; b>2
17. looping dengan c=0;c<2
18. cetak M3[b][c]
19 cetak menurun("/n")
20. program selesai....

Flowchart:

Koding:
#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("------------------------");
printf("Program Perkalian Matriks\n");
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:

tugas day 13

1.Fibonacci
Algoritma:
- Masukkan bilangan sebagai batas berapa benyak deret barisan fibonanci yang kita inginkan.
- memberikan inisialisasi a=1 dan b=1.dimana a dan b terletak pada deret pertama dan kedua.
-* menghitung nilai u=a+b,kemudian nilai,kemudian menukar nilai a dengan nilai b dan nilai b Dengan nilai u.
- Kembali seperti proses sebelumnya menjumlahkan nilai dari u=a+b dan menukarkannya Lagi seperti pada(*).
- Mencetak hasilnya

Flowchart:

Koding:
#include
main()
{
int bil, i, a=1, b=1, c;

printf("Masukkan Jumlah deret fibonanci = ");
scanf("%d", &bil);

printf("%3d%3d", a, b);

for(i=2;i
{
c=a+b;
a=b;
b=c;
printf("%3d", c);
}


puts("\n");
}

Output:


2.Konversi Bilangan Biner ke Desimal
Algoritma:
-Masukkan bilangan binnermu
- Menghitunh jumlah bilangan biner yang dimasukkan.
- menghitung m= 2^x(x dimulai dengan angka 0).
X++
-menghitung z dengan cara Mengalikan karakter mulai dari paling akhir dengan
m.(z=m*karakter bil).
(Karakter bil --).
-Mengulangi langka ke-3 dan ke-4 .
- menjumlahkan samua hasil dari z(z=z1+z2……..+zn)
- Mencetak hasilnya.

Flowchart:

Koding:
#include
#include
int main(void)
{
int dec=0,flag=0.0;
int bin, bit;
double exp=0.0;

printf("masukkan bilangan BINER : ");
scanf("%d", &bin);
fflush(stdin);

while(bin)
{
bit=bin%10;
if (bit !=0 && bit !=1)
flag=1;

bin=bin/10;
dec=dec+bit*pow(2, exp);
exp++;
}

if(flag)
printf("\n+++ Maaf, Itu bukan Bilangan Biner !!! \n");
else
printf("\n+++ Bilangan DESIMALnya : %d\n", dec);

getchar();
return 0;

}
Output:

3.Konversi Bilangan Desimal ke Biner
Algoritma:
- Memasukkan bilangan decimal.
- Menghitung sisa hasil bagi bilangan dengan angka dua ,dimana dalam perhitunganya
Dilakukan terus sampai hasil bagi =1.
- Menggabungkan bilangan mulai dari hasil bagi yang terakhir,sisa hasil bagi terakhir
sampai sisa hasil bagi yang pertama secara berurutan.
- Mencetak hasilnya.

Flowchart:


Koding:
#include
#define MAKS 100
main()
{
int x[MAKS],y,a=0,z,des;
puts("----------------------");
printf("Program konversi desimal ke biner\n");
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;
}
for(z=a-1;z>=0;z--)
{
printf("%d",x[z]);
}
printf("\n");
}

Output:

tugas day 11

1.Memilah Bilangan
Algoritma:

-Mendeklarasikan z=ribuan,y=ratusan,o=puluhan,v=satuan.

-Masukkan bilangan sesukamu kita simbolkan (w).

-Jika bilangan lebih dari 1000.maka hitung

x=w/1000;

z=x*1000;

y=(w%1000/100)*100;

o=(w%1000%100/10)*10;

v=w%1000%100%10;

-Jika bilangan lebih dari 100 ,maka hitung

x=w/100;

z=0;

y=x*100;

o=(w%100/10)*10;

v=w%100%10;

-Jika bilangan lebih dari 10,maka hitung

x=w/10;

o=x*10;

v=w%10;

-Cetak bilangan.


Flowchart:

Koding:
#include
main()
{
int bil,w,x,y,z;

printf("Masukkan bilangan = ");
scanf("%d", &bil);

printf("\nSetelah dipilah, Hasilnya = ");

w=bil/1000;
w=w*1000;
if(w!=0)
printf("%3d ", w);
x=(bil%1000)/100;
x=x*100;
if(x!=0)
printf("%3d", x);
y=(bil%100)/10;
y=y*10;
if(y!=0)
printf("%3d", y);
z=bil%10;
printf("%3d\n\n", z);
}

Output:


2.Membalik Kalimat
Algoritma:

- masukkan kalimat yang akan dibalik

- memberikan alokasi memory untuk kalimat tersebut dalam bentuk array.misal namanya

Asal[20] dan mengalokasikan untuk tempat kalimat yang sudah dibalik.misal balik[20].

- pada indeks terakhir array asal dimasukkan dalam indeks 0 pada array balik.

- Proses penukaran dilakukan terus dimana pada array asal indeksx selalu dikurangi 1

Sedangkan pada array balik indeksx selalu ditambah 1.penukaran dilakukan secara

Berurutan.

Flowchart:

Koding:
#include
main()
{
char kata1[64], kata2[64];
int p=0, i;

printf("Masukkan Kalimat = ");
fgets(kata1,sizeof kata1,stdin);

for(i=1;kata1[i];i++)
p++;

for(i=0;kata1[i];i++)
{
kata2[i]=kata1[p-i];
if(kata1[i]==kata1[p])
kata2[i+1]='\0';
}

printf("\n\nOutput = %s\n\n", kata2);
}
Output:


3.Membalik Bilangan
Algoritma:

- masukkan bilangan yang akan dibalik

- memberikan alokasi memory untuk kalimat tersebut dalam bentuk array.misal namanya

Asal[20] dan mengalokasikan untuk tempat kalimat yang sudah dibalik.misal balik[20].

- pada indeks terakhir array asal dimasukkan dalam indeks 0 pada array balik.

- Proses penukaran dilakukan terus dimana pada array asal indeksx selalu dikurangi 1

Sedangkan pada array balik indeksx selalu ditambah 1.penukaran dilakukan secara

Berurutan.

Flowchart:

Koding:
#include
main()
{
char bil1[64], bil2[64];
int p=0, i;

puts("Masukkan Bilangan = ");
fgets(bil1,sizeof bil1,stdin);

for(i=1;bil1[i];i++)
p++;

for(i=0;bil1[i];i++)
{
bil2[i]=bil1[p-i];
if(bil1[i]==bil1[p])
bil2[i+1]='\0';
}

printf("\n\nOutput = %s\n\n", bil2);
}
Output:


4. Palindrom
Algoritma:

- masukkan bilangan yang akan dibalik

- memberikan alokasi memory untuk kalimat tersebut dalam bentuk array.misal namanya

Asal[20] dan mengalokasikan untuk tempat kalimat yang sudah dibalik.misal balik[20].

- pada indeks terakhir array asal dimasukkan dalam indeks 0 pada array balik.

- Proses penukaran dilakukan terus dimana pada array asal indeksx selalu dikurangi 1

Sedangkan pada array balik indeksx selalu ditambah 1.penukaran dilakukan secara

Berurutan.

- Membandingkan antara asal dengan balik ,jika sama maka kalimat tersebut

palindrome,sedangkan jika tidak maka kalimat tersebut bukan termasuk palindrom

Flowchart:

Koding:
#include
main()
{
char kata1[64], kata2[64];
int p=0, i, a=0;

puts("Masukkan Kata = ");
fgets(kata1,sizeof kata1,stdin);

for(i=1;kata1[i];i++)
p++;

for(i=0;kata1[i];i++)
{
kata2[i]=kata1[p-i];
if(kata1[i]==kata1[p])
kata2[i+1]='\0';
}

for(i=0;kata1[i];i++)
if(kata1[i]==kata2[i+1])
a++;

if(p==a)
printf("\n\n%stermasuk PALINDROM\n\n", kata1);
else
printf("\n\n%sBUKAN PALINDROM\n\n", kata1);

}
Output:

Selasa, 15 Desember 2009

Tugas Ke-enam (day-10)

1.Program Kalkulator Sederhana
Algoritma:
  • Inisialisasikan kode pemrosesan yaitu 1 untuk proses penjumlahan, 2 untuk proses pengurangan, 3 untuk proses pembagian, dan 4 untuk proses perkalian.
  • Input 2 buah angka dan kode pemrosesan.
  • Tentukan proses dengan acuan kode pemrosesan.
  • Tentukan hasilnya.
  • Hasil adalah perhitungan hasil dari 2 angka dengan hasil proses sesuai kode.
  • Cetak hasil
  • End

Flowchart:

Koding:

#include
main()
{
int x1,x2,menu;

printf(" --------------------");
printf("| Program Kalkulator |");

printf(" --------------------");
printf("\nNama : M.Bagus Wirawa
n\tNRP :7409030055\n\n");

printf("Masukkan bilangan pertama : ");
scanf("%d",&x1);
printf("Masukkan bilangan kedua : ");
scanf("%d",&x2);
puts("\nMenu Matematika");

printf("\n1. Penjumlahan\n2. Pengurangan\n3. Pembagian\n4. Perkalian\n");
printf("\nMasukkan menu yang diinginkan : ");
scanf("%d",&menu);

switch(menu){
case 1:printf("%d + %d = %d\n",x1,x2,(x1+x2));break;
case 2:printf("%d - %d = %d\n",x1,x2,(x1-x2));break;
case 3:
printf("%d : %d = %d\n",x1,x2,(x1/x2));break;
case 4:
printf("%d x %d = %d\n",x1,x2,(x1*x2));break;
}
}

Output:


2.Program untuk menampilkan tumpukan bilangan
Algoritma:
  • Masukkan nilai maksimum bilangan.
  • Lakukan pengulangan untuk kolom dengan batas dari 1 hingga kurang dari sama dengan nilai maksimum bilangan.
  • Lalu lakukan pengulanan untuk baris dengan batas dari 1 hingga kurang dari sama dengan 2 kali pengulangan pertama dikurangi 1 untuk memperoleh bilangan ganjilnya.
  • Hasil adalah hasil dari pengulangan pertama dengan dibantu pengulangan kedua.
  • Cetak hasil
  • End
Flowchart:

Koding:

#include
main()
{
int a,i,j;

printf(" -------------------");
printf("| Tumpukan Bilangan |");
printf(" -------------------");

printf("\nNama : M.Bagus Wirawan\tNRP :7409030055\n\n");

printf("Masukkan bilangan maksimum =");
scanf("%d",&a);

for(i=1;i<=a;i++)
{ for(j=1;j<=(i*2)-1;j++)
{
printf("%4d",i);
}
printf("\n");
}
}

Output:



3.Program untuk menghitung hasil bilangan triangular
Algoritma:
  • Masukkan sebuah bilangan yang ingin dihitung.
  • Lakukan pengulangan dari input bilangan hingga lebih besar dari sama dengan input 1 dengan jumlah loop 1.
  • Lalu jumlahkan semua angka dari hasil pengulangan tersebut.
  • Hasil adalah jumlah dari semua angka pada pengulangan.
  • Cetak hasil
  • End

Flowchart:

Koding:

#include
main()
{

int i,b,c=0;

printf(" --------------------");
printf("| Program Triangular |");

printf(" --------------------");
printf("\nNama : M.Bagus Wirawan\tNRP :7409030055\n\n");

printf("Ma
sukkan jumlah triangular = ");
scanf("%d",&b);
for(i=b;i>=1;i--)
{
c+=i;
}


printf("\njumlah bola = %d\n\n",c);

}

Output:

Rabu, 25 November 2009

Tugas Kelima

1.Program Pengkonversi Waktu.
Algoritma :
  • Masukkan nilai jam dan menit.
  • Ubah ke dalam menit dengan cara mengalikan nilai jam dengan 60.
  • Dan jumlahkan dengan nilai menit.
  • Atau ke nilai detik,maka hasil menit dikalikan dengan 60.
  • Hasil adalah hasil dari penjumlahan di atas.
  • End
Flowchart :

Coding :
#include
main()
{
int a,b,s,w;

puts("\t--------------------------");
printf("\tProgram Pengkonversi Waktu\n");

puts("\t--------------------------");

printf("Nama :M.Bagus Wirawan");

printf("\tNRP :7409030055\n\n");

printf("Masukkan jam dan menit(jj:mm)= ");
scanf("%d:%d",&a,&b);

s=(a*60)+b;
w=s*60;

printf("%d:%d jam setara dengan %d menit atau %d detik\n",a,b,s,w);
}


Output :


2.Program konversi detik ke hari,jam,menit,dan detik.
Algoritma :
  • Masukkan nilai detik(input).
  • Ubah detik ke hari terlebih dahulu(input/86400).
  • Lalu ubah ke jam dengan cara membagi sisa bagi dari hari dengan 3600.
  • Dan ubah ke menit dengan cara membagi sisa bagi jam dengan 60.
  • Sisa bagi menit adalah detik yang tersisa.
  • Hasil adalah hasil dari perhitungan di atas.
  • End
Flowchart :


Coding :
#include
main()
{
int a,hari,sisa1,sisa2,jam,menit,detik;

puts("------------------------------------------------");
puts("Program Pengkonversi detik ke hari,jam,dan menit");
puts("------------------------------------------------");
printf("\nNama :M.Bagus Wirawan\tNRP :7409030055\n\n ");
printf("Masukkan jumlah detik = ");

scanf("%d",&a);

hari=a/86400;
sisa1=a%86400;
jam=sisa1/3600;

sisa2=sisa1%3600;
menit=sisa2/60;
detik=sisa2%60;

printf("%d detik setara dengan %d hari,%d jam,%d menit,%d detik\n",a,hari,jam,menit,detik);
}


Output :

3. Program untuk mencari bilangan terbesar dan terkecil.
Algoritma :
  • Masukkan jumlah bilangan.
  • Masukkan bilangan - bilangan sampai dengan banyaknya jumlah bilangan yang diinputkan.
  • Bila jumlah bilangan sama dengan 1,maka bilangan terbesar dan terkecil adalah bilangan itu sendiri.
  • Bila bilangan tersebut lebih kecil,maka bilangan tersebut adalah bilangan terkecil.
  • Bila bilangan tersebut lebih besar,maka bilangan tersebut adalah bilangan terbesar.
  • Hasil adalah hasil dari bilangan terbesar dan terkecil.
  • End
Flowchart :

Coding :

Output :


Sabtu, 31 Oktober 2009

Tugas


Tugas Ketiga

1. Mencari Luas dan Keliling Lingkaran
  • Algoritma :
1.inisialisasi pi sebagai float
2.inisialisasi r,keliling,dan luas sebagai double
3.inisialisasi pi=3.14
4.masukkan input berupa r
5.hitung dengan rumus:
luas =pi*r*r
keliling =2*pi*r
6.cetak hasil luas dan keliling
7.end
  • Flowchart :
  • Coding :
#include
main()
{
float pi;

double keliling,luas,r;

printf("\tProgram Menghitung Keliling dan Luas Lingkaran");
printf("\n\nNama: M.Bagus Wirawan");
printf("\tNRP:7409030055\n");
printf("\nMasukkan r :");

scanf("%lf",&r);
pi=3.14f;

keliling = 2*pi*r;
luas = pi*r*r;

printf("Keliling (2*pi*r) =%.2lf\n",keliling);
printf("Luas (pi*r*r) =%.2lf\n",luas);
}

  • Output :


2. Konversi Suhu

  • Algoritma :
1.input besarnya suhu

2.input suhu asal(C/F/K/R)

3.input dikonversi ke suhu apa(C/F/K/R)

4.apakah dari c?jika ya,apakah akan dikonversi ke fahrenheit?jika ya,hitung hasil,
jika tidak,apakah akan dikonversi ke kelvin?jika ya,hitung hasil,
jika tidak,hitung konversi ke reamor.
jika tidak,apakah dari fahrenheit?jika ya,apakah akan dikonversi ke celcius?jika ya,hitung hasil,
jika tidak,apakah akan dikonversi ke kelvin?jika ya,hitung hasil,

jika tidak,hitung konversi ke reamor.
jika tidak,apakah dari kelvin?jika ya,apakah akan dikonversi ke
fahrenheit?jika ya,hitung hasil,
jika tidak,apakah akan dikonversi ke celcius?jika ya,hitung hasil,
jika tidak,hitung konversi ke reamor.

jika tidak,berarti dari reamor.apakah akan dikonversi ke fahrenheit?jika ya,hitung hasil,
jika tidak,apakah akan dikonversi ke celcius?jika ya,hitung hasil
jika tidak,hitung konversi ke reamor.


5.cetak hasil


6.end
  • Flowchart :
  • Coding :
#include
main()
{
int a;

char b,c;
double d;

printf("Program Konversi Suhu");
printf("\n\nNama :M.Bagus Wirawan");
printf("\tNRP :7409030055\n");
printf("\nMasukkan nilai suhu : ");
scanf("%d",&a);
fflush(stdin);
printf("\ndari[C/F/R/K] : ");

scanf("%c",&b);
fflush(stdin);
printf("\nke [C/F/R/K] : ");
scanf("%c",&c);


if(b=='C')
{
if(c=='C')
d=a;

else if(c=='F')
d=(a*1.8)+32;

else if(c=='K')
d=a+273;
else
d=a*0.8;

}
else if(b=='F')

{
if(c=='F')

d=a;
else if(c=='C')
d=(a-32)/1.8;
else if(c=='K')

d=((a-32)/1.8)+273;
else
d=(a-32)/2.25;
}
else if(b=='K')

{
if(c=='K')
d=a;
else if(c=='F')
d=((a-273)*1.8)+32;

else if(c=='C')
d=a-273;
else
d=(a-273)*0.8;
}
else
{ if(c=='R')
d=a;
else if(c=='F')

d=(a*2.25)+32;
else if(c=='C')
d=a*1.25;
else
d=(a*1.25)+273;
}

fflush(stdin);
printf("\nHasil : %d %c sama dengan %.1f %c\n",a,b,d,c);

}

  • Output :
3. Menampilkan Deret Bilangan Ganjil


  • Algoritma :
  • 1. Inisialisasikan angka awal adalah 11.
  • 2. Inisialisasikan loop hanya lebih kecil dari 30.
  • 3. Inisialisasikan bahwa loop menambah 2 angka.
  • 4. Jika angka sama dengan 21 atau 27 maka proses dilanjutkan tanpa menghiraukan angka tersebut.
  • 5. Hasil adalah urutan angka ganjil dari 11 sampai dengan 29 tanpa ada angka 21 dan 27.
  • Flowchart :
  • Coding :
#include

main()
{

int e;
printf("\tProgram Menampilkan Bilangan Ganjil");
printf("\n\t\tkecuali 21 dan 27");
printf("\n\nNama :M.Bagus Wirawan\t");
printf("NRP :7409030055\n");


for(e=11;e<=30;e+=2) { if(e%2==0) continue; if(e==21) continue; if(e==27) continue; printf("%d\n",e); } }
  • Output :


4. Menghitung Diskriminan


  • Algoritma :
  • 1.Inisialisasikan rumus D=b*b-4*a*c
  • 2.Masukkan nilai a,b,dan c.
  • 3.jika nilai D=0,x1 dan x2 bernilai sama.
  • 4.jika nilai D>0,nilai x1 dan x2 tidak sama dan bersifat bilangan nyata.
  • 5.jika D<0,maka>
  • 6.Hasil
  • Flowchart :
  • Coding :
#include
#include
main()
{
double a,b,c,D,p,q1,q2,r1,r2,z,x;

printf("\t\tProgram Mencari Diskriminan dan Akar-akar Kuadrat\n\n");
printf("\nNama :M.Bagus Wirawan");

printf("\tNRP :7409030055\n");
printf("\nMasukkan nilai a = ");
scanf("%lf",&a);
printf("Masukkan nilai b = ");
scanf("%lf",&b);
printf("Masukkan nilai c = ");
scanf("%lf",&c);
z=a*x*x+b*x+c;

z=0;
D=b*b-4*a*c;
p=-b/2*a;
q1=(-b+sqrt(D))/2*a;

q2=(-b-sqrt(D))/2*a;
r1=-b/2*a+(sqrt(-D)/2*a);
r2=-b/2*a-(sqrt(-D)/2*a);
if(D==0)
printf("Diskriminan = %.1lf dan x1=x2=%.1lf\n",D,p);
else if(D>0)
printf("Diskriminan = %.1lf dan x1=%.1lf,x2=%.1lf\n",D,q1,q2);
else
printf("Diskriminan = %.1lf dan x1=%.1lf,x2=%.1lf\n",D,r1,r2);
}


  • Output :




Tugas Keempat

5. Menentukan Tah
un Kabisat

  • Algoritma :
1.Masukkan tahun x
2.Apakah xlebih dari sama dengan 1900 dan a kurang dari sama den
gan 2020?
3.jika ya,apakah x habis dibagi 4?jika ya ,maka x adalah tahun kabisat
jika tidak,maka x adalah bukan tahun kabisat.
4.jika tidak,maka ERROR.
5.End

  • Flowchart :
  • Coding :
#include
main()

{
int i,x;
printf("\tMenentukan Tahun Kabisat");

printf("\n\nNama :M.Bagus Wirawan");
printf("\tNRP :7409030055\n");
printf("\nMasukkan tahun:");

scanf("%d",&x);

for(i=1900;i<=x;i++) { if(x>2020)

break;
}

if(x%4==0)
printf("\nTahun ini adalah tahun kabisat\n\n");
else
printf("\nTahun ini bukan tahun kabisat\n\n");



}
  • Output :

6. Menampilkan Deret Bilangan Genap

  • Algoritma :
  • Masukkan nilai deret.
  • Ulang angka mulai dari angka 2,hingga kurang dari sama dengan 4 kali angka inputan.
  • Jarak ulangan sebanyak 2 angka.
  • Jika sisa bagi angka dari 4 sama dengan 0,maka proses ulangan diteruskan.
  • Hasil sama dengan hasil dari ulangan tanpa angka dari kelipatan 4.
  • End
  • Flowchart :
  • Coding :
#include

main()
{
int a,e, k=1;
printf("\tMenampilkan n deret bilangan genap");
printf("\n\tkecuali kelipatan4\n");
printf("\nNama : M.Bagus Wirawan");
printf("\tNRP :7409030055\n");
printf("\nMasukkan bilangan :");

scanf("%d",&a);
for(e=2;k<=a;e+=2) { if(e%4==0) continue; k++; printf("%3d",e); } }
  • Output :


7. Nota Penjualan

  • Algoritma :
1.Inisialisasikan barang[1]=700000
barang[2]=380000
barang[3]=800000
2.Input a,b,dan c
3.Hitung jumlah 1=barang1*a
jumlah 2=barang2*b

jumlah 3=barang3*c
total =jumlah1+jumlah2+jumlah3
4.Apakah total lebih dari 150000?
jika ya,biaya=total*10%(mendapatkan diskon)
jika tidak,maka biaya=total(tidak mendapatkan diskon)
5.End
  • Flowchart :
  • Coding :
#include
main()
{
int a,b,c,jumlah1,jumlah2,jumlah3,total;

float biaya;
int barang[3];

printf("Barang yang ada.\n1.CPU.\n2.RAM.\n3.Motherboard.\n");
printf("CPU yang anda beli sejumlah?");
scanf("%d",&a);

fflush(stdin);
printf("RAM yang anda beli sejumlah?");
scanf("%d",&b);

fflush(stdin);

printf("Motherboard yang anda beli sejumlah?");
scanf("%d",&c);

barang[1]=700000;
barang[2]=380000;
barang[3]=800000;

jumlah1=barang[1]*a;

jumlah2=barang[2]*b;
jumlah3=barang[3]*c;

total=jumlah1+jumlah2+jumlah3;
if(total>1500000)
biaya=total-(total*0.1);

else
biaya=total;


printf("Harga yang harus anda bayar adalah :Rp %.2f",biaya);
printf("\n");

}
  • Output :

Rabu, 30 September 2009

Tugas Flowchart dan Algoritma Transaksi Bank Sederhana


Algoritma:
1.Membuka sebuah rekening
2.Input saldo awal
3.Pilih deposit atau tidak?
4.Jika iya,Saldo+amount
5.Saldo bertambah
6.jika tidak maka withdraw
7.jika saldo< amount, maka eror
8.jika tidak maka saldo-amount
9.saldo berkurang
10.End