ahlan wa sahlan saudaraku :)

Rabu, 12 Juni 2013

mencari rata-rata dengan program pascal

Buat yang baru belajar pascal,ini nih ada program simpel buat nyari rata-rata. Semangat belajar program pascal. Alah bisa karena biasa, pantang menyerah yaa :)
uses crt;
var i,n:integer;
sum,r:real;
x:array[1..100] of integer;
begin
write('jumlah n: ');
readln (n);
sum:= 0;
writeln('masukkan angka: ');
for i := 1 to n do
begin
readln(x[i]);
sum:=sum+(x[i]);
end;
r:=sum/n;
write('rata-ratanya adalah: ',r:3:3);
readln;
end.
Nah, gini penjelasannya, kalo kita pengen nyari nilai rata-rata sebanyak 5 bilangan(misal), saat di run masukkan angka5. Kemudian masukkan angka yang akan kita hitung rata-ratanya. Misal 7,6,3,9, dan 23. Setelah itu tekan enter ..
Walaaa, hasil dari rata-rata ke 5 bilangan tersebut adalah 9,6. Benar kan?



Selamat mencoba :)

integral metode simpson dengan program pascal

Hai rek, hehe,kemaren ada tugas kampus matkul program komputer, jadi tak share aja deh cara buat nyari integral dengan metode simpson, gimana yah caranya?check this out :)
uses crt;
var
a,b,h,t,s,xi,p : real;
i,n:integer;

function f(x:real):real;
begin
f:=1/sqrt(2*3.14)*exp(-0.5*x*x);
end;

begin
write('batas atas: ');
readln(a);
write('batas bawah: ');
readln(b);
write('jumlah iterasi: ');
readln(n);

if n mod 2 = 1 then halt;

h:= (b-a)/(n);

t:=0;
s:=0;

for i:= 1 to n-1 do
 begin
 xi:=a+i*h;
  if i mod 2 = 0 then
   t:= t+f(xi)
 end;
for i:= 1 to n do
 begin
 xi:=a+i*h;
  if i mod 2 = 1 then
   s:= s+f(xi)
 end;
p:=(h/3)*(f(a)+f(b)+2*t+4*s);
writeln('Nilai integral adalah : ',p:1:3);
readln;
end.
Gitu sintagnya. Sintag diatas digunakan untuk menyelesaikan soal dalam mencari integral dari
Hasilnya adalah 0,475 kan?
Untuk soal lainnya tinggal mengganti fungsi pada sintag diatas.


Selamat mencoba, semoga sukses :)

eliminasi gauss dengan program pascal

Pengen ngeshare nih gimana sih caranya buat program eliminasi gauss dengan program pascal. Semoga dapat membantu :)

uses crt;Const
Max = 25;
Type
Matrik = record
Row, col : byte;
Element : array [1..max, 1..max] of real;
End;
Vektor = record
Row : byte;
Element : array [1..max] of real;
End;
Var
x, b : vektor;
A : matrik;
n : integer;
c : real;
Error : boolean;
Procedure masukkandata;
Var i,j : byte;
Begin
Write ('Jumlah persamaan :');
Readln (n);
A.row := n;
A.col := n ;
b.row := n;
for i := 1 to n do
begin
writeln ('Persamaan ke ',i );
for j := 1 to n do
begin
write ('X[',i,',',j,'] = ');
readln (A.element[i,j]);
end;
write('Y[',i,']   = '); readln(A.element[i,n+1]);
writeln;
end;
end;
procedure eliminasigauss;
var I,j,k : integer;
temp, S : real;
Begin
Error := false;
For i := 1 to n do
Begin
If (A.element[i,i] = 0 ) then
Begin
write(A.element[i,i]) ;
Error := true;
Exit;
End;
temp := A.element[i,i];
for k := 1 to n+1 do
begin
A.element[i,k] := A.element[i,k] / temp;
end;
For j := 1  to n do
begin
if(j<>i) then
begin
c := A.element[j,i];
for k := 1 to n+1 do
begin
A.element[j,k] := A.element [j,k] - (c * A.element[i,k]);
end;
end;
end;
end;
x.row := n;
for i := n downto 1 do
begin
if (A.element [i,i] = 0.0 ) then
Begin
Error := true;
Exit;
End;
x.element[i] := A.element[i,n+1];
end;
end;
Procedure tulishasil;
Var i : byte;
Begin
If (error) then
Begin
Writeln ('tidak memenuhi');
End
Else
Begin
Writeln;
Writeln ('Penyelesaian : ');
For i := 1 to x.row do
Writeln('X',i,' = ',x.element[i]:6:2);
End;
End;
Begin
Masukkandata;
Eliminasigauss;
Tulishasil;
readln;
End.
Itu tuh sintagnya, sintag ini dapat digunakan untuk mencari akar-akar persamaan dari beberapa persamaan,tergantung nilai n yang kita masukkan.
Berikut adalah contoh hasil program dari soal:
2x1 + 3 x2 + 6 x3 = 5
7x1 + 5 x2 +6 x3 = 2
4x1 + 3x2 + 6x3 = 7
Dan jawabannya adalah
x1 = 1
x2 = -4                          
x3 = 2,5




