Popular Post

Tampilkan postingan dengan label PASCAL. Tampilkan semua postingan

6. Pengulangan Dalam Pascal

By : Unknown
oleh : Muhammad Irobby Yusuf

apa berbedaan antara manusia dan komputer ? perbedaan yang sangat sederhana tapi mencolok, ada yang tau ? hehe,
jawabnnya jika komputer memiliki tombol ENTER tapi kalo manusia memiliki tombol ENTAR, hehe,
maka dari itulah jika komputer deberi perintah ENTER maka komputer akan melakukan eksekusi sesuai dengan apa yang diperintahkan,sekalipun itu berskala besar tanpa ada rasa lelah sekalipun, berbeda dengan manusia ketika akan diberi perintah, ,maka jawabannya ENTAR,ENTAR, dan ENTAR, hehe sedikit intermezo..

jika ada perintah "saya Cinta Rosulullah" sebanyak 10000 kali ? apa yang akan anda lakukan ? ditulis secara manual kah ? mungkin 1 hari baru selesai belum lagi dengan sifat alami manusia salah satunya dengan mengeluh, bosan dan lain2, dari kasus itulah kita bisa memanfaatkan kelebihan dari komputer, dimana komputer tidak pernah bosan dan dan lelah untuk melakukan perinta dan berkali-kali. dan inilah fungsi pengulangan yang akan dibahas kali ini,yaitu suatu algoritma yang akan melakukan perintah berulang-ulang sampai kondisi akhir terpenuhi.

dalam pascal terdapat 3 kontruksi pengulangan yang dapat menjadi opsi, diantaranya
1. FOR
 merupakan perintah pengulangan yang akhir pengulangan nya sudah diketahui dari awal, bisa berupa Ascending ataupun Descending.
Algoritma nya :
For variable <- awal to akhir do
      perintah
end

2. WHILE
merupakan perintah pengulangan selama kondisinya bernilai benar(true), jika salah maka perulangan akan berhenti, while melakukan pemeriksaan kondisi dari awal pengulangan.
Algoritmanya :
While kondisi do
      perintah
end

3. Repeat
berbeda dengan while repeat akan melakukan perulangan sampai kondisi pengulangan bernilai benar(true) dan pemeriksaan kondisi dari awal pengulangan.
Algoritmanya :
Repear
      perintah
until kondisi

untuk lebih jelasnya mari kita lihat script pascal dibawah ini :



















bisa kita lihat dalam FOR, akhir pengulangan sudah di spesifikasi, n disini untuk menentukan jumlah pengulangan yang di inginkan. untuk while, sebelumnya kita harus menginisialisasi terlebih dahulu nilai variabel awal sebelum masuk pembanding pada perulangan WHILE, dimana pembading harus bernilai false(salah) terlebih dahulu agar perulangan itu berjalan, i disini di inisalisasikan bernilai 0(nol) sedangkan  untuk n berasarkan inputan user, dan dalam badan perulangan pun ada perintah i:= i+1; maksudnya adalah agar setiap satu kali perulangan nilai i datambahkan 1, sehingga perulangan akan berakhir ketika nilai i sama dengan n atau lebih dari nilai n. sedangkan dalam REPEAT, perulangan berakhir saat kondisi bernilai benar, dimana dala badan perulangan i juga sama ditambahkan 1x setiap kali perulangan, maka perulangan akan berakhir ketika nilai kondisi perulangan bernilai true, dalam kasus ini nilai i=n.

jika di compile akan menghasilkan :














untuk selanjutnya tergantung memilih kondisi saat dimana kapan kita menggunakan FOR,WHILE dan REPEAT.
wallahualam bishawab.
Semoga Bermanfaat :)
Tag : ,

5. Mengenal Struktur Percabangan/Pemilihan

By : Unknown
oleh : Muhammad Irobby Yusuf

Assalamualaikum
untuk tutorial sekarang, kita akan membahas struktur pemilihan dalam bahasa pascal.

