Rabu, 06 April 2011

Pendahuluan Modul 4


BAB III
TUGAS PENDAHULUAN
Soal
      1. Kapankah suatu fungsi dibuat dan digunakan?
      2. Buatlah algoritma untuk membuat bentuk belah ketupat dari deretan angka berdasarkan batas nilai yang dimasukkan melalui piranti masukan dengan menggunakan Fungsi!
Contoh:
Masukkan batas nilai: 4
Hasil belah ketupat deretan angka:
1
1 2 1
1 2 3 2 1
1 2 3 4 3 2 1
1 2 3 2 1
1 2 1
1

      1. Buatlah algoritma untuk menghitung rumus-rumus persamaaan kuadrat () berikut ini:
        • Rumus diskriminan ()
        • Rumus mencari akar-akar persamaan (;).
Setiap rumus dijadikan sebuah fungsi tersendiri dengan parameter-parameter yang dimasukkan dari luar fungsi.
Contoh:
Masukkan nilai a : 1
Masukkan nilai b : 4
Masukkan nilai c : 3

Hasil diskriminan (D) : 2
Nilai X1 : -1
Nilai X2 : -3
Jawaban
              1. Fungsi dibuat dan digunakan ketika
dibutuhkan untuk menjadikan program yang akan kita buat menjadi lebih modular dan mudah untuk dipahami alurnya. Dengan adanya fungsi, maka kita dapat mengurangi duplikasi kode program sehingga performa dari program yang kita buat pun akan meningkat. Suatu fungsi dibuat untuk maksud menyelesaikan tugas tertentu. Suatu fungsi dapat hanya melakukan suatu tugas saja tanpa memberikan suatu hasil keluaran atau melakukan suatu tugas dan kemudian memberikan hasil keluaran. Untuk fungsi yang mempunyai keluaran bertipe bukan integer, maka fungsi haruslah didefiniskan dengan diawali tipe keluaran fungsinya (ditulis di depan nama fungsi).
              1. Algoritma Bentuk_Belah_Ketupat
Int : ketupat,batas,angka,temp,temp2;
Int : tengahkiri,tengahkanan,seg1,seg2,seg3,seg4,spas1,spas2;
int : segitiga_atas(int bil){
ketupat=bil-1;
temp=ketupat;
temp2=ketupat;
for (batas=1;batas<=ketupat;batas++){ /*SEGITIGA ATAS UTAMA*/
/*SEGITIGA KIRI ATAS*/
for (spas1=ketupat;spas1>=batas;spas1--)
write("%s"," ");
for (seg1=1;seg1<=batas;seg1++)
write("%d",seg1);
/*SEGITIGA KANAN ATAS*/
for (seg2=batas-1;seg2>=1;seg2--)
write("%d",seg2);
write("\n");
}
}
int segitiga_bawah(int bil){
/*TENGAH*/
for(tengahkiri=1;tengahkiri<=bil;tengahkiri++)
write("%d",tengahkiri);
for(tengahkanan=bil-1;tengahkanan>=1;tengahkanan--)
write("%d",tengahkanan);
write("\n");
for (batas=1;batas<=ketupat;batas++){
/*SEGITIGA KIRI BAWAH*/
for (spas2=1;spas2<=batas;spas2++)
write("%s"," ");
for (seg3=1;seg3<=temp;seg3++)
write("%d",seg3);temp=temp-1;
/*SEGITIGA KANAN BAWAH*/
for (seg4=temp2-1;seg4>=1;seg4--)
write("%d",seg4);temp2=temp2-1;
write("\n");
}
}
main() //program utama
{
write("=== PROGRAM KETUPAT ANGKA ===\n");
write("Masukan Bilangan: ");
read("%d",&angka);
if((angka>=1) && (angka<=9)){
write("",segitiga_atas(angka));
write("",segitiga_bawah(angka));
}
else write("diluar tampilan \n");
}
              1. Algoritma Rumus_Diskriminan
float a,b,c;
float Deskriminan(){ //fungsi deskriminan
float C,D;
C=(b*b)-(4*a*c);
D=sqrt(C);
write("Deskriminannya : %.1lf", D);
}
float X1(){ //fungsi X1
if (a!=0){
float X1;
X1=((-b)+(sqrt((b*b)-(4*a*c))))/(2*a);
write("Nilai X1 : %.1lf", X1);}
else write("Nilai X1 tak terdefinisi karena a bernilai 0");
}
float X2(){ //fungsi X2
if (a!=0){
float X2;
X2=((-b)-(sqrt((b*b)-(4*a*c))))/(2*a);
write("Nilai X2 : %.1lf", X2);}
else write("Nilai X2 juga tak terdefinisi karena a bernilai 0");
}
int main(){ //program utama
write("=== Program Persamaaan Kuadrat(ax2 + bx + c) ===\n");
write("Masukkan nilai a : ");scanf("%f",&a);
write("Masukkan nilai b : ");scanf("%f",&b);
write("Masukkan nilai c : ");scanf("%f",&c);
write("\n");
write("\n", Deskriminan());
write("\n", X1());
write("\n", X2());
}

Tidak ada komentar:

Posting Komentar