Selasa, 26 Mei 2015

Deret.. Deret... Deret....

Hai teman - teman semua.. ngeblog lagi neh guys karena ada tugas
tugas kali ini tentang deret lagi
yuk langsung aja kita coba programnya... gausah panjang lebar yha guys...

1. Buat tampilan interface berikut
2. ini syntaxnya
unit deret;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Label4: TLabel;
    Edit4: TEdit;
    Button1: TButton;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    function deret(x:integer):integer;
  end;

var
  Form1: TForm1;
  hasil:integer;
  D:real;

implementation

{$R *.dfm}

function TForm1.deret(x:integer):integer;
var
  i:integer;
begin
  i:=1;
  hasil:=0;
  while i<=x do
  begin
    hasil:=hasil+i;
    i:=i+1;
  end;
  deret:=hasil;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  DA,DB,DC,A,B,C:integer;
begin
  A:=strtoint(Edit1.Text);
  B:=strtoint(Edit2.Text);
  C:=strtoint(Edit3.Text);
  DA:=deret(A);
  DB:=deret(B);
  DC:=deret(C);

  D:=(DA+DB)/DC;
  Edit4.Text:=floattostr(D);
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  Edit1.Text:='';
  Edit2.Text:='';
  Edit3.Text:='';
  Edit4.Text:='';
end;

end.
3. kalo udah, yuk langsung aja kita coba guys...



Deret Pola -1, 3, -5, 7, -9

Disini ratih akan memberi tahu bagaimana cara mencari rumus deret bilangan, bukan cara mencari suku ke-n. Oke tadi di awal ratih udah jelasin contoh-contoh barisan bilangan, nah di setiap barisan mempunyai rumusnya masing-masing untuk menemukan rumus itu ada dua cara yang bisa di kerjakan, pertama kamu bisa mencoba dan memikirkan bagaimana rumusnya yg memakan waktu cukup lama atau yang kedua kamu pake cara yang udah pasti kebenarannya Cuma kamu harus menghafal rumusnya aja tapi ingat cara ini hanya bisa dipakai di barisan bilangan yang memiliki pola. Nah kali ini ratih bakal nerangin bagaimana cara untuk membuat deret pola pada program delphi. Bagi yg butuh langsung liat aje dan bagi yang ada kesulitan matematika bisa langsung coment aja. Oke ga usah nungu lama langsung tengok kebawah aja masbro
Berikut scriptnya ......
unit deretpola;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    Edit1: TEdit;
    Memo1: TMemo;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
  a,b,c,i:integer;
begin
  a:=strtoint(Edit1.Text);
  Memo1.Clear;
  i:=-1;
  c:=-2;
  while i<=a do
  begin
    b:=i;
    Memo1.Lines.Add(inttostr(b));
    i:=(b+c)*-1;
    c:=c*-1; 
  end;
end;

end.

Tampilan script

 
Form

 
Hasil ketika di run

Selasa, 19 Mei 2015

Algoritma Quick Sort

Algoritma quicksort diperkenalkan pertama kali oleh C.A.R. Hoare pada tahun 1960, dan dimuat sebagai artikel di Computer Journal 5 pada April 1962. Bentuknya yang sederhana, efisien dan efektif dengan cepat membuatnya menjadi algoritma pengurutan (sorting) yang paling banyak digunakan, terutama dalam bahasa pemrograman. Berbagai penelitian dan pengembangan telah banyak dilakukan hingga saat ini. Tercatat peneliti seperti Sedgewick, Bentley, McIlroy, Clement, Flajolet, Vallee, hingga Martinez, membuat analisis dan implementasi dari quicksort.

Beberapa hal yang membuat quicksort unggul:
  • Secara umum memiliki kompleksitas O(n log n).
  • Algoritmanya sederhana dan mudah diterapkan pada berbagai bahasa pemrograman dan arsitektur mesin secara efisien.
  • Dalam prakteknya adalah yang tercepat dari berbagai algoritma pengurutan dengan perbandingan, seperti mergesort dan heapsort.
  • Melakukan proses langsung pada input (in-place) dengan sedikit tambahan memori.
  • Bekerja dengan baik pada berbagai jenis input data (seperti angka dan karakter).
Namun terdapat pula kelemahan quicksort:
  • Sedikit kesalahan dalam penulisan program membuatnya bekerja tidak beraturan (hasilnya tidak benar atau tidak pernah selesai).
  • Memiliki ketergantungan terhadap data yang dimasukkan, yang dalam kasus terburuk memiliki kompleksitas O(n2).
  • Secara umum bersifat tidak stable, yaitu mengubah urutan input dalam hasil akhirnya (dalam hal inputnya bernilai sama).
  • Pada penerapan secara rekursif (memanggil dirinya sendiri) bila terjadi kasus terburuk dapat menghabiskan stack dan memacetkan program.
Pada bahasa pemrograman, quicksort ada dalam pustaka stdlib.h untuk bahasa C, dan class TList dan TStringList dalam Delphi (Object Pascal) maupun FreePascal.

