Minggu, 30 Desember 2012

Program string pascal dan c++



Program string pascal

 Listing program
  Program ini bernama program string, string adalah sebuah deret symbol tipe datayang digunakan untuk menyimpan barisan karakter.
 contoh listing programnya:

Program Gaji;
uses crt;
var gp,gb,pjk,js,tis,ta,tjb:real;
nik:string[10];
nk:string[27];
sts:string[9];
jb:string[15];
ja:byte;
begin
clrscr;
write('Nomor Induk Karyawan=');
readln(nik);
write('Nama Karyawan=');
readln(nk);
write('Status=');
readln(sts);
write('Jumlah Anak=');
readln(ja);
write('Jabatan=');
readln(jb);
write('Gaji Pokok=');
read(gp);
if sts='menikah' then begin
tis:=0.1*gp;
end
else begin
tis:=0;
end;
if ja<=3 then begin ta:=0.05*gp*ja; end else if ja>3 then begin
ta:=0.05*gp*3;
end
else begin
ta:=0;
end;
if jb='manager' then begin
tjb:=2000000;
end
else
if jb='supervisor' then begin
tjb:=1500000;
end
else
if jb='mandor' then begin
tjb:=1000000;
end
else begin
tjb:=0;
end;
pjk:=0.025*gp;
js:=0.01*gp;
gb:=(gp+tis+ta+tjb)-(pjk+js);
writeln('Tunjangan Istri=', tis:3:2);
writeln('Tunjangan Anak=', ta:3:2);
writeln('Tunjangan Jabatan=', tjb:3:2);
Writeln('Pajak=', pjk:3:2);
writeln('Jamsostek=', js:3:2);
writeln('Gaji Bersih=', gb:3:2);
readkey;
end.


Logika Program
   Pada kompilator pascal lama, string terpanjang yang dapat dibuat dari ratusan karakter tertentu.Hal ini karena pascal menggunakan 1byet data untuk menyimpan panjang efektif string, jika panjang maksimum tidak dimasukan, kompilator menggapnya berpa karakter yang kita masukan, pada kompilator pascal yang lebih baru dikenal pula tipe data ansi-string yang dpat menyimpan karakter lebih banyak.

 Output program
    Listing program sebelum di Run pada pascal :



Kemudian diRun, masukan identitas anda sesuai isi perintah data yang keluar lalu tekan enter maka akan muncul tampilan seperti di bawah ini :




Program string c++

Listing program
  Sama saja halnya dengan program string pada pascal tadi yaitu sebuah deret simbol tipe data yang digunakan untuk menyimpan barisan karakter.
  Langsung saja,mari kita lihat listing programnya :
#include <iostream.h>
#include <conio.h>
#include <string.h>
int main(){
char nama_1[20];
char nama_2[20];
cout<<"---------------------------------------------"<<endl;
cout<<"Hanya Ada di http://adie-konoe.blogspot.com"<<endl;
cout<<"---------------------------------------------"<<endl;
cout<<"Masukan Nama Pertama : ";
cin.getline(nama_1,sizeof(nama_1));
cout<<"Masukan Nama Kedua : ";
cin.getline(nama_2,sizeof(nama_2));
cout<<"Nama Pertama : "<<nama_1<<endl;
cout<<"Nama Kedua : "<<nama_2<<endl<<endl;
char nama_1_copy[20];
char nama_2_copy[20];
cout<<"Duplikat String untuk nama pertama dan kedua "<<endl;
cout<<"Nama Pertama : "<<strcpy(nama_1_copy,nama_1)<<endl;
cout<<"Nama Kedua : "<<strcpy(nama_2_copy,nama_2)<<endl<<endl;
cout<<"Panjang string untuk nama pertama ("<<nama_1<<") adalah : "<<strlen(nama_1)<<endl;
cout<<"Panjang string untuk nama kedua ("<<nama_2<<") adalah : "<<strlen(nama_2)<<endl<<endl;
cout<<"Menjadi huruf kapital"<<endl;
cout<<"Nama pertama : "<<strupr(nama_1)<<endl;
cout<<"Nama kedua : "<<strupr(nama_2)<<endl<<endl;
//mengubah huruf kapital di string ke huruf kecil
cout<<"Menjadi huruf kecil"<<endl;
cout<<"Nama pertama : "<<strlwr(strupr(nama_1))<<endl;
cout<<"Nama pertama : "<<strlwr(strupr(nama_2))<<endl<<endl;
cout<<"String nama pertama ("<<nama_1<<") dibalik adalah : "<<strrev(nama_1)<<endl;
cout<<"String nama kedua ("<<nama_2<<") dibalik adalah : "<<strrev(nama_2)<<endl<<endl;
cout<<"Menggabungkan dua string"<<endl<<"string nama pertama dan nama kedua"<<endl;
cout<<strcat(nama_1,nama_2)<<endl<<endl;
cout<<"---------------------------------------------"<<endl;
cout<<"Silahkan Berkunjung untuk mendapatkan coding yang lain"<<endl;
cout<<"---------------------------------------------"<<endl;
getch();
}

 Logika Program
  String disimpan sebagai larik dari karakter, string pada c++ kapasitanya dibatasi oleh kapasitas memori komputer. Kita dapat memberikan batas maksimum karakter yang dapat ditampung, membuat string dengan panjang maksimum puluhan karakter tertentu, karena karakter harus null*/ sehingga representasi string sebagai larik karakter masih berlaku yang panjang maksimum tidak perlu didefinisikan.

 Output program