selamat mencoba kawan-kawan :)

program bintang naik dengan pascal

Gimana sih caranya buat bintang naik dengan program pascal? Simpel kok ternyata, just check this :) 

uses crt;
var n,i,j:integer;
begin
write('banyak bintang: ');
readln(n);
for i:= 1 to n do
begin
for j:=1 to i do
write('*');
readln;
end;
end.
Gitu sintagnya, setelah dirun ini nih hasilnya ...



Practice this yaaa :) sukses hanya ada pada orang yang senantiasa mencoba, good luck :)

Senin, 13 Mei 2013

lomba blog se jatim

ikuti lomba blog se jawa timur dengan tema peran aktif pemuda dalam mengimplementasikan  nilai kebangkitan nasional .... lets joint ...

Kamis, 25 April 2013

pascal bintang menurun

iseng-iseng buat pola bintang menurun dari program pascal. buat yang baru belajar pascal mungkin bisa dicoba-coba ..
uses crt;
var i,n,j :integer;
begin
write ('jumlah bintang =');
readln(n);
for i:= n downto 1 do
begin
for j:= 1 to i do
write('*');
readln;
end;
end.

setelah di run, ini nih hasilnya


semoga bermanfaat, selamat mencoba, semangat ^^

Train 42 Forever Together


Assalamu’alaykum warahmatullahi wabarakatuh ...
Sabtu dan minggu yang lalu, tanggal 13-15 April 2013 alhamdulillah kami diberi kesempatan untuk dapat menjalani Pelatihan Menjadi Tutor yang di selenggarakan oleh BPU JMMI ITS. Train 42 nama nya, apa sih Train 42 itu? Train 42 merupakan kepanjangan Training For Tutor yang merupakan program kerja BPU JMMI ITS yang bertujuan untuk memberi pelatihan kepada pesertanya dan diharapkan para alumni pelatihan mampu menjadi pengajar dari kampung binaan JMMI ITS.

Rangkaian kegiatan Train 42 yang dilakukan 2 hari tersebut sangat menyenangkan. Di hari pertama kami menjalani kegiatan berupa pemberian materi oleh pembicara-pembicara yang telah berpengalaman, simulasi mengajar langsung, dan mabit pada malam hari nya. Kemudian di hari kedua kami melakukan syuro’ dan presentasi terhadap hasil simulasi yang telah dilakukan hari sebelumnya. Ada keinginan untuk sedikit menceritakan pengalaman yang kami lalui selama 2 hari ini. Semoga bermanfaat.