apa itu struktur pemilihan ?
struktur pemilihan/percabangan merupakan suatu algoritma yang memungkinkan melakukan pernyataan (statement) jika kondisi terpenuhi atau suatu algoritma untuk memecahkan suatu masalah atau persoalan dengan mengambil keputusan diantara sekian pernyataan yang ada

dan struktur pemilihan juga berfungsi
1.Membuat suatu struktur menu.
2.Memvalidasi inputan dari user.
3.Mencegah terjadinya error.

1.  STRUKTUR IF
Struktur algoritma nya :
a. if kondisi  then
       pernyataan
    endif

b. if kondisi then
    begin
        pernyataan 1
        pernyataan 2
    end if

c. if kondisi  then
       pernyataan1
   else
       pernyataan2
   endif

d. if kondisi1  then
    begin
       pernyataan1
       pernyataan2
    end
    else
         if kondisi2 then
            pernyataan3
        else
             pernyataan4
        endif
    endif

e. jika ada kasus yang menuntut beberapa pemecahan maka kita gunakan
    1. kata kunci AND : apabila semua kondisi harus terpenuhi jika salah satu tidak terpenuhi maka program tidak akan meng eksekusinya
        Algoritmanya :
              if kondisi A and kondisi B then
                 statement 1
              endif
    2. kata kunci OR : apabila salah satu kondisi saja terpenuhi diantara beberapa kondisi
        Algoritmanya :
              if kondisi A or kondisi B then
                 statement 1
              endif

untuk lebih jelasnya, mari kita lihat script dibawah ini dalam format program pascal

















dalam struktur diatas dapat dilihat fungsi percabangan if berdasarkan pilihan menu yang di inputkan
dan ingat untuk tanda penutup semicolon (titik koma ";") dalam percabangan harus disimpan percabangan paling akhir dari struktur if, karena jika dalam percabangan pertama program akan error, sama menganggap percabangan selesai dalam kondisi pertama dalam semicolon yang kita tulis.
maka jika di compile akan menghasilkan :










2. STRUKTUR CASE
    struktur algoritmanya :
    case expersi
           nilai 1 : pernyataan 1
           nilai 2 : pernyataan 2
           .
           .
           nilai n : pernyataan n
           otherwise(dalam pascal else) pernyataan m
    endcase;

untuk lebih jelasnya, mari kita lihat script dibawah ini dalam format program pascal

dalam fungsi case juga dapat kata kunci AND dan OR apabila memungkinkan 2 atau lebih pemecahan.
tetapi dalam fungsi case hanya dapat meng eksekusi tipe integer dan char saja.
jika di compile maka akan menghasilkan :




secara garis besar, fungsi keduanya sama saja, tinggal pandai-pandainya kita menentukan kondisi seperti apa yang cocok untuk struktur if ataupun case.

wallahualam bishawab.
semoga bermanfaat :)

Tag : ,

Program Sederhana Menghitung Iterasi Jacobi Dan Dekomposisi Crout

By : Unknown


Oleh : Muhammad Irobby Yusuf

Assalamualaikum,
kali ini saya akan sharing tugas kuliah metode numerik membuat program untuk menghitung iterasi jacobi dan dekomposisi crout :)
coba ketikan script pascal dibawah ini :

program jacobi_crout;
uses crt;
type
    mat55=array [0..5,0..5] of real;
var
   iterasi:boolean;
   a,l,u: mat55;
   b,x,y:array [0..5] of real;
   k21,k31,k41:real;
   k32,k42,k43:real;
   a11,a12,a13,a14:real;
   a21,a22,a23,a24:real;
   a31,a32,a33,a34:real;
   a41,a42,a43,a44:real;
   b1,b2,b3,b4 : real;
   x1,x2,x3,x4:array[0..20] of real;
   k,i,j,n:integer;
   E1,E2,E3,E4:array[0..20]of real;
   menu:integer;