Nah, sekarang yuk kita coba programnya...
1. Buat tampilan interface seperti gambar di bawah ini
2. Klik pada proses button
dan ketikkan syntaxnya...
unit quicksorta;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TFQuickSort = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Edit1: TEdit;
    ListBox1: TListBox;
    ListBox2: TListBox;
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
  private
    { Private declarations }
    Data:array of integer;
  public
    { Public declarations }
  end;

var
  FQuickSort: TFQuickSort;

implementation

{$R *.dfm}

procedure QuickSort(var A:array of integer;iLo,iHi:integer);
var
  Lo,Hi,Pivot,T:integer;
begin
  Lo:=iLo;
  Hi:=iHi;
  Pivot:=A[(Lo+Hi) div 2];
  repeat
    while A[Lo]<Pivot do Inc(Lo);
    while A[Hi]>Pivot do Dec(Hi);
    if Lo<=Hi then
    begin
      T:=A[Lo];
      A[Lo]:=A[Hi];
      A[Hi]:=T;
      Inc(Lo);
      Dec(Hi);
    end;
  until Lo>Hi;
  if Hi>iLo then QuickSort(A,iLo,Hi);
  if Lo<iHi then QuickSort(A,Lo,iHi);
end;

procedure TFQuickSort.Button1Click(Sender: TObject);
var
  nilai:integer;
begin
  //menambahkan nilai ke listbox
  if TryStrToInt(Edit1.Text,Nilai) then
  ListBox1.Items.Add(IntToStr(nilai));
  //membersihkan komponen inputan nilai
  Edit1.Clear;
  //focus kursor ke inputan nilai
  Edit1.SetFocus;
end;

procedure TFQuickSort.Button2Click(Sender: TObject);
var
  indek:Word;
begin
  //menentukan panjang array
  SetLength(Data,ListBox1.Items.Count);

  //pemasukan nilai ke array
  for indek:=0 to ListBox1.Items.Count-1 do
  Data[indek]:=StrToInt(ListBox1.Items[indek]);
  //proses pengurutan/sorting
  QuickSort(data,Low(Data),High(Data));
  //kosongkan hasil
  ListBox2.Items.Clear;
  //memasukkan nilai hasil
  for indek:=0 to ListBox1.Items.Count-1 do
  ListBox2.Items.Add(IntToStr(data[indek]));
end;

procedure TFQuickSort.Button3Click(Sender: TObject);
begin
  close;
end;

end.
3. Setelah selesai, Cek hasil program tersebut...


 

Selasa, 12 Mei 2015

Exam --> Program perpangkatan

Halloooo guys,...
Kali ini, ratih bakal ngeshare contoh program yang tadi dikasih sama dosen neh...
lumayan bikin pusing juga waktu ngecobain ini program, tapi berkat semangat 45 dan kerja keras akhirnya aku berhasil,... hahahaha...,
Yuk, mari kita mulai belajarnya

1. Pertama kita buat dulu tampilan interface pada program yang mau kita buat yaaa... kek gini neh..
2. Nah, kalo udah buat tampilan interface nya.. coba kalian kik button proses untuk membuat listing programnya. dan ketikkan teks dibawah ini...
unit tugas4;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    txtA: TEdit;
    txtB: TEdit;
    txtC: TEdit;
    txtD: TEdit;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    function pangkat(x,y:integer):integer;
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

function TForm1.pangkat(x,y:integer):integer;
var
  i,c:integer;
begin
  i:=1;
  c:=1;
  while i<=y do
  begin
    c:=c*x;
    i:=i+1;
  end;
  pangkat:=c;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  A2,B3,C3,A,B,C:integer;
  D:real;
begin
  A:=strtoint(txtA.Text);
  B:=strtoint(txtB.Text);
  C:=strtoint(txtC.Text);

  A2:=pangkat(A,2);
  B3:=pangkat(B,3);
  C3:=pangkat(C,3);

  D:=(A2+B3)/C3;
  txtD.Text:=floattostr(D);
end;

end.
3. and the last, yuk kita coba cek hasil program ini...
Dan,,...... berhasil.... berhasil.... berhasil....



Selasa, 05 Mei 2015

Program perpangkatan

Halo temen-temn semua. dah lama gk ngeblog kangen juga. kali ini saya mau ngasi tutorial tentang Operator pada delphi, mungkin temen2 delphier dah sangat menguasai tentang ini, tapi mungkin ada temen2 yang lupa ato yang baru belajar bisa gabung disini dah...

Okey sebelum kita mulai, temen mesti tau dulu jenis Operator pada Delphi, di delphi ada 3 jenis Operator yaitu : Operator Aritmatika, Operator Perbandingan dan Operator Logika;

Untuk Operator Aritmatika, ada banyak jenis antara lain :
  1. ^ : Operator pemangkatan,
  2. * : Operator pengalian.
  3. / : Operator pembagian dengan hasil bilangan pecahan.
  4. Div : Operator pembagian dengan hasil bilangan Bulat.
  5. Mod : Operator Sisa Bagi.
  6. + : Operator Penjumlahan.
  7. - : Operator pengurangan. 
Oke kalo gitu mari kita mulai aja yuk....