Di hari pertama, pemberian materi pertama oleh bapak Asril Novian Alifi. Beliau adalah angkatan pertama dari program “Indonesia Mengajar”. Motto beliau adalah Inspirasi Tiada Henti. Benar, seperti motto hidupnya, beliau begitu memberi inspirasi kepada kami, para peserta Train 42 dalam mengajar. Pak Asril berbagi pengalamannya mengajar di Lampung selama setahun saat melakukan program Indonesia Mengajar. Berbagai tips dalam mengajarpun beliau bagi dalam materinya yang terbatas 2 jam saja. “Jadi pengajar gak boleh jaim” itu lah yang selalu di tekankan pas Asril supaya menjadi pengajar yang berhasil. Kemudian materi yang tak kalah menariknya, yaitu materi yang dibawakan oleh Bapak Bagoes Sunyoto. Hidup sekali, bermanfaat, pasti ! adalah motto hidup beliau. Beliau menekankan agar kami, calon pengajar dalam memberikan materi harus kreatif agar murid didikan kita juga menjadi kreatif guna Indonesia Emas kedepannya. Pak Bagoes ini amatlah anti copy paste, atau sering disingkat copas. Menurut beliau copas merupakan suatu pembodohan terhadap akal, pelumpuhan dan pengerdilan nalar. Pak Bagoes juga memberikan trik-trik dalam mengajar, khusunya kepada anak-anak kecil, sasaran mengajar kami.

Ba’da shalat ashar kami langsunng melakukan simulasi dengan terjun langsung ke salah satu daerah binaan, yaitu di daerah Medokan, Surabaya. Subhanallah, sampai disana kami disambut dengan riuh rendahnya suara anak kecil. Banyak ternyata anak-anak di kampung binaan Medokan ini, senang rasanya telah lama tidak berkumpul dengan anak-anak kecil seperti suasana kali itu. Kesan pertama, anak-anak disini sangat senang melihat kedatangan kami, meski awalnya mereka susah di atur tapi itu merupakan tantangan tersendiri untuk kami sebagai pengajar baru. Mencuri perhatian mereka tidaklah mudah. Kami menggunakan 3 metode dalam pemberian materi kepada adik- adik. Kami memberikan materi Isro’ Mi’roj dengan metode komik, lagu dan pemberian pertanyaan disertai reward. Alhamdulillah materi kami bisa ditangkap oleh adik-adik kampung binaan Medokan. Pengalaman mengajar terebut adalah pertama dan sangat berkesan terhadap kami. Kemudian kami, para akhwat menuju SDIT tempat kami menginap semalam. Malam harinya diisi materi oleh mbak Immash Pratiwi serta melihat film yang berjudul “Tanah Surga Katanya”.

Di hari yang kedua sekaligus hari terakhir kami menjalani pelatihan ini, kami mengadakan syuro’ sekelompok kampung binaan Medokan dan mempresentasikan hasil simulasi yang telah kami lakukan hari sebelumya. Kami juga memberi saran untuk BPU kedepannya dalam melakukan inovasi-inovasi pengajaran agar adik-adik yang berada di kampung binaan tidak bosan.

Demikianlah 2 hari yang telah kami lalui saat melakukan Training For Tutor, semoga apa yang kami lakukan 2 hari ini dapat bermanfaat untuk sesama karena sebaik-baiknya manusia adalah yang bermanfaat untuk sesamanya, aamiin ..

Wassalamu’alaykum warohmatullahi wabarakatuh ...

Minggu, 31 Maret 2013

kebahagiaan yang sempurna

hari ini, berbarengan dengan hari ditutupnya bulan maret taun 2013, FORSIS (Forum Studi Islam Statistika) ITS mengadakan bakti sosial dengan anak-anak kampung binaan GII(Gudang Ilmu Indonesia) yang terletak di Mulyosari, Surabaya. Bakti Sosial ini merupakan rangkaian acara akbar FORSIS yaitu FF(Fantastic FORSIS).
betapa senangnya melihat keceriaan sebanyak kurang lebih 32 anak-anak yang masih polos disana. berbagi kebahagiaan, canda dan tawa. sejenak melupakan konflik yang ada di fikiranku. acara dimulai dari jam delapan pagi. mulai acara nonton bareng sama mereka. film yang bertokoh utama Delisa yang dipilih untuk ditonton kami semua. lanjut keacara berikutnya yaitu game bersama. lucu sekali melihat pemandangan anak-anak kecil makan kerupuk dengan ditutup matanya, mereka begitu polos :). ada 2 game lainnya, mengeluarkan bola dari kotak box dan yang terakhir estafet karet dengan menggunakan sedotan. kerjasama yang mereka tunjukkan, sangat lugu dan asli. menyentuh hati kataku. acara terakhir ditutup dengan pemberian hadiah, bisa dikata kepada semua anak.
sungguh, senang rasanya bisa berbagi kebahagiaan, share and give sebagai tema kegiatan baksos ini sangat terasa. harapanku, semoga baksos seperti ini tidak sekali dua kali dilakukan. lebih sering, lebih baik bukan? kalo bukan kita yang berstatus mahasiswa yang katanya memegang 4 Peran Fungsi Mahasiswa, siapa lagi yang peduli kepada anak-anak yang kurang beruntung seperti mereka.