procedure inisialisasi;//pemberian nilai awal dalam program
begin
     iterasi:=false;
     n:=4;
     //inisialisasi dalam array
     a[0][0]:=1;a[0][1]:=2;a[0][2]:=3;a[0][3]:=-1;
     a[1][0]:=2;a[1][1]:=5;a[1][2]:=4;a[1][3]:=8;
     a[2][0]:=4;a[2][1]:=2;a[2][2]:=2;a[2][3]:=1;
     a[3][0]:=6;a[3][1]:=4;a[3][2]:=-1;a[3][3]:=-2;
     
     b[0]:=10;
     b[1]:=8;
     b[2]:=-2;
     b[3]:=4;

     //inisialisasi matriks
     a11:=1; a12:=2; a13:=3; a14:=-1;
     a21:=2; a22:=5; a23:=4; a24:=8;
     a31:=4; a32:=2; a33:=2; a34:=1;
     a41:=6; a42:=4; a43:=-1;a44:=-2;

     b1:=10;
     b2:=8;
     b3:=-2;
     b4:=4;

     k:=0;
     x1[k]:=0;x2[k]:=0;x3[k]:=0;x4[k]:=0;
end;

procedure inisialisasi_E;//nilai awal untuk E iterasi ke-0 sampai 1
begin
     E1[0]:=1;E1[1]:=1;
     E2[0]:=1;E2[1]:=1;
     E3[0]:=1;E3[1]:=1;
     E4[0]:=1;E4[1]:=1;
end;

procedure profil; //data pribadi
begin
     gotoxy(47,4);write('NIM      : 10112291');
     gotoxy(47,5);write('Nama     : Muhammad Irobby Yusuf');
     gotoxy(47,6);write('Kelas    : Metnum 14');

end;

procedure kotak;  //garis kotak untuk profil
begin
     for i:=1 to n+1 do
     begin
          gotoxy(45,2+i);write('|');
     end;
     for i:=1 to n+1 do
     begin
          gotoxy(79,2+i);write('|');
     end;
     for i:=1 to n+29 do
     begin
          gotoxy(45+i,3);write('-');
     end;
      for i:=1 to n+29 do
     begin
          gotoxy(45+i,7);write('-');
     end;
end;

Procedure matrikB(x2:integer);    //nilai matrik B
begin
     for i:=0 to n-1 do
     begin
          gotoxy(x2,10+2*i);write(b[i]:0:0);
     end;
end;

//Procedure garis Matriks A dalam soal
procedure MA;                             //garis matrik B
begin
     gotoxy(2,3);write(' A =');
     for i:=1 to n+9 do
     begin
           gotoxy(8,2+i);write('|');
     end;
     for i:=1 to n+9 do
     begin
           gotoxy(27,2+i);write('|');
     end;
end;

//Procedure garis Matriks B dalam soal
procedure MB;                                             //garis matrik B
begin
     gotoxy(30,3);write(' B =');
     for i:=1 to n+9 do
     begin
           gotoxy(35,2+i);write('|');
     end;
     for i:=1 to n+9 do
     begin
           gotoxy(41,2+i);write('|');
     end;
end;

procedure garis1 (x1:integer);
begin
for i:=0 to n-1 do
     begin
         gotoxy(x1,3+i);write('|');
     end;
end;

procedure garis2 (x1:integer);
begin
for i:=0 to n-1 do
     begin
         gotoxy(x1,10+i);write('|');
     end;
end;

procedure garisY (x1:integer);                      //garis untuk nilai Y
begin
for i:=0 to n-1 do
     begin
         gotoxy(x1,20+i);write('|');
     end;
end;

procedure garisv (x1:integer);
begin
for i:=0 to n+2 do
     begin
         gotoxy(x1,10+i);write('|');
     end;
end;

procedure soal;                                     //soal tugas
begin
     gotoxy(1,1);write('  Soal : ');
     for i:=0 to n-1 do
     begin
         for j:=0 to n-1 do
         begin
              gotoxy(11+4*j,3+4*i);write(a[i][j]:0:0);
         end;
         writeln;
     end;
     for i:=0 to n-1 do
     begin
          gotoxy(38,3+4*i);write(b[i]:0:0);
     end;
     writeln;
     writeln;
     writeln('  Membuat Program untuk Menentukan Solusi SPL diatas');
     writeln('  dengan menggunakan Metode Crout dan iterasi Metode Jacobi');

end;

procedure tampilan;
begin
     kotak;
     profil;
     MA;
     MB;
     soal;
end;

procedure gauss;             //menentukan U dalam metode gaus naif untuk membandingkan saja
begin
     writeln  ('  Eliminasi Gaus untuk menentukan U (sebagai pembanding saja)');
     gotoxy(2,4);write('U=');
     garis1(5);
     k21 := -(a21/a11);
     k31 := -(a31/a11);
     k41 := -(a41/a11);
     for i:=0 to n-1 do
         begin
              //elimanasi pertama
              a[1][i]:= (k21*a[0][i])+a[1][i];
              a[2][i]:= (k31*a[0][i])+a[2][i];
              a[3][i]:= (k41*a[0][i])+a[3][i];
              gotoxy(7+4*i,3);write(a[0][i]:0:0);
              gotoxy(7+4*i,4);write(a[1][i]:0:0);
              gotoxy(7+4*i,5);write(a[2][i]:0:0);
              gotoxy(7+4*i,6);write(a[3][i]:0:0);

         end;
      garis1(22);
      gotoxy(24,5);write('~~');
      garis1(27);

      k32:= -(a[2][1]/a[1][1]);
      k42:= -(a[3][1]/a[1][1]);
      for i:=0 to n-1 do
         begin
              //eliminasi pertama
              a[2][i]:= (k32*a[1][i])+a[2][i];
              a[3][i]:= (k42*a[1][i])+a[3][i];
              gotoxy(29+4*i,3);write(a[0][i]:0:0);
              gotoxy(29+4*i,4);write(a[1][i]:0:0);
              gotoxy(29+4*i,5);write(a[2][i]:0:0);
              gotoxy(29+4*i,6);write(a[3][i]:0:0);
         end;
      garis1(44);
      gotoxy(46,5);write('~~');
      garis1(49);
      k43:= -(a[3][2]/a[2][2]);
      for i:=0 to n-1 do
          begin
             //eliminasi ke-3
             a[3][i]:= (k43*a[2][i])+a[3][i];
             a[3][2]:= 0;//nilainya -0, sekian sehingga dibulatkan menjadi 0
             gotoxy(51+4*i,3);write(a[0][i]:0:0);
             gotoxy(51+4*i,4);write(a[1][i]:0:0);
             gotoxy(51+4*i,5);write(a[2][i]:0:0);
             gotoxy(51+4*i,6);write(a[3][i]:0:0);
             gotoxy(63,6);write(a[3][3]:2:4);//di replace karena Tampilan matrik sebelumnya tidak angka dibelakang koma
          end ;
          garis1(71);
end;

//================================METODE CROUT=======================================
procedure D_crout;
begin
     //===========JAWABAN PROGRAM===============
     gotoxy(2,8);write('DEKOMPOSISI LU DENGAN METODE CROUT');
     inisialisasi;
     //menentukan U  dan L dengan metode crout
     u[0][0]:=a11; u[0][1]:=a12; u[0][2]:=a13; u[0][3]:=a14;                                              //iterasi 1
     l[1][0]:=a21/a11; l[2][0]:=a31/a11; l[3][0]:=a41/a11;                                                //iterasi 2
     u[1][1]:=a22-(l[1][0]*a12); u[1][2]:=a23-(l[1][0]*a13); u[1][3]:=a24-(l[1][0]*a14);                  //iterasi 3
     l[2][1]:=(a32-(l[2][0]*a12))/u[1][1]; l[3][1]:=(a42-(l[3][0]*a12))/u[1][1];                          //iterasi 4
     u[2][2]:=a33-((l[2][0]*a13)+(l[2][1]*u[1][2])); u[2][3]:=a34-((l[2][0]*a14)+(l[2][1]*u[1][3]));      //iterasi 5
     l[3][2]:=(a43-((l[3][0]*a13)+(l[3][1]*u[1][2])))/u[2][2];                                            //iterasi 6
     u[3][3]:=a44 - (l[3][0]*a14)-(l[3][1]*u[1][3])-(l[3][2]*u[2][3]);                                    //itearsi z

     //===============MATRIKS U================
     gotoxy(2,10);write('U=');
     garis2(5);
     for i:=0 to n-1 do
     begin
         gotoxy(7+4*i,10);write(u[0][i]:0:0);
         gotoxy(7+4*i,11);write(u[1][i]:0:0);
         gotoxy(7+4*i,12);write(u[2][i]:0:0);
         gotoxy(7+4*i,13);write(u[3][i]:0:0);
         gotoxy(19,13);write(u[3][3]:2:4);// nilai U44 di replace karena hasilnya desimal sedang matrik tidak disetting desimal
     end;
     garis2(27);

     //================MATRIKS L================
     gotoxy(29,10);write('L=');
     garisv(32);
     l[0][0]:=1; l[1][1]:=1; l[2][2]:=1; l[3][3]:=1;
     for i:=0 to n-1 do
     begin
          gotoxy(34,10+2*i);write(l[i][0]:0:0);
          gotoxy(38,10+2*i);write(l[i][1]:0:0);
          gotoxy(42,10+2*i);write(l[i][2]:0:0);
          gotoxy(42,16);write(l[i][2]:2:4); //di replace karena matrik tidak menentukan angka dibelakang koma sedang hasilnya desimal
          gotoxy(49,10+2*i);write(l[i][3]:0:0);
     end;
     garisv(51);
     gotoxy(2,15);write('Nilai U dengan Gaus dan');
     gotoxy(2,16);write('metode Crout bernilai sama');

     //=================MATRIKS B===============
     gotoxy(53,10);write('B=');
     garisv(56);
     matrikB(58);
     garisv(61);

     //Ly = b
     gotoxy(2,18);write('dari persamaan Ly = b maka :            dari persamaan Ux=y maka :');
     gotoxy(2,20);write('Y=');
     garisY(5);
     //mencari nilai y
     y[0]:= b[0]/l[0][0];                                        //mencari nilai y1 -> y1=b1/L11
     y[1]:= b[1] - l[1][0]*y[0];                                 //mencari nilai y2 -> y2=b2-L21*y1
     y[2]:= b[2] - l[2][0]*y[0] - l[2][1]*y[1] ;                 //mencari nilai y3 -> y3=b3-L31*y1 - L32*y2
     y[3]:= b[3] - l[3][0]*y[0] - l[3][1]*y[1] - l[3][2]*y[2];   //mencari nilai y4 -> y4=b4-L41*y1 - L42*y2 - L43*y3
     //output nilai y
     gotoxy(7,20);write(y[0]:2:4);
     gotoxy(7,21);write(y[1]:2:4);
     gotoxy(7,22);write(y[2]:2:4);
     gotoxy(7,23);write(y[3]:2:4);
     garisy(16);

     //Ux = y
     //mencari nilai x
     gotoxy(42,20);write('x=');
     garisY(46);
     x[3]:= y[3]/u[3][3];                                                 //x4 -> y4/u44
     x[2]:= (y[2] - u[2][3]*x[3])/u[2][2];                                //x3 ->(y3 - u34*x4)/u33
     x[1]:= (y[1] - u[1][2]*x[2] - u[1][3]*x[3])/u[1][1];                 //x2 ->(y2 - u23*x3 - u24*x4)/u22
     x[0]:= (y[0] - u[0][1]*x[1] - u[0][2]*x[2] - u[0][3]*x[3])/u[0][0];  //x1 ->(y1 - u12*x2 - u13*x3 - u14*x4)/u11

     //output nilai x
     gotoxy(48,20);write(x[0]:2:4);
     gotoxy(48,21);write(x[1]:2:4);
     gotoxy(48,22);write(x[2]:2:4);
     gotoxy(48,23);write(x[3]:2:4);
     garisy(56);
end;

//=================================METODE JACOBI===================================

procedure header;  //header soal jacobi
begin
     writeln('toleransi galat relatif hampiran 10^(-6) atau E<0.000006');
     writeln();
     writeln('diambil tebakan awal x=[0 0 0 0]T');
     writeln();
     writeln('                             Metode Iterasi Jacobi                             ');
     writeln('===============================================================================');
     writeln('i    x1        E1       x2        E2         x3        E3       x4       E4    ');
     writeln('===============================================================================');
end;

procedure M_Jacobi;
begin
     inisialisasi;
     gotoxy(1,2);header;
     repeat
     begin
         gotoxy(1,k+11);write(k);//nilai iterasi
         //menentukan nilai iterasi x1,x2,x3,x4
         x1[k+1]:=(b1 - a12*x2[k] - a13*x3[k] - a14*x4[k])/a11;
         x2[k+1]:=(b2 - a21*x1[k] - a23*x3[k] - a24*x4[k])/a22;
         x3[k+1]:=(b3 - a31*x1[k] - a32*x2[k] - a34*x4[k])/a33;
         x4[k+1]:=(b4 - a41*x1[k] - a42*x2[k] - a43*x3[k])/a44;
         //outputkan nilai
         gotoxy(4,k+11);write(x1[k]:2:4);
         gotoxy(23,k+11);write(x2[k]:2:4);
         gotoxy(44,k+11);write(x3[k]:2:4);
         gotoxy(63,k+11);write(x4[k]:2:4);
         if k>1 then
         begin
              //menentukan nilai E1,E2,E3,E4
              E1[k]:=abs((x1[k]-x1[k-1])/x1[k]);
              E2[k]:=abs((x2[k]-x2[k-1])/x2[k]);
              E3[k]:=abs((x3[k]-x3[k-1])/x3[k]);
              E4[k]:=abs((x4[k]-x4[k-1])/x4[k]);
              //outputkan nilai
              gotoxy(14,k+11);write(E1[k]:2:4);
              gotoxy(34,k+11);write(E2[k]:2:4);
              gotoxy(54,k+11);write(E3[k]:2:4);
              gotoxy(73,k+11);write(E4[k]:2:4);
          end;
          k:=k+1;
     end;                                      //iterasi E dimulai dari iterasi ke 3
     inisialisasi_E;                           //karena dari iterasi ke-0 sampai 1 E bernilai 0, maka ditentukan inisalisasi awal
     if (E1[k-1]<0.000006) or (E2[k-1]<0.000006) or (E3[k-1]<0.000006) or (E4[k-1]<0.000006) then
     begin
          iterasi:=true;
     end;
     until iterasi;
     writeln;
     writeln;
     writeln('===============================================================================');
     gotoxy(2,17);write('tekan Enter untuk melanjutkan ! . .');
end;

//========================MENU====================

procedure menu_pilihan(var menu:integer);
begin
    repeat
          gotoxy(3,19);write('Menu Pilihan : ');
          gotoxy(3,20);write('1. Metode Crout ');
          gotoxy(3,21);write('2. Metode Jacobi ');
          gotoxy(3,22);write('0. Keluar ');
          gotoxy(3,23);write('pilihan : ');readln(menu);
    until menu in[0,1,2];
end;

//program utama
begin
     repeat
           inisialisasi;
           clrscr;
           tampilan;        //tampilan awal program
           menu_pilihan(menu);
           if (menu=1) then
           begin
                clrscr;
                gauss;   //metode eliminasi gauss --> hanya sebagai pembanding nilai matriks U saja
                D_crout; //metode Dekomposisi metode Crout
                readln;
           end;
           if (menu=2) then
           begin
                clrscr;
                M_jacobi; //metode iterasi jacobi
                readln;
           end;
     until (menu=0);
end.


 dan setelah di compile akan menampilkan menu pilihan dan soal seperti di bawah ini :



jika user memilih menu no 1 maka akan menampilkan hasil perhitungan menggunakan dekomposisi Crout seperti dibawah ini :



dan jika memilih menu no 2 maka program akan menampilkan perhitungan menggunakan iterasi jacobi seperti gambar di bawah ini :



















dan jika memilih menu no 0 maka program akan keluar.

wallahualam bishawab.
semoga bermanfaat :)





4. Mengenal Tipe Data Bag.2

By : Unknown

oleh : Muhammad Irobby Yusuf

Assalamualaikum

tutorial tipe data bagian 2, merupakan lanjutan dari tutorial sebelumnya, dimana sebelumnya kita membahas tentang tipe data real dan integer, dan sekarang kita akan membahas tipe data boolean,char,dan string.

tipe boolean merupakan suatu tipe data yang hanya memiliki 2 nilai, yaitu bernilai true(benar) atau false(salah) atau dapat juga dinyatakan dengan 0 dan 1, dimana 0 bernilai false dan 1 bernilai true, tapi itu semua tergantung bagaiamana mendefinisikannya. tipe char merupakan semua huruf dari A sampai z, kemudian semua angka dari 1 sampai 9 dan semua karakter khusus ASCII. sedangkan tipe data string merupakan kumpulan dari karakter atau deret dari karakter.
coba kita lihat contoh script di bawah ini :




















dapat kita lihat bahwa fungsi string diatas dapat menginputkan kumpulan karakter, sedangkan tipe char disini untuk menginputkan Nilai Akhir berupa kharakter, A/B/C/D/E. dalam script di atas terdapat fungsi "upcase" dimana fungsi ini berfungsi untuk menKAPITALkan huruf/char yang telah di inputkan, baik yang berupa huruf biasa maupun huruf yang sudah KAPITAL.yang nanti nya akan menjadi sebuah pembanding dalam struktur pemilihan "IF". dimana fungsi IF disini merupakan fungsi untuk menentukan pilihan jawaban diantara banyak pilihan yang tersedia. dalam fungsi terlihat bahwa variable pintar bertipe boolean, dimana boolean sendiri hanya bernilai benar atau salah saja. jika memenuhi syarat if maka pintar bernilai true dan jika tidak maka bernilai false.

dan hasilnya akan terlihat seperti di bawah ini : 



wallahualam bishawab

semoga bermanfaat :)









Tag : ,

3. Mengenal tipe data

By : Unknown
Oleh : Muhammad Irobby Yusuf

Assalamualaikum Wr.Wb
baik, untuk tutorial sekarang, saya akan menjelaskan tentang tipe data di dalam bahasa pemrograman.
Apa itu Tipe data ? tipe data merupakan suatu fungsi untuk mempresentasikan suatu jenis nilai, dimana dalam pascal sendiri terdiri dari 2 tipe data, yaitu tipe data dasar dan tipe data buatan,.
untuk sekarang saya akan membahas tentang tipe data dasar, kenapa disebut tipe data dasar, karena tipe data ini hanya dapat menampung 1 nilai dari setiap variabelnya. tipe data dasar terdiri dari byte,integer,real,boolean, dan string.

adapun untuk rentang nilainya sebagai berikut :









untuk lebih jelasnya, mari kita lihat gambar script dibawah ini :














dalam contoh saya mencoba untuk membuat program untuk mencari luas segitiga, tipe data yang digunakan yaitu integer dan real, tipe data integer merupakan tipe data yang berupa bilangan bulat, sedangkan tipe data real merupakan tipe data yang berupa pecahan, oleh karena itu untuk variabel luas kita pilih tipe data real, karena untuk mencari luas segitiga dapat berupa pecahan hasilnya, sedang untuk menentukan alas dan tinggi kita pilih tipe data integer, intinya kita memesan satu variabel luas bertipe data real, alas dan tinggi bertipe data integer. yap sepandai - pandainya kita dalam menentukan/memesan tipe data yang cocok dalam program yang telah kita buat, dalam Output saya tuliskan "luas :2:3", artinya saya memesan 3 tempat dibelakang koma untuk ditampilkan, hasinya bisa dilihat dibawah ini :


semoga bermanfaat :)

wallahualam bishawab.

Tag : ,

2. Input dan Output Pascal

By : Unknown
oleh : Muhammad Irobby Yusuf

berlanjut dari tutorial sebelumnya, sekarang saya akan membahas tentang, input dan output data dalam pascal, bedanya kita harus mendeklarasikan sebuah variable, untuk lebih jelasnya mari kita lihat gambar script dibawah ini :












fungsi variabel disini bersifat dinamis, dimana dia sebagai pengenal yang bisa di ubah yang memiliki tipe data, dalam artian tipe data disini dapat dirubah rubah. apa itu tipe data ? tipe data berfungsi untuk mempresentasikan suatu jenis nilai, disini kita lihat bahwa variabel nama bertipe data string, dimana string merupakan kumpulan dari karakter. selain tipe data string, dipascal kita juga mengenal tipe data lainnya seperti integer,real,double dll, dan itu akan saya bahas ditutorial selanjutnya.

kita lihat fungsi "readln(nama)",  sudah saya jelaskan dalam tutorial sebelumnya bahwa fungsi read sendiri adalah untuk membaca, dan readln sendiri untuk membaca kemudian MEMINDAHKAN 1 BARIS kebawah(enter), sehingga ketika menulis fungsi readln(nama), program akan membaca apa yang kita inputkan setelah program berjalan sesuai variabel yang kita deklarasikan dengan bentuk tipe data string, dan kemudian dipanggil kembali dalam fungsi write pada output data dengan cara menulis ulang nama variabel yang di inputkan sebelumnya, seperti pada gambar di atas.

maka jika kita compiler project (ctrl+f10) akan mengahasilkan tampilan seperti dibawah ini :


semoga bermanfaat :)
wallahualam bisawab.





Tag : ,

1. Tutorial Menggunakan Dev-Pascal 1.9.2

By : Unknown
oleh : Muhammad Irobby Yusuf

Berikut langkah langkah dalam Menggunakan Dev-pascal, tentunya setelah instalasi software selesai :)

1. Start - All Program - Pilih/klick Dev-pascal
2. setelah muncul jendela Dev-Pascal, maka File New project sperti di bawah ini


















3. setelah muncul jendela baru kemudian pilih Console Application - > ok, lalu ketikan nama project yang akan dibuat, contoh disini "latihan 1"




4. simpan file project tersebut di tempat yang anda inginkan

5. langkah selanjutnya yaitu simpan file unit dengan menambah huruf U dibelakang nama file agar mudah dibedakan contoh"Ulatihan 1"



6. setelah itu ketikan kode di bawah ini

program latihan;
begin
     writeln('Mari Belajar Bahasa Pemrograman ! ');
     readln;
end.

perintah write/writeln untuk menulis atau menampilakan apa yang kita tulis kedalam layar, write untuk menulis sedangkan writeln untuk menulis dan MENINDAHKAN 1 BARIS ke bawah (enter). begitu fungsi read/readln yakni fungsi untuk membaca sobat :)

7. compile programnya dengan mengklik Execute-Program 



8. dan otomatis akan muncul jendela baru seperti di bawah ini


wallahualam bishowab, semoga bermanfaat :)

Tag : ,

- Copyright © Pejuang Artikel -