Berikut tampilan listing program pada C++ :


Kemudian berikut tampilan program setelah di Run, masukan nama pertama dan kedua sesuai data output yang keluar lalu tekan enter lagi maka akan muncul tampilan seperti di bawah ini :


Dasar-dasar String :
      String sebenarnya merupakan penggunaan tipe data char secara berkelompok
      Tipe data string merupakan array dari tipe data char
Deklarasi Variabel String :
Karena string merupakan array dari char, maka pendeklarasiannya sama dengan mendeklarasikan array dari char, yaitu :
                                   Char nama_var [ jml_karakter ]
Contoh :
char alamat [40] –> deklarasi variabel alamat dengan tipe data string.
Nilai Variabel alamat terdiri dari beberapa karakter maksimal 40 karakter (0 s/d 39)
Inisialisasi Variabel String :
Variabel string dapat diinisialisasi dengan cara seperti berikut :
                Char x[10]=“Permainan”;
x di memori setelah inisialisasi : 
Karakter “” pada x [9] merupakan karakter null yang menandai berakhirnya suatu string. 
Perbedaan Char dan String :
Char ‘A’ berbeda dengan string “A”
Lihat perbedaanya pada penggambaran memori berikut:
Operasi string tidak dapat dilakukan untuk tipe data char 

program array pascal dan c++


Program Array c++
   Pada program C++ ini, saya menggunakan perintah menu stdio.h
Sama halnya dengan program array pascal, fungsi pada C++ ouputnya juga berupa hasil bukan proses.
Untuk prosesnya sudah langsung dijalankan ketikadi Run.
Berbeda dengan program lain, kalau program lain kita melakukan prosesnya dulu seperti kita disuruh memasukan angka ini,angka itu atau bentuk huruf tapi kalau array, ketika di run program langsung menghasilkan ouput berupa hasil.
     Lihatlah listing program dibawah ini :
#include<conio.h>
#include<stdio.h>
  main()
  {
    float suhu[5];
   float total=0;
    clrscr();
   cout<<"Masukan Data Suhu "<<endl<<endl;
   for (int i=0;i<5;i++)
       {
          cout<<"Suhu Ke : "<<(i+1)<<" = ";
         cin>>suhu[i];
         total+=suhu[i];
      }
      cout<<endl;
      cout<<"Suhu rata-rata "<<total/5<<endl;
      getch();
      }

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 dari program yang akan dijalankan, int array untuk mendifinisikan bilangan bulat yang akan berjalan pada blok program tersebut sedangkan float array 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, di atas merupakan program pertama yang akan berjalan, dari fungsi menu(); akan memanggil function int fungsi_menu() yang di dalamnya.

Output program
       Berikut tampilan program sebelum diRun :


Tampilan program setelah diRun :
Kemudian setelah itu sebagai contoh kita masukan angka , terus tekan enter maka akan muncul tampilan yang memintaa kita untuk memasukkan angka pertama dan angka kedua, sebagai contoh masukkan angka pertama dan -2 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 utama tekan y terus enter seperti di bawah ini :


Program array pascal
     Program ini bernama program array, array adalah jenis program yang langsung menampilkan hasil berupa output ketika dijalankan atau di Run.
Berikut listing program array :
program array_warnet;
uses crt;
const max=50;
type
Twarnet = record
     NAMA : string [25] ;
     KOMPI : string [8] ;
     JAM : array [1..2] of real;
end;
Tkumpulanwarnet = array[1..max] of Twarnet;
var
A : Tkumpulanwarnet;
i,N: Integer;
NA: real;
durasi:real;
begin
clrscr;
writeln ('=====> PROGRAM DATA WARNET <=====');
writeln ('---------------------------------');
write ('Masukan Data yg ingin diisikan :');
readln(N);
writeln ;
writeln ('=+=+ MASUKAN DATA ANDA +=+=    ');
writeln ('---------------------------');
for i:= 1 to N do begin
writeln('Data Pengunjung ke-',i);
with A[i] do begin
write ('NAMA             :'); readln(NAMA);
write ('Komputer         : KE-'); readln(KOMPI);
write ('Mulai Jam        : '); readln(JAM[1]);
write ('Selesai Jam       : '); readln(JAM[2]);
end;
writeln;
end;
writeln('Menampilkan Data');
writeln('------------------------------------');
writeln('NAMA':5,'':2, 'KOMPI':2, '':2,'BAYAR');
writeln('------------------------------------');
for i:=1 to N do begin
with A[i] do begin
NA:= (JAM[1]*JAM[2])/2 ;
write(NAMA:5, '':2, KOMPI:2, '' :3, NA:0:3);
end;
writeln;
end;
readln;
end.

Logika Program
         Uses crt digunakan untuk mengaktifkan monitor agar dapat dijalankan untuk mengerjakan program pascal. array besar (I,N:integer;) merupakan blok program array yang terdapat didalamnya, begin digunakan untuk memulai program tersebut. Kemudian var a,b: integer; merupakan awal dari program utamanya dimana var merupakan idenfier dari a dan b sebagai integer. 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 tampilan setelah diRun :
Sebagai contoh untuk program data yang diisi 1 angka. Pada data pengunjung masukan nama ucid dan pada angka pertama masukkan ke-1, dan seterusnya setelah itu tekan enter maka akan muncul tampilan yang menyatakan data pengunjung warnet yang sedang menjalankan seperti gambar di bawah ini :


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 :



 

Template Design By:
SkinCorner