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...
Data Structure
Selasa, 26 Mei 2015
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.
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.
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...
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).
-
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 buttondan 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....
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...
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...:)
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 :
- ^ : Operator pemangkatan,
- * : Operator pengalian.
- / : Operator pembagian dengan hasil bilangan pecahan.
- Div : Operator pembagian dengan hasil bilangan Bulat.
- Mod : Operator Sisa Bagi.
- + : Operator Penjumlahan.
- - : Operator pengurangan.
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
Oke, uah dulu yah postingan ratih kali ini, semoga bermanfaat guys...:)
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 |
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
Dalam matematika dan ilmu komputer, kelas dari objek atau metode memperlihatkan perilaku rekursif bila mereka dapat didefinisikan oleh dua properti berikut:
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.
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...
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
- Sebuah kasus (atau beberapa kasus) dasar sederhana
- Sejumlah aturan yang mengurangi kasus-kasus lainnya sampai ke kasus dasarnya.
- Orang tua seseorang adalah leluhur seseorang (kasus dasar).
- Orang tua dari suatu leluhur juga merupakan leluhur-nya (langkah 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]
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...
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...
Langganan:
Postingan (Atom)