1. Tampilan interface pada form 
2. coba kalian klik pada button pangkat 1..
dan ketikkan teks dibawah ini...
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    btnPANGKAT1: TButton;
    btnPANGKAT2: TButton;
    btnPANGKAT3: TButton;
    btnPANGKAT4: TButton;
    procedure btnPANGKAT1Click(Sender: TObject);
    procedure btnPANGKAT2Click(Sender: TObject);
    procedure btnPANGKAT3Click(Sender: TObject);
    procedure btnPANGKAT4Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    procedure pangkat1(p,l:string);
    function pangkat2(p,l:string):string;
    function pangkat3(m,n:integer):integer;
  end;

var
  Form1: TForm1;
  c:integer;

implementation

{$R *.dfm}

procedure TForm1.btnPANGKAT1Click(Sender: TObject);
var
  a,b,i,c:integer;
begin
  i:=1;
  c:=1;
  a:=strtoint(edit2.Text);
  b:=strtoint(edit1.Text);
  while i<=a do
  begin
    c:=c*b;
    i:=i+1;
  end;
  edit3.Text:=inttostr(c);
end;

procedure TForm1.pangkat1(p,l:string);
var
  a,b,i:integer;
begin
  i:=1;
  c:=1;
  a:=strtoint(p);
  b:=strtoint(l);
  while i<=a do
  begin
    c:=c*b;
    i:=i+1;
  end;
  edit3.Text:=inttostr(c);
end;

function TForm1.pangkat2(p,l:string):string;
var
  a,b,i:integer;
begin
  i:=1;
  c:=1;
  a:=strtoint(p);
  b:=strtoint(l);
  while i<=a do
  begin
    c:=c*b;
    i:=i+1;
  end;
  pangkat2:=inttostr(c);
end;

function TForm1.pangkat3(m,n:integer):integer;
var
  i:integer;
begin
  i:=1;
  c:=1;
  while i<=n do
  begin
    c:=c*m;
    i:=i+1;
  end;
  pangkat3:=c;
end;

procedure TForm1.btnPANGKAT2Click(Sender: TObject);
begin
  pangkat1(edit2.Text,edit1.Text);
end;

procedure TForm1.btnPANGKAT3Click(Sender: TObject);
begin
  edit3.Text:=pangkat2(edit2.Text,edit1.Text);
end;

procedure TForm1.btnPANGKAT4Click(Sender: TObject);
var
  a,b,c:integer;
begin
  a:=strtoint(edit1.Text);
  b:=strtoint(edit2.Text);
  c:=pangkat3(a,b);
  edit3.Text:=inttostr(c);
end;

end.



3. Nah, yuk kita coba jalankan guys....
Jreng..... jreng..... ternyata hasil begadang ku malam ini ga sia - sia guys..
ini hasil program yang tadi disampaikan sama dosen gue...:)



 

Rabu, 22 April 2015

Program deret bilangan pada program delphi

Salam Statistika!!!! Di laman ini anda akan disajikan beberapa hasil keringat saya dan hasil ketidaktiduran saya untuk mengerjankan tugas...

Deskripsi Program

Program ini adalah program perhitungan deret aritmetika dan geometri. Program ini menghitung bilangan suku ke-n yang ingin diketahui, barisan dari suku pertama hingga suku ke-n, dan jumlah deret yang dihasilkan. Program ini menggunakan logika perulangan dan logika percabangan. Logika percabangan yang dipakai adalah case-of pada penentuan perhitungan deret aritmetika atau geometri dan if-then pada penentuan rumus jumlah deret geometri berdasarkan rasionya. Logika perulangan yang dipakai adalah for-to-do pada penulisan deret bilangan dalam listbox. Program ini dibuat dengan menggunakan Delphi 7. Komponen yang digunakan pada program ini adalah  ListBox (1), button (3), edit (3), dan label (8).

1. Interface program
2. Kemudian klik pada proses button dan ketikkan teks di bawah ini :

unit deret;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    Edit1: TEdit;
    Memo1: TMemo;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
  a,i,b:integer;
begin
  a:=strtoint(Edit1.Text);
  Memo1.Clear;
  i:=1;
  while i<=a do
  begin
    b:=i;
    Memo1.Lines.Add(inttostr(b));
    i:=i+1;
  end;
end;

end.
3. setelah mari kita coba jalankan program tersebut
Hasil ketika di run
Oke, uah dulu yah postingan ratih kali ini, semoga bermanfaat guys...:)

Selasa, 14 April 2015

REKURSI

Helloooo Guys........
Pada tulisan ratih kali ini, ratih bakal ngeshare buat kalian semua tentang rekursi..
Sebelum ratih aplikasikan dalam program delphi, pasti banyak yang penasaran neh.. sebenarnya rekursi itu apa siiiiih????
Okeh deh, ini ratih kasih penjelasan sedikit tentang rekursi biar kalian gak pada bingung liat postingan ratih..
let's cekidot..:D

Rekursi adalah proses pengulangan sesuatu dengan cara kesamaan-diri. Sebagai contohnya, saat dua cermin berada paralel antara satu dengan yang lain, gambar yang tertangkap adalah suatu bentuk rekursi tak-terbatas. Istilah ini memiliki makna beragam bergantung kepada ragam disiplin mulai dari linguistik sampai logika. Penggunaan paling umum dari rekursi yaitu dalam matematika dan ilmu komputer, yang mengacu kepada suatu metode mendefinisikan fungsi yang mana fungsi tersebut menggunakan definisinya sendiri. Secara spesifik hal ini mendefinisikan suatu instansi tak-terbatas (nilai fungsi), menggunakan ekpresi terbatas dengan beberapa instansi bisa merujuk ke instansi lainnya, tapi dengan suatu cara sehingga tidak ada perulangan atau keterkaitan tak-terbatas dapat terjadi. Istilah ini juga digunakan secara umum untuk menjelaskan suatu proses pengulangan objek dengan cara kesamaan-diri.