" mungkin mereka bukan orang yang sempurna, namun kebahagiaan mereka begitu sempurna"

Jumat, 29 Maret 2013

diagnosa penyakit dengan delphi

ada tugas kuliah membuat program pendiagnosaan penyakit dengan delphi, barangkali aja membantu buat yang lagi belajar program delphi



unit tugas2;
interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;
type
  TForm1 = class(TForm)
    Label1: TLabel;
    CheckBox1: TCheckBox;
    CheckBox2: TCheckBox;
    CheckBox3: TCheckBox;
    CheckBox4: TCheckBox;
    Button1: TButton;
    Edit1: TEdit;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
var
  Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
if checkbox1.checked=true then if checkbox2.checked=true then if checkbox3.checked=true then if checkbox4.checked=true then edit1.Text:= 'Tidak Terdiagnosa';
if checkbox1.checked= true then if checkbox2.checked= true then if checkbox3.checked= true then if checkbox4.checked= false then edit1.Text:= 'Malaria';
if checkbox1.checked= true then if checkbox2.checked= true then if checkbox3.checked= false then if checkbox4.checked= true then edit1.Text:= 'Tidak Terdiagnosa';
if checkbox1.checked= true then if checkbox2.checked= true then if checkbox3.checked= false then if checkbox4.checked= false then edit1.Text:= 'Tidak Terdiagnosa';
if checkbox1.checked= true then if checkbox2.checked= false then if checkbox3.checked= true then if checkbox4.checked= true then edit1.Text:= 'Tidak Terdiagnosa';
if checkbox1.checked= true then if checkbox2.checked= false then if checkbox3.checked= true then if checkbox4.checked= false then edit1.Text:= 'Tidak Terdiagnosa';
if checkbox1.checked= true then if checkbox2.checked= false then if checkbox3.checked= false then if checkbox4.checked= true then edit1.Text:= 'Tidak Terdiagnosa';
if checkbox1.checked= true then if checkbox2.checked= false then if checkbox3.checked= false then if checkbox4.checked= false then edit1.Text:= 'Tidak Terdiagnosa';
if checkbox1.checked= false then if checkbox2.checked= true then if checkbox3.checked= true then if checkbox4.checked= true then edit1.Text:= 'Tidak Terdiagnosa';
if checkbox1.checked= false then if checkbox2.checked= true then if checkbox3.checked= false then if checkbox4.checked= false then edit1.Text:= 'Tidak Terdiagnosa';
if checkbox1.checked= false then if checkbox2.checked= true then if checkbox3.checked= false then if checkbox4.checked= true then edit1.Text:= 'Tidak Terdiagnosa';
if checkbox1.checked= false then if checkbox2.checked= true then if checkbox3.checked= false then if checkbox4.checked= false then edit1.Text:= 'Tidak Terdiagnosa';
if checkbox1.checked= false then if checkbox2.checked= false then if checkbox3.checked= true then if checkbox4.checked= true then edit1.Text:= 'Tidak Terdiagnosa';
if checkbox1.checked= false then if checkbox2.checked= false then if checkbox3.checked= true then if checkbox4.checked= false then edit1.Text:= 'Tidak Terdiagnosa';
if checkbox1.checked= false then if checkbox2.checked= false then if checkbox3.checked= false then if checkbox4.checked= true then edit1.Text:= 'Tidak Terdiagnosa';
if checkbox1.checked= false then if checkbox2.checked= false then if checkbox3.checked= false then if checkbox4.checked= false then edit1.Text:= 'Tidak Terdiagnosa';
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
application.terminate;
end;
end.

ini hasilnya
dicoba ya, semangat ... :)

program statistika deskriptif dengan delphi

assalamu'alaikum ....
saya pengen ngeshare buat temen2 yang pengen tau gimana sih caranya buat program statistika deskriptif (minitab mini) pake program delphi ...
ini nih sintagnya, di program ini kita pake 2 form ...




a.      Form 1
unit tugas1;

interface

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

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

var
  Form1: TForm1;
  i,j,k,V,D,a: integer;
  Urut,b: real;
  Xbar,Varian: array [1..100] of real;
  X: array [1..100,1..100] of real;

implementation
uses Soal1_1;
{$R *.dfm}

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

procedure TForm1.Edit1Change(Sender: TObject);
begin
stringgrid1.ColCount:=strtoint(edit1.Text)+1;
if strtoint(edit1.Text)= 0 then
stringgrid1.FixedCols:=0
else stringgrid1.FixedCols:=1;
for i:=1 to strtoint(edit1.text) do
begin
stringgrid1.cells[i,0]:='X'+inttostr(i);
end;
end;

procedure TForm1.Edit2Change(Sender: TObject);
begin
stringgrid1.RowCount:=strtoint(edit2.Text)+1;
if strtoint(edit2.Text)=0 then
stringgrid1.FixedRows:=0
else stringgrid1.FixedRows:=1;
for j:=1 to strtoint(edit2.text) do
begin
stringgrid1.cells[0,j]:=inttostr(j);
end;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
stringgrid1.FixedCols:=0;
stringgrid1.FixedRows:=0;
edit1.Text:='0';
edit2.Text:='0';
stringgrid1.ColCount:=0;
stringgrid1.RowCount:=0;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
V:=strtoint(edit1.Text);
D:=strtoint(Edit2.Text);
form2.Show;
form2.stringgrid1.RowCount:=V+1;
for j:=1 to V do
begin
form2.stringgrid1.Cells[0,j]:='X'+inttostr(j);
form2.StringGrid1.RowCount:=V+1;
end;

for i:=1 to V do
begin
Xbar[i]:=0;
for j:=1 to D do
begin
Xbar[i]:=Xbar[i]+((strtofloat(stringgrid1.Cells[i,j])/D));
end;
form2.StringGrid1.Cells[1,i]:=floattostr(Xbar[i]);
end;

for i:=1 to V do
begin
Varian[i]:=0;
for j:=1 to D do
begin
Varian[i]:=Varian[i]+(sqr(Xbar[i]-strtofloat(stringgrid1.Cells[i,j]))/(D-1));
end;
form2.StringGrid1.Cells[2,i]:=floattostr(Varian[i]);
form2.StringGrid1.Cells[3,i]:=floattostr(sqrt(Varian[i]));
end;

for i:=1 to V do
begin
for j:=1 to D do
begin
X[i,j]:=strtofloat(stringgrid1.Cells[i,j]);
end;
end;

a:=(D+1) div 2;
b:=(D+1)/2;
for i:=1 to V do
begin
for j:=1 to D-1 do
begin
for k:=j+1 to D do
begin
if X[i,j]>X[i,k] then
begin
Urut:=X[i,j];
X[i,j]:=X[i,k];
X[i,k]:=Urut;
end;
end;
end;
form2.StringGrid1.Cells[4,i]:=floattostr(X[i,1]);
form2.StringGrid1.Cells[5,i]:=floattostr(X[i,D]);
form2.StringGrid1.Cells[6,i]:=floattostr(X[i,a]+((b-a)*(X[i,a+1]-X[i,a])));
end;
end;

end.

b.      Form 2
unit tugas1a;
interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Grids, StdCtrls;
type
  TForm2 = class(TForm)
    Label1: TLabel;
    StringGrid1: TStringGrid;
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
var
  Form2: TForm2;
implementation
{$R *.dfm}
procedure TForm2.FormCreate(Sender: TObject);
begin
  stringgrid1.Cells[1,0]:='mean';
  stringgrid1.Cells[2,0]:='var';
  stringgrid1.Cells[3,0]:='SD';
  stringgrid1.Cells[4,0]:='min';
  stringgrid1.Cells[5,0]:='max';
  stringgrid1.Cells[6,0]:='median';
end;
end.

ini ni hasilnya setelah di run
ini tampilan form 1 untuk memasukkan data
  
dan tampilan form 2 untuk hasilnya 

di coba ya, semoga berhasil dan bermanfaat :)