Minggu, 30 Desember 2012

program Fungsi C++ dan Pascal


Listing Program 

   Pada program C++ ini, saya menggunakan perintah menu stdio.Sama halnya dengan program fungsi pascal, fungsi pada C++ ouputnya juga berupa hasil bukan proses.
Untuk proses nya sudah langsung dijalankan ketikadi Run.
Berbeda dengan program lain, kalau program lain kita melakukan proses nya dulu seperti kita disuruh memasukan angka ini,angka itu atau bentuk huruf tapi kalau fungsi, ketika di run program langsung menghasilkan ouput berupa hasil.
    Lihatlah listing program dibawah ini :
#include<iostream.h>
#include<conio.h>
#include<math.h>
int fungsi_menu(void);
float fungsi_perkalian(void);
float fungsi_pembagian(void);
 int menu_exit(void);
 main()
 {
 fungsi_menu();
 return 0;
 }
 int fungsi_menu()
 {clrscr();
 int a;
 cout<<"             ^^^^^^^^^^^^^^^^^^^\n";
 cout<<"             Program fungsi\n";
 cout<<"             =================\n";
 cout<<"             *******************\n";
 cout<<"Silahkan pilih jenis program yang anda inginkan\n";
 cout<<"========================================\n";
 cout<<"1.Program perkalian & menentukan perpangkatannya\n";
 cout<<"2.Program pembagian & menentukan kuadratnya & \n";
 cout<<"====================\n";
 cout<<"Anda memilih : ";cin>>a;
 switch(a)
 {
 case 1 : fungsi_perkalian();break;
 case 2 : fungsi_pembagian();break;
 default:break;
 }
 return 0;
 }
 float fungsi_perkalian()
 {
 float m,x,y,z;
 cout<<"====================================================\n";
 cout<<" Anda dalam program perkalian & menentukan perpangkatan\n";
 cout<<"silahkan masukkan angka pertama : ";cin>>x;
 cout<<"silahkan masukkan angka kedua (sebagai pengali sekaligus menjadi pangkatnya) : ";cin>>y;
 z=x*y;
 m=pow(x,y);
 cout<<"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n";
 cout<<"Hasilnya kali dari angka pertama dikali angka kedua tersebut adalah : "<<z<<endl;
 cout<<"Sedangkan hasil dari angka pertama pangkat angka kedua tersebut adalah : "<<m<<endl;
 cout<<endl;
 menu_exit();
 return 0;
 }
 float fungsi_pembagian()
 {
 float f,s,x,y,z;
 cout<<"=====================================================\n";
 cout<<" Anda dalam program pembagian & menentukan kuadrat\n";
 cout<<"silahkan masukkan angka pertama : ";cin>>x;
 cout<<"silahkan masukkan angka kedua sebagai Pembagi : ";cin>>y;
 z=x/y;
 f=sqrt(x);
 s=sqrt(y);
 cout<<"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n";
 cout<<"hasil bagi angka pertama dibagi angka kedua adalah: "<<z<<endl;
 cout<<"hasil kuadrat angka pertama adalah: "<<f<<endl;
 cout<<"hasil kuadrat angka kedua adalah : "<<s<<endl;
 cout<<endl;
 menu_exit();
 return 0;
 }
 int menu_exit()
 {
 char a;
 cout<<"untuk kembali ke menu utama tekan Y ";cin>>a;
 if (a=='y')
 {
 cout<<endl;
 fungsi_menu();
 }
 else
 {
 cout<<"terima kassih";
 }
 return 0;
 }

 Logika Program
      #include<iostream.h> adalah Baris pertama tuliskan kode untuk menginstruksikan kepada kompiler untuk menyisipkan file lain (iostream.h) saat program dikompilasi. <conio.h>  adalah header file yang digunakan untuk membuat teks antar muka pengguna sedangkan <math.h> berisi prototype fungsi untuk pustaka maatematika.
int fungsi_menu(void);
float fungsi_perkalian(void);
float fungsi_pembagian(void);
int menu_exit(void);
      merupakan function dari program yang akan dijalankan, int fungsi untuk mendifinisikan bilangan bulat yang akan berjalan pada blok program tersebut sedangkan float fungsi untuk mendifinisikan bilangan betipe pecahan yang akan berjalan pada bllok program tersebut. Void adalah tipe data yang digunakan untuk tipe suatu fungsi yang tidak mengembalikan nilai pada fungsi tersebut. Fungsi main adalah merupakan bagian yang paling pertama untuk dieksekusi.
{
 fungsi_menu();
 return 0;
 }
      di atas merupakan program pertama yang akan berjalan, dari fungsi menu(); akan memanggil function int fungsi_menu() yang di dalamnya terdapat pilihan Switch Case adalah merupakan salah satu bentuk percabangan, yang digunakan untuk pilihan berjumlah banyak, kemudian pada pilihan switch case ada 2 pilihan yaitu case 1 untuk memanggil function perkalian dan case 2 untuk memanggil function pembagian.Kemudian jika memilih case 1 maka  program akan memanggil function float fungsi perkalian() yang di dalamnya terdapat blok program perkalian dan perpangkatanya :
float fungsi_perkalian()
 {
 float m,x,y,z;
 cout<<"===========================================================\n";
 cout<<" Anda dalam program perkalian & menentukan perpangkatan\n";
 cout<<"silahkan masukkan angka pertama : ";cin>>x;
 cout<<"silahkan masukkan angka kedua (sebagai pengali sekaligus menjadi pangkatnya) : ";cin>>y;
 z=x*y;
 m=pow(x,y);
 cout<<"====================================================\n";
 cout<<"Hasilnya kali dari angka pertama dikali angka kedua tersebut adalah : "<<z<<endl;
 cout<<"Sedangkan hasil dari angka pertama pangkat angka kedua tersebut adalah : "<<m<<endl;
 cout<<endl;
 menu_exit();
 return 0;
 }

       Float m,x,y,z; adalah penyatakan bahwa variabel tersebut bertipe pecahan. Kemudian cout<<” \n”; adalah Untuk menampilkan keluaran pada layar, sedangkan cin>> ; untuk menginput data nanti berupa numerik, string, dan karakter. Selanjutnya z=x*y; dan  m=pow(x,y); adalah rumus yang digunakan untuk mencari hasil pada program tersebut. Ada tanda <<z<<endl; digunakan untuk memanggil hasil dari proses rumus sebelumnya yang kemudian akan dioutput. Menu exit(); digunakan untuk memanggil fungsi exit pada menu function yang lain. return 0; adalah menyatakan bahwa prugram berakhir dengan normal. Tanda } merupakan akhir dari program tersebut. Kemudian jika program memillih case 2 maka program akan memanggil function float fungsi_pembagian() yang di dalamnya terdapat program pembagian.
       char a; merupakan sebuah tipe integer dengan ukuran 8-bit, if (a=='y') adalah kondisi pemilihan yang jika sama dengan y maka progam akan dijalankan dan melakukan pengulangan, else digunakan jika nilai tifak terpenuhi pada kondisi if di atas. Kemudian return 0; adalah menyatakan bahwa prugram berakhir dengan normal. Tanda } merupakan akhir dari program tersebut.
Output program
       Berikut tampilan program sebelum diRun :


Tampilan program setelah diRun :

Kemudian setelah itu sebagai contoh kita pilih nomor 1, terus tekan enter maka akan muncul tampilan yang memintaa kita untuk memasukkan angka pertama dan angka kedua, sebagai contoh masukkan angka 24 pada angka pertama dan 4 pada angka kedua, kemudian tekan enter maka akan muncul tampilan pada baris pertama adalah hasil kali angka pertama dengan angka kedua, sedangkan pada baris kedua adalah hasil pangkat dari angka pertama pangkat angka kedua. Untuk kembali pada menu untama tekan y terus enter seperti di bawah ini :


Program fungsi pascal
     Program ini bernama program fungsi, fungsi adalah jenis program yang langsung menampilkan hasil berupa output ketika dijalankan atau di Run.
     Berikut listing program fungsi :
program fungsi;
uses crt;
function besar (p,q : integer): integer;
begin
if p>q then
besar := p
else
besar := q;
end;
function kecil (p,q : integer): integer;
begin
if p<q then
kecil := p
else
kecil := q;
end;
function seimbang (p,q : integer): integer;
begin
if p=q then
seimbang := p;
end;
var p,q: integer;
begin
clrscr;
Textcolor(lightGreen);
write('****');
Textcolor(lightRed);
write('****');
Textcolor(lightBlue);
write('****');
Textcolor(lightcyan);
write('****');
writeln('****');
Textcolor(lightGreen);
writeln('Program perbandingan 2 angka');
Textcolor(Blink);
writeln('=========================');
Textcolor(lightBLue);
write('Silahkan masukkan angka Pertama = ');readln(p);
write('Silahkan masukkan angka Kedua = ');readln(q);
writeln;
Textcolor(lightGreen);
writeln('Jadi angka yang lebih besar adalah ',besar (p,q):5);
write('Sedangkan angka yang lebih kecil adalah ',kecil (p,q):5);
readln;
end.

Logika Program
         Uses crt digunakan untuk mengaktifkan monitor agar dapat dijalankan untuk mengerjakan program pascal. function besar (p,q : integer): integer; merupakan blok program function yang di dalamnya terdapat :
begin
if a<b then
kecil := p
else
kecil := q;
end;
        begin digunakan untuk memulai program tersebut kemudian if p<q then merupakan kondisi pilihan if yang jika a lebih dari b maka akan diproses dan jika tidak terpenuhi maka akan  masuk pada else yang merupakan jika semua nilai tidak terpenuhi pada if maka akan diproses pada else.
       Logika seperti di atas juga berjalan pada function kecil dan function seimbang yang membedakan terdapat pada if nya saja yaitu if p<q then untuk function kecil dan if p=q then untuk function seimbang. Dan kemudian untuk mengakhiri proses dari setiap blok program tersebut yaitu dengan end;.
        kemudian var a,b: integer; merupakan awal dari program utamanya dimana var merupakan idenfier dari a dan b sebagai integer . Textcolor(LightGreen); merupakan kode untuk memberi warna hijau pada saat di run nanti , Write berfungsi untuk menuliskan seatu variabel ke dalam sebuah komponen file, sedangkan readln bertugas mengeksekusi prosedure read kemudian bergerak ke baris berikutnya dalam file program. Adapun writeln berffungsi mengeksekusi prosedura write lalu kemudan mengeluarkan seebuah penanda end-of-line(EOL) ke file program. Kemudian semua program akan diakhiri dengan end.
Output program
Tampilan program sebelum diRun :


Kemudian setelah diRun :
Sebagai contoh untuk program perbandingan 2 angka. Pada angka pertama masukkan 25 dan pada angka kedua masukkan 55, setelah tekan enter maka akan muncul tampilan yang menyatakan angka yang mana yang lebih besar dan angka yang mana yang lebih kecil seperti gambar di bawah ini :



Tidak ada komentar:

Posting Komentar

 

Template Design By:
SkinCorner