Definisi formal dari rekursi

Rekursi dalam program perekaman layar, dengan suatu jendela paling kecil mengandung foto keseluruhan layar.
Dalam matematika dan ilmu komputer, kelas dari objek atau metode memperlihatkan perilaku rekursif bila mereka dapat didefinisikan oleh dua properti berikut:
  1. Sebuah kasus (atau beberapa kasus) dasar sederhana
  2. Sejumlah aturan yang mengurangi kasus-kasus lainnya sampai ke kasus dasarnya.
Sebagai contoh, berikut ini adalah definisi rekursif dari leluhur seseorang:
  • Orang tua seseorang adalah leluhur seseorang (kasus dasar).
  • Orang tua dari suatu leluhur juga merupakan leluhur-nya (langkah rekursi).
Bilangan Fibonacci adalah contoh klasik dari rekursi:
  • Fib(0) adalah 0 [kasus dasar]
  • Fib(1) adalah 1 [kasus dasar]
  • Untuk semua integer n > 1: Fib(n) adalah (Fib(n-1) + Fib(n-2)) [definisi rekursif]
Banyak aksioma matematika berdasarkan aturan-aturan rekursif. Sebagai contohnya, definisi formal dari bilangan asli pada Aksioma Peano dapat dideskripsikan sebagai: 0 adalah bilangan asli, dan setiap bilangan asli memiliki sebuah suksesor, yang juga merupakan bilangan asli. Dengan kasus dasar ini dan aturan rekursif, seseorang dapat membuat himpunan dari semua bilangan asli.
Gambaran humornya berbunyi: "Untuk memahami rekursi, pertama anda harus memahami rekursi." Atau mungkin yang lebih akurat, dari Andrew Plotkin: "Jika anda telah mengetahui apa itu rekursi, cukup ingat jawabannya. Kalau tidak, cari orang yang berdiri paling dekat dengan Douglas Hofstadter selain anda; lalu tanya dia rekursi itu apa."
Objek matematika yang didefinisikan secara rekursif termasuk fungsi, himpunan, dan terutama sekali fraktal.

Oke guys, kalo kalian sekarang udah ngerti apa itu rekursi.. Yuk mari kita coba dalam aplikasi delphi nya..

1. Kalian bisa buka form worksheet kalian seperti biasanya, kek gini neh gambarnyaaa...
 
2. Setelah udah, bisa kalian coba ketikkan teks berikut :
program rekursi;

{$APPTYPE CONSOLE}

uses
  SysUtils;

Type
  Tipelarik=string[20];
  Larikurut=array[1..1000] of Tipelarik;

Procedure Quicksort(var x:Larikurut;bawah,atas:word);

var
  i,j:word;
  sementara:Tipelarik;

begin
  while atas>bawah do
  begin
    i:=bawah;
    j:=atas;
    sementara:=x[bawah];
    {memecah larik menjadi 2 bagian}
    while i<j do
    begin
      while x[j]>sementara do
      j:=j-1;
      x[i]:=x[j];
      while(i<j) and (x[i]<=sementara) do
      i:=i+1;
      x[j]:=x[i];
    end;
    x[i]:=sementara;
    {urutkan rekursi}
    Quicksort(x,bawah,i-1);
    bawah:=i+1;
  end;
end;

var
  nama:Larikurut;
  n,i:word;

begin
  write('Jumlah data yang akan diurutkan ? ');readln(n);
  writeln;
  writeln('Masukkan data : ');
  for i:=1 to n do
  begin
    write('Data ke ',i,'? ');readln(nama[i]);
  end;
  {urutkan dengan procedure quick sort}
  Quicksort(nama,1,n);
  {tampilkan data yang diurut}
  writeln;
  writeln('Data yang telah diurut : ');
  for i:=1 to n do
    writeln(nama[i]);
    readln;
end.

3. Nah, kalo udah capek ngetik nya.. sekarang yuk kita coba run hasil kerja keras kita..
Taraaaaa.... ini lah hasilnya...

Dan, inilah hasil mata kuliah rekursi dari Bapak Hedi hari ini yang ratih coba guys,..
semoga bermanfaat...

Rabu, 08 April 2015

if, then , else ..... again :)

Percabangan Dalam Delphi

PERINTAH PENCABANGAN / STRUKTUR PEMILIHAN
Pada beberapa kasus terkadang kita menginginkan komputer melakukan suatu aksi tertentu bila suatu kondisi terpenuhi. Keberadaan perintah bersyarat pada suatu program memberikan pencabangan proses seperti ditunjukkan oleh Error! Not a valid link.. Bahasa Pascal menyediakan dua cara penyajian perintah bersyarat, yaitu If…Then…Else dan Case…of. Pada prinsipnya pemilihan aksi dapat dikelompokkan menjadi 3 bagian :
Pemilihan 1 pilihan/kasus. Gunakan perintah IF – THEN
Pemilihan 2 pilihan/kasus. Gunakan perintah IF – THEN – ELSE
Pemilihan N pilihan/kasus. Gunakan Case – of (Catatan sebenarnya dapat menggunakan if—then – else bersarang)
I. IF…THEN…ELSE
1. IF … THEN … ELSE : Pemilihan 2 kasus
Perintah bersyarat If umumnya digunakan untuk melakukan pencabangan sederhana (antara 2 atau 3 cabang). Atau untuk pencabangan yang banyak, dimana kondisi yang menjadi prasyaratnya melibatkan lebih dari satu parameter. Bentuk sintaks dari perintah bersyarat ini adalah:
If <kondisi_pencabangan> then
Begin
… {aksi-1}
end
else
Begin
… {aksi-2}
end;
2. IF … THEN … ELSE : Pemilihan N kasus
If <kondisi_pencabangan1> then
Begin
… {aksi-1}
end
else
If <kondisi_pencabangan2> then
Begin
… {aksi-2}
end
else
Begin
… {aksi-3}
End;
Nah, pada semester kali ini.. ratih bakal kasih kalian contoh program menggunakan if then else..
Yuk, mariiii di simak baik - baik yaaaaa.......
:)
Let's begin the program,...

1. Buat dulu form pada delphi kalian seperti tampilan dibawah yaaa...
2. Kalo udah, kalian klik button mulai dan akan muncul worksheet berikut..
3. Setelah itu, kalian coba ketiikan teks dibawah ini guys...
unit latihan1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    tGol: TEdit;
    tGaji: TEdit;
    nama: TEdit;
    Tunjangan: TLabel;
    Total: TLabel;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
  Gaji,tot,Tunjang:integer;
begin
  Gaji:=StrToInt(tGaji.Text);
  IF tGol.Text ='A' THEN Tunjang:=10000 ELSE
  IF tGol.Text ='B' THEN Tunjang:=20000 ELSE
  IF tGol.Text ='C' THEN Tunjang:=30000;
  Tunjangan.Caption:=IntToStr(Tunjang);
  tot:=Tunjang+Gaji;
  Total.Caption :=IntToStr(tot);
end;

end.
4. And then,..... finish kan?????
save dan kemudian coba jalankan program yang udah kalian buat yah guys,...:)
Ketika di run

 

Selasa, 24 Maret 2015

Aplikasi input nama Array


Pengertian Array & Contoh Program Array


     Array adalah sekumpulan variabel yang memiliki tipe data yang sama dan dinyatakan dengan nama yang sama. Array merupakan konsep yang penting dalam pemrograman, karna array memungkinkan untuk menyimpan data maupun referensi objek dalam jumlah banyak dan terindeks. Array menggunakan indeks integer untuk menentukan urutan elemen-elemennya, dimana elemen pertamanya dimulai dari indeks 0,elemen kedua memiliki indeks 1, dan seterusnya.
·         Contoh :
-          Angka untuk menyimpan sederetan bilangan
-          Buku untuk menyimpan sekumpulan data buku
-          Mahasiswa untuk menyimpan beberapa data mahasiswa
·         Sebagai contoh jika A merupakan sebuah array dengan tipe integer, maka notasi dari array A adalah: A[n], dengan n merupakan angka index dari array tersebut misal:
A[0]=100
A[1]=200
A[2]=300
A[3]=400
 
Berikut ratih bakal kasih contoh input program aplikasi input nama menggunakan variabel array....
1. Buatlah form pada worksheet delphi kalian seperti gambar dibawah ini :
 
2. Kemudian klik pada button input  sehingga muncul worksheet berikut :
kemudian ketikkan :
unit latihan2;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Edit1: TEdit;
    LBData: TListBox;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
  i:integer;
  Nama1,Nama2:array[1..5] of string;
  S:string;
begin
  S:=inputbox('INPUT DATA','Masukkan Jumlah Data :','0');
  For i:=1 to strtoint(s) do
  begin
    Nama1[i]:=inputbox('Data Ke :'+inttostr(i),'Nama Awal','');
    Nama2[i]:=inputbox('Data Ke :'+inttostr(i),'Nama Belakang','');
    LBData.Items.Add(Nama1[i]+ ' ' +Nama2[i]);
    Edit1.Text:= inttostr(LBData.Items.Count);
    end;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  LBData.Clear;
  Edit1.Text:='';
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
CLOSE;
end;

end.
berikut tampilannya...

3. Setelah berhasil kemudian coba run untuk menjalankan program tersebut 
4. Dan,,,,,.... ini lah hasil contoh program yang barusan kalian buat.
5. Selamat mencoba guys,..... :)
 


Selasa, 10 Februari 2015

Delphi aplication program to calculate square area

Menghitung Luas
  1. Membuka program Delphi
  2. Ketik menu File-New-Aplication, maka terbuka jendela kerja seperti dibawah ini
  3. Buat lah label, dan Button sehingga membentuk seperti dibawah ini

 4. Klik button1 maka akan terbuka jendela windows





 5. Kemudian Ketik

unit materi1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    txtPanjang: TEdit;
    txtLebar: TEdit;
    Label3: TLabel;
    txtLuas: TEdit;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
  Panjang,Lebar,Luas:integer;

begin
  Panjang:=StrToInt(txtPanjang.Text);
  Lebar:=StrToInt(txtLebar.Text);
  Luas:=Panjang*Lebar;
  txtLuas.Text:=IntToStr(Luas);
end;

end.

ketika ndi run

 Nah, sekian dulu yah postingan ratih kali ini..
semoga bermanfaat guys,.....

Kamis, 01 Januari 2015

Cara mengatasi error pada borland delphi

Assalamualaikum ~ :-)

Delphi merupakan perangkat pengembangan aplikasi yang sangat terkenal di lingkungan Windows. Dengan menggunakan perangkat lunak ini kita dapat membangun berbagai aplikasi windows (permainan, multimedia, database dan lain-lain) dengan cepat dan mudah. Dengan pendekatan visual, kita dapat menciptakan aplikasih yang canggih, tanpa banyak penulisan kode.
Untuk mempermudah pemogram dalam membuat program aplikasi, Delphi menyediakan fasilitas pemograman yang sangat lengkap. Fasilitas Pemograman tersebut dibagi dalam dua kelompok, yaitu objek dan bahasa pemograman.
Disini  yang akan saya jelaskan yaitu bagaimana cara menjalankan (run F9) delphi. Pengalaman ini saya alami sendiri, yaitu kesusahan / tidak bisa menjalankan (Run) . Nah disini yang akan saya jelaskan yaitu bagaimana cara Run delphine yang mengalami masalah atau error message . Karena delphi memerlukan hak akses untuk merename suatu film di C:/ , jadi yang harus kita lakukan yaitu memberikan akses lebih pada direktori yang digunakan delphi. Gimana Caranya ? Mari sama-sama kita menyimak cara berikut :
Cara 1 :
Membuka Explorer, kemudian klik kanan pada File direktory Borland di C:/Program Files/Borland/, kemudian pilih menu “Properties”.
Kalau sudah, maka akan mencul jendela propertis, nah , langsung aja. pilih pada Tab “SECURITY” , pilih user anda, kemudian Edit, nah, maka muncul jendela baru “permission for borland” , langsung cek list pada full controw, allow. Nah, kalo sudah langsung aja Apply, atau oke, dan tunggu windows 7 memproses allow acces untuk delphi tersebut.

Kalo sudah, lansung aja kita jalankan Delphi dengan access administrator. caranya dengan klik kanan pada icon delphi,( boleh pada desktop / pada menu start ). terus jalankan “As administrator” , fungsinya menjalankan access administrator terhadap program delphi tersebut.
Ada cara alternatif selain cara diatas, yaitu :
Buka direktori C:\Program Files\Borland\Delphi7\Bin, lalu cari file delphi.dro dan rename jadi delphi.$$$
Cara kedua ini mudah tp meragukan, soalnya kadang saat run / eksekusi program jadi gagal. jadi dianjurkan memakai cara ke 1.
Semoga Bermanfaat & Selamat Mencoba.
Mohon dikoreksi bila terdapat kesalahan.
Wassalamualaikum ~ :-)

Faktorial

Dalam matematika, faktorial dari bilangan asli n adalah hasil perkalian antara bilangan bulat positif yang kurang dari atau sama dengan n. Faktorial ditulis sebagai n! dan disebut n faktorial. Secara umum dapat dituliskan sebagai:
n!=n \cdot (n-1) \cdot (n-2)\cdot (n-3) \cdot ... \cdot 3 \cdot 2 \cdot 1
Sebagai contoh, nilai dari 7! adalah 7\cdot6\cdot5\cdot4\cdot3\cdot2\cdot1=5040. Berikut ini adalah daftar sejumlah faktorial :
n n!
0 1
1 1
2 2
3 6
4 24
5 120
6 720
7 5040
8 40320
9 362880
10 3628800
12 479001600
14 87178291200
16 20922789888000
18 6402373705728000
20 2432902008176640000
25 1.5511210043×1025
42 1.4050061178×1051
50 3.0414093202×1064
70 1.1978571670×10100
100 9.3326215444×10157
450 1.7333687331×101.000
1000 4.0238726008×102.567
3249 6.4123376883×1010.000
10000 2.8462596809×1035.659
25206 1.2057034382×10100.000
100000 2.8242294080×10456.573
205023 2.5038989317×101.000.004
1000000 8.2639316883×105.565.708

Dan kali ini, Ratih akan share contoh koding dan beberapa study kasus faktorial dalam pemrograman delphi..

Contoh pertama program faktorial 

program Project2;

{$APPTYPE CONSOLE}

uses
  SysUtils;
procedure faktorial(var fak,hasil:integer);
  var
  i:integer;

begin
hasil:=1;
for i:= 2 to fak do
hasil:=hasil*i;
end;
var
N,F:integer;
begin
write ('Ratih Arifiana Atika Irani');
readln;
write ('============================');
readln;
write ('Berapa faktorial?');
readln(N);
faktorial(N,F);
writeln(N,'faktorial=',F);
readln;

  { TODO -oUser -cConsole Main : Insert code here }
end.

Study Kasus 1 :

Dengan menggunakan procedure, buat program untuk menghitung banyaknya kombinasi dengan rumus :
C r,n= N!/(N-R)!.R!
N = banyaknya data yang di kombinasikan
R = jumlah kombinasi
C = jumlah kombinasi yang terjadi

Contoh :
Misal jumlah data yang dikombinasi 3 buah :
A, B, C akan akan dikombinasikan dua. dua ( R = 2 )
maka kombinasi yang terjadi adalah AB, AC dan BC.

Berikut contoh koding untuk soal di atas..


program Project2;

{$APPTYPE CONSOLE}

uses
  SysUtils;
procedure faktorial(var fak,hasil:integer);
  var
  i:integer;

begin
hasil:=1;
for i:= 2 to fak do
hasil:=hasil*i;
end;
var
C:real;N,R,NminR:integer;
f1,f2,f3:integer;
begin
write ('Banyaknya data yang dikombinasikan=');
readln(N);
write ('Banyaknya kombinasi=');readln(R);
faktorial(N,f1);
NminR:=N-R;
faktorial (NminR,f2);
faktorial(R,f3);
C:=f1/f2*f3;
writeln('Jumlah kombinasi yang terjadi=',C);
readln;

  { TODO -oUser -cConsole Main : Insert code here }
end.

LET'S READ













"BUKU ADALAH GUDANGNYA ILMU, MEMBACA ADALAH KUNCINYA"
Buku adalah jendela dunia, begitulah cerminan yang mengingatkan kita pentingnya membaca buku untuk memperoleh berbagai macam ilmu pengetahuan. Tentu saja saat ini buku sudah tidak hanya berbentuk secara fisik, e-book yang bertebaran di dunia maya pun semakin memudahkan kita untuk mengaksesnya.
Akan tetapi buku hanya akan menjadi barang mati yang tidak berguna apabila kita tidak membacanya. Permasalahannya adalah tidak semua orang suka membaca. Memang sangat disayangkan, sebab dengan suka membaca maka kita dapat menambah pengetahuan kita dalam bidang apapun.
Mananamkan untuk gemar membaca sejak dini itu sangat penting.

Matematic Expression

Di dalam matematika, variabel adalah nilai yang dapat berubah dalam suatu cakupan soal atau himpunan operasi yang diberikan. Sebaliknya,Konstanta adalah nilai yang tidak berubah, meskipun seringkali tidak diketahui atau tidak ditentukan. Konsep konstanta dan variabel adalah fundamental bagi banyak cabang matematika dan terapannya. Suatu "konstanta" dalam konteks ini janganlah dikaburkan dengan konstanta matematika, yakni suatu bilangan tertentu yang tidak bergantung kepada cakupan soal yang diberikan. ( Wikipedia Bahasa Indonesia )

Nah, pada postingan kali ini Ratih akan share beberapa contoh bagaimana cara menterjemahkan bahasa matematika ke dalam bahasa pemrograman. Berikut contoh koding2 nya.... :)

Study Kasus 1 :

E = M.C2

program soal1;

{$APPTYPE CONSOLE}

uses
  SysUtils;

var E,m,c:integer;

begin
  write('Latihan Soal');
  readln;
  write('Masukkan nilai m= '); readln(m);
  write('Masukkan nilai c= '); readln(c);
  E:=m*c*c;
  writeln('Hasil E= ',E);
  readln;
end.

 
Study Kasus 2 :

Menghitung Bangun ruang

{$APPTYPE CONSOLE}
uses
  SysUtils;
var
      r,t:integer;
      l_lingkaran,v_tabung,v_kerucut:real;
begin
write ('Ratih Arifiana Atika Irani');
readln;
write ('==========================');
readln;
  writeln('Program Menghitung Luas Lingkaran');
    write('Masukkan jari-jari = ');readln(r);
  l_lingkaran:=3.14*r;
  writeln('Luas Lingkaran = ',l_lingkaran:10:2);
    writeln('                                 ');
  writeln('Program Menghitung Volume Tabung');
  writeln('                                 ');
  write('Masukkan jari-jari = ');readln(r);
  write('Masukkan tinggi = ');readln(t);
  v_tabung:=3.14*r*r*t;
  writeln('Volume Tabung = ',v_tabung:10:2);
  writeln('                                 ');
  writeln('Program Menghitung Volume Kerucut');
  writeln('=================================');
  write('Masukkan jari-jari = ');readln(r);
  write('Masukkan tinggi = ');readln(t);
  v_kerucut:=0.5*3.14*r*t*r;
  writeln('Volume Kerucut = ',v_kerucut:10:2);
  { TODO -oUser -cConsole Main : Insert code here }
end.


Different Function and Procedure

Seperti yang kita ketahui bahwa dalam bahasa pemrograman apapun pastilah memiliki istilah yang disebut dengan function dan procedure. Tidak peduli kamu menggunakan bahasa pemrograman apapun, seperti Java, C++, Visual Basic, dan bahasa pemrograman lainnya, pastilah mengenal kedua istilah ini. Lalu apa yang membedakan antara functiond dan procedure, dan kapan kita perlu menggunakan function dan kapan kita perlu menggunakan procedure ?

Oke saya akan mencoba membahasnya. Perbedaan antara function dan procedure adalah : kalau function dia akan mengembalikan suatu nilai pada  pemanggilnya, sedangkan kalau procedure dia tidak akan mengembalikan nilai apapun pada fungsi pemanggilnya. Untuk lebih jelasnya saya akan memberikan contoh studi kasus program untuk menghitung luas persegi panjang dalam bahasa Java. Berikut ini merupakan source code procedure yang digunakan untuk menghitung luas persegi panjang
public void HitungLuasPersegiPanjang(int p, int l)
{
int luasPersegiPanjang;
luasPersegiPanjang = p * l;
System.out.println(“Luas persegi panjang = ” + ” ” + luasPersegiPanjang);
}
Berikut ini merupakan source code function untuk menghitung luas persegi panjang
public int HitungLuasPersegiPanjang(int p, int l)
{
int luasPersegiPanjang;
luasPersegiPanjang = p * l; return luasPersegiPanjang;
}

Perhatikan kata yang saya cetak tebal baik pada source code procedure maupun source code function. Seperti yang telah disebutkan diatas bahwa procedure tidak mengembalikan suatu nilai apapun pada fungsi pemanggilnya sehingga tipe data yang digunakan adalah void. Sedangkan tipe data yang digunakan pada function adalah tipe data sesuai dengan nilai yang dikembalikan. Pada kasus ini tipe data yang digunakan untuk menghitung luas persegi panjang adalah integer (dideklarasikan sebagai int di Java).  Perbedaan berikutnya, kalau pada function terdapat statement return yang berguna untuk mengembalikan nilai pada pemanggilnya. Sedangkan pada procedure tidak terdapat statement return. Pada procedure HitungLuasPersegiPanjang, setelah nilai luas persegi panjang didapatkan, maka nilai luasnya akan langsung dicetak. Hal ini ditandai dengan statement System.out.println. Perbedaan berikutnya adalah cara pemanggilan. Untuk procedure pemanggilan dilakukan dengan memanggil nama procedurenya saja. Untuk function pemanggilan harus menggunakan variabel untuk menampung nilai yang dikembalikan oleh function. Untuk lebih jelasnya coba perhatikan cara pemanggilan procedure dan function dibawah ini
Cara memanggil procedure
HitungLuasPersegiPanjang(p, l);
Cara memanggil function
luas = HitungLuasPersegiPanjang(p, l);

Untuk pemanggilan procedure cukup dituliskan nama procedurenya, yaitu HitungLuasPersegiPanjang lengkap dengan parameter procedurenya yaitu p, dan l. Sedangkan untuk memanggil function HitungLuasPersegiPanjang, maka nilai luas persegi panjang yang dikembalikan oleh function ini harus  ditampung terlebih dahulu di variabel yang bernama luas. Dimana variabel ini harus memiliki tipe data yang sama dengan tipe data function, yaitu integer. Nama function harus ditulis lengkap dengan parameter functionnya, yaitu p dan l.

Nach kapan waktunya kita menggunakan function dan procedure ?. Kamu dapat menggunakan function apabila kamu membuat suatu method yang perlu mengembalikan nilai pada pemanggilnya. Sedangkan kamu perlu menggunakan procedure apabila method tersebut tidak perlu untuk mengembalikan nilai ke pemanggilnya. Pada contoh kasus HitungLuasPersegiPanjang ini method yang lebih cocok dipakai adalah function daripada procedure. Hal ini disebabkan karena method ini digunakan untuk menghitung luas persegi panjang, dimana nilai yang perlu dikembalikan pada fungsi pemanggilnya adalah nilai luas persegi panjang.

Beberapa contoh untuk fungsi dan prosedur :

Study Kasus 1 :

program prosedur;

{$APPTYPE CONSOLE}

uses
  SysUtils;

Procedure tambah;
var
  a,b,c:integer;
begin
  write('Masukkan Nilai A = ');readln(a);
  write('Masukkan Nilai B = ');readln(b);
  c:=a+b;
  writeln('A + B = ',c);
end;
begin
  tambah;
  readln;
end.
 



Study Kasus 2 :


program prosedur by reference;

{$APPTYPE CONSOLE}

uses
  SysUtils;
var
  x,y,z:integer;
Procedure tambah (var A,B,C:integer);
begin
  C:=A+B;
end;
begin
  write('Masukkan Nilai X = ');readln(x);
  write('Masukkan Nilai Y = ');readln(y);
  tambah(x,y,z);
  writeln('X + Y = ',z);
  readln;
end.


Study Kasus 3 :

program procedure_by_value;

{$APPTYPE CONSOLE}

uses
  SysUtils;

var
  x,y:integer;
Procedure tambah (A,B:integer);
var
  c:integer;
begin

  c:=a+b;
  writeln('Hasil Penjumlahan ',c);
end;
begin
write ('Ratih Arifiana Atika Irani');
readln;
write ('========================');
readln;
  write('Masukkan Nilai X = ');readln(x);
  write('Masukkan Nilai Y = ');readln(y);
  tambah(x,y);
  readln;
end.
 



 

Oke sekian saja posting kali ini. Semoga penjelasan Ratih mudah dimengerti dan dapat menambah wawasan kamu... :)