[Share] Pemrograman Free Pascal
#1
Halo.

Gue mau bikin thread tempat share tentang pemrograman Free Pascal. Kalau masalah fokusnya, gue fokus ke pemrograman database. Nanti gue mau taruh disini link download source code-source code Free Pascal yang gue pakai untuk belajar.

Disini juga gue share e-book tentang dasar pemrograman Free Pascal. E-book nya bisa di download di sini:

Start Programming Using Object Pascal


ada juga tutorial Free Pascal yang sedang gue kerjakan. nanti juga akan share source code - source code Free Pascal yang sedang gue coba di laptop. Diharapkan teman-teman bisa bersabar sementara gue membangun thread ini. Terimakasih.

Berikut ini daftar file source hasil latihan dari e-book yang gue berikan link nya diatas. Anda bisa mendownloadnya untuk dipelajari:

Latihan 2

Latihan 3

Latihan 4

Latihan 5

Latihan 6

Latihan 7

Latihan 8

Latihan 9

Latihan 10

Latihan 11

Latihan 12

Latihan 13

Latihan 14

Latihan 15

Latihan 16


Berikut ini daftar preview source code untuk file-file latihan diatas:

Latihan 2

Latihan 3

Latihan 4

Latihan 5

Latihan 6

Latihan 7

Latihan 8

Latihan 9

Latihan 10

Latihan 11

Latihan 12

Latihan 13

Latihan 14

Latihan 15

Latihan 16

Melanjutkan daftar file source hasil latihan dari e-book berjudul Start Programming Using Object Pascal:

Latihan 17

Latihan 18

Latihan 19

Latihan 20

Latihan 21

Latihan 22

Latihan 23

Latihan 24

Latihan 25

Latihan 26

Latihan 27

Latihan 28


Berikut ini daftar preview source code untuk file-file latihan diatas:

Latihan 17

Latihan 18

Latihan 19

Latihan 20

Latihan 21

Latihan 22

Latihan 23

Latihan 24

Latihan 25

Latihan 26

Latihan 27

Latihan 28



Gue mau share permasalahan yang gue temukan pada saat coding Free Pascal di IDE Lazarus, permasalahannya itu seperti ini & dengan cara pemecahan masalahnya:


Quote:Masalah Free Pascal Gagal Menemukan Folder

Pada saat komputer tershutdown sementara alias hibernate, dan program Lazarus sedang berjalan, sedang membuka folder Latihan60. Ternyata ketika komputer dihidupkan kembali, dan source code di folder Latihan60, tepatnya file Latihan60.lpr dijalankan maka di Terminal akan muncul tulisan bahwa Latihan60/Latihan60 tidak dapat ditemukan.

Sudah restart Lazarus & restart komputer, tapi file source code tetap gagal dijalankan. Akhirnya caranya adalah hapus folder Latihan60 & buat lagi folder baru & project baru. Tulis lagi source code & akhirnya source code itu berhasil dijalankan dengan benar.


Teman-teman juga bisa share pengetahuan tentang pemrograman Free Pascal di thread ini.

Quote:Kepingin mengedit post yang nomer 1 tapi ternyata tidak ada tombol editnya seperti di Kaskus. Padahal mau di update terus informasinya. Jadinya ya bikin posting baru saja dibawah. Saya ada menemukan sebuah halaman website yang isinya cukup bisa membantu teman-teman untuk dapat mempelajari pemrograman Free Pascal. Link ke halaman website itu:

http://lazplanet.blogspot.com/p/faq.html

Smile
Wink


Berikut ini share dari mas gojopeppo mengenai pemrograman Free Pascal:

(01-14-2014, 06:03 AM)gojopeppo Wrote: ni bro ane tambahin referensi dari Grup FB sama Kaskus Big Grin
udah pasti lengkap dah tutorial nya :-bd

Komunitas Lazarus Free Pascal Indonesia
KOMUNITAS PENGGEMAR PEMROGRAMAN DELPHI INDONESIA
Pascal Indonesia
Tempat Download E-Book dan Source Code Delphi
[Sharing] Pecinta FreePascal Compiler Masuk bro!


Dibawah ini saya share beberapa bahasan tentang percobaan meracik source code Free Pascal, saya berbagi berbagai fenomena yang muncul. Semoga tulisan ini bisa membantu kita lebih memahami tentang bahasa pemrograman Free Pascal.


DateToStr: Format Pada Source Code DateToStr

Berikut ini source codenya:

Code:
{$mode objfpc}{$H+}

uses
{$IFDEF UNIX}{$IFDEF UseCThreads}
cthreads,
{$ENDIF}{$ENDIF}
Classes, sysutils
{ you can add units after this };

// Mencoba mengubah & menampilkan format Tanggal

begin

// writeln(Format(‘Tanggal Saat Ini : %s’, [LongDateFormat]));

writeln(Format(‘Tanggal Saat Ini : %s’, [DateToStr(Date)]));

writeln(‘Tekan tombol ENTER untuk menutup’);

readln;

end.


Kita menggunakan DateToStr dalam source code ini untuk menampilkan tanggal, yang perlu diperhatikan juga tulisan Date pada:

DateToStr(Date)

ini akhirnya menghasilkan konsole menampilkan tanggal hari ini, yaitu:

2-2-14

Yang tanggal sebenarnya adalah 2 Februari 2014. Mungkin 2-2-14 ini adalah kode dasar untuk penanggalan di Free Pascal. Sehingga untuk pemformatan selanjutnya kita akan berpatokan inputannya pada format ini


Source code ini di Pastebin:

http://pastebin.com/KD7Gvc43


Download File Source


Screen Shoot ketika dijalankan:

Spoiler! :
[Image: datetostr2.png]



LongDateFormat: Experimen Kode Untuk Memformat Tanggal

Dibawah ini kode hasil experimen tentang pemformatan tanggal. Referensi yang digunakan berasal dari situs ini:

http://www.freepascal.org/docs-html/rtl/...tostr.html

http://www.freepascal.org/docs-html/rtl/...etime.html

http://www.freepascal.org/docs-html/rtl/...tings.html

http://lazarus-ccr.sourceforge.net/docs/...etime.html

Source code pertama:


Code:
program Latihan87;
    
    {$mode objfpc}{$H+}
    
    uses
      {$IFDEF UNIX}{$IFDEF UseCThreads}
      cthreads,
      {$ENDIF}{$ENDIF}
      Classes, sysutils
      { you can add units after this };
    
    // Mencoba mengubah & menampilkan format Tanggal
    
    begin
    
    
    
       writeln(Format('Tanggal Saat Ini : %s', [LongDateFormat]));
    
       // writeln(Format('Tanggal Saat Ini : %s', [DateToStr(Date)]));
    
       writeln('Tekan tombol ENTER untuk menutup');
    
       readln;
    
    
    end.

Jadi di source code pertama ini kita menggunakan LongDateFormat, yang ternyata setelah source codenya dijalankan maka akan memprint di terminal:

dd” “mmmm” “yyyy

Ini sepertinya adalah format penanggalan yang akan dipakai apabila kita menggunakan LongDateFormat. Dan sepertinya ini membuka peluang untuk kita menggunakan variabel. sehingga kita tulis saja tanggal yg mau di konversikan ke format: dd” “mmmm” “yyyy . nanti dengan LongDateFormat akan diubah formatnya.

Sementara %s sepertinya akan memprint nilai dasar apa saja yg terkandung dalam LongDateFormat. %s ini bisa untuk bahan percobaan memprint nilai dasar yg terkandung dalam format-format lainnya.

Source Codenya di Pastebin:

http://pastebin.com/wCDeKpzd


Screen shoot ketika source code dijalankan:

Spoiler! :
[Image: longdateformat.png]


Menampilkan Tanggal Saat Ini


Di bawah ini source code untuk menampilkan tanggal saat ini di console:


Code:
program Latihan86;
    
    {$mode objfpc}{$H+}
    
    uses
      {$IFDEF UNIX}{$IFDEF UseCThreads}
      cthreads,
      {$ENDIF}{$ENDIF}
      Classes, sysutils
      { you can add units after this };
    
    begin
    
      writeln('Tanggal Sekarang: ',DateToStr(Now));
    
      writeln('Tekan tombol ENTER untuk menutup');
    
      readln;
    
    
    end.

Kode diatas ketika dijalankan di laptop saya masih menampilkan format tanggal yg short, selanjutnya akan saya coba utak atik format tanggalnya. Mau coba buat format tanggal yang long.

Source Codenya di Pastebin:

http://pastebin.com/4yLrcsRJ


Download File Source

Screen Shoot program ketika dijalankan:

Spoiler! :
[Image: datetostrtanggalsekarang.png]



Menampilkan Tanggal di Konsole


Dalam source code ini saya menampilkan tanggal di Terminal atau console. Dalam mengoprek tentang jam & tanggal, kita jangan lupa menambahkan: sysutils seperti contoh di bawah ini:



Code:
program Latihan85;
    
    {$mode objfpc}{$H+}
    
    uses
      {$IFDEF UNIX}{$IFDEF UseCThreads}
      cthreads,
      {$ENDIF}{$ENDIF}
      Classes, sysutils
      { you can add units after this };
    
    var
    
      Tanggal: TDateTime;
    
    begin
    
      // Mencetak Tanggal di Konsole
    
      writeln('Tanggal Sekarang : ', DateToStr(Tanggal));
    
      writeln('Tekan tombol ENTER untuk menutup');
    
      readln;
    
    
    end.

Source codenya di Pastebin:

http://pastebin.com/x9y8gT49


Download File Source



Tampilan di Terminal ketika program di jalankan:

Spoiler! :
[Image: datetostrtampilformattanggal.png]



Menampilkan Jam Saat Ini

Kode dibawah ini untuk menampilkan jam saat ini:

Code:
program Latihan84;
    
    {$mode objfpc}{$H+}
    
    uses
      {$IFDEF UNIX}{$IFDEF UseCThreads}
      cthreads,
      {$ENDIF}{$ENDIF}
      Classes, sysutils
      { you can add units after this };
    
    var
    
      Time : TDateTime;
    
    begin
    
      // Mencetak Format Waktu di Konsol
      // writeln('Current time : ', TimeToStr(Time));
    
      // Di bawah ini kodenya diganti Time menjadi Now untuk menampilkan
      // waktu saat ini
      writeln('Current time: ', TimeToStr(Now));
    
      writeln('Tekan tombol ENTER untuk menutup');
      readln;
    
    
    end.


Link Source Codenya di Pastebin:

http://pastebin.com/VaTEQ1SQ

Download File Source

Screen Shoot ketika program dijalankan:

Spoiler! :
[Image: timetostrshowhour.png]



Percobaan Untuk Jam di Konsole


Sedang mencoba input & output jam di konsole. Ada pencerahan, dengan menggunakan kode dibawah ini, kita bisa menampilkan format jam:

Code:
program Latihan84;
    
    {$mode objfpc}{$H+}
    
    uses
      {$IFDEF UNIX}{$IFDEF UseCThreads}
      cthreads,
      {$ENDIF}{$ENDIF}
      Classes, sysutils
      { you can add units after this };
    
    var
    
      Time : TDateTime;
    
    begin
    
      writeln('Current time : ', TimeToStr(Time));
      writeln('Tekan tombol ENTER untuk menutup');
      readln;
    
    
    end.


Source codenya dalam format yg rapi di Pastebin:

http://pastebin.com/ZpJ2mfvM

Screen Shoot ketika kode diatas dijalankan:

Spoiler! :
[Image: timetostr.png]



Kode Untuk Mengedit Date Separator di Free Pascal


Code:
unit Latihan3unit1;
    
    {$mode objfpc}{$H+}
    
    interface
    
    uses
      Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, EditBtn,
      DbCtrls, StdCtrls;
    
    type
    
      { TForm1 }
    
      TForm1 = class(TForm)
        Button1: TButton;
        Button2: TButton;
        DateEdit1: TDateEdit;
        Edit1: TEdit;
        Label1: TLabel;
        procedure Button1Click(Sender: TObject);
        procedure Button2Click(Sender: TObject);
        procedure FormCreate(Sender: TObject);
      private
        { private declarations }
      public
        { public declarations }
      end;
    
    var
      Form1: TForm1;
    
    implementation
    
    {$R *.lfm}
    
    { TForm1 }
    
    procedure TForm1.FormCreate(Sender: TObject);
    begin
    
      // Mensetting date separator pada saat runtime
      DateSeparator:='/';
    
      // Menampilkan tanggal sekarang pada saat runtime
      DateEdit1.Date:=Now;
    
      // sumber info: http://forum.lazarus.freepascal.org/index.php?topic=19563.0
    
    end;
    
    procedure TForm1.Button1Click(Sender: TObject);
    
    // mengirimkan text di kotak Edit ke Label dengan mengklik tombol
    
    // sumber : http://forum.lazarus.freepascal.org/index.php?topic=13871.0
    var
    
      StringVar: string;
    begin
    
      StringVar:=Edit1.Text;
      Label1.Caption:=StringVar;
    
    end;
    
    procedure TForm1.Button2Click(Sender: TObject);
    
    begin
    
    end;
    
    end.

Source codenya di Pastebin:

http://pastebin.com/Zy1PGhwR

Download Source Code

Screen shoot ketika program dijalankan:

Spoiler! :
[Image: tdateedit.png]



Penggunaan Berulang Nilai Sebuah Variabel Bagian 2


Melanjutkan source code sebelumnya, dalam source code dibawah ini, dicoba untuk menjalankan multiple input:

Code:
program Latihan96;

{$mode objfpc}{$H+}

uses
  {$IFDEF UNIX}{$IFDEF UseCThreads}
  cthreads,
  {$ENDIF}{$ENDIF}
  Classes, sysutils, dateutils
  { you can add units after this };

// Membuat inputan tanggal
   var

     Tanggal : TDateTime;

     Tahun : Word; // Untuk kode tahun

     Bulan : Word; // Untuk kode bulan

     Hari : Word; // Untuk kode hari

begin

    write('Masukan Kode Tahun: ');

    readln(Tahun);

    writeln('Tahun yang dimasukan: ',Tahun);

    // Ini bukti kalau variabel, 1x didefinisikan, maka valuenya bisa dipakai diseluruh
    // source code secara berulang-ulang.

    writeln('Tahun depan: ',Tahun);


    // Sekarang percobaan yang sama untuk kode bulan
    write('Masukan Kode Bulan: ');

    readln(Bulan);

    writeln('Bulan yang dimasukan: ',Bulan);

    writeln('Bulan depan: ',Bulan);


    // Sekarang percobaan yang sama untuk kode hari

    write('Masukan Kode Hari: ');

    readln(Hari);

    writeln('Hari yang dimasukan: ',Hari);

    writeln('Hari besok: ',Hari);


    readln; // Supaya layar console tidak langsung menutup

end.


Source codenya di Pastebin:

http://pastebin.com/bSVdbb0D


Download file source disini


Screen shoot ketika program dijalankan:

Spoiler! :
[Image: variabelisianberulang.png]



EncodeDate : Kode yang Berhasil Untuk Tanggal dengan Variabel

Berikut ini kode yang berhasil untuk dijalankan. Kode ini melibatkan FormatDateTime, Variabel, EncodeDate.

Code:
program Latihan98;

{$mode objfpc}{$H+}

uses
  {$IFDEF UNIX}{$IFDEF UseCThreads}
  cthreads,
  {$ENDIF}{$ENDIF}
  Classes, sysutils, dateutils
  { you can add units after this };

var

Tanggal : Tdatetime;

Tahun : word;

Bulan : word;

Hari : word;


begin

   write('Masukan kode tahun : ');

   readln(Tahun);

   write('Masukan kode bulan : ');

   readln(Bulan);

   write('Masukan kode tanggal: ');

   readln(Hari);


   // Sekarang memasukan variabel diatas ke dalam kode tanggal

   Tanggal := EncodeDate(Tahun, Bulan, Hari);

   writeln ('Tanggal : ' + FormatDateTime('dd/mm/yyyy',Tanggal));

   readln;



end.

#2
(01-05-2014, 03:00 AM)him Wrote: minat mencoba, cuman bingung mau bikin program apa Big Grin mungkin om ada saran

Saya juga masih pengguna baru. Bagi saya yang terpenting pertama sih ikutin aja dulu tutorial yang ada di e-book atau ada di internet. Mulai pelajari syntax & bahasa pemrograman Free Pascal. Yang terpenting faham bahasanya dulu. Nggak penting mau niat bikin program apa. Nanti kalau udah merasa enak dengan bahasa Free Pascal baru deh kita mikirin mau bikin program apa.

Pada dasarnya, menurut saya, pemrograman itu adalah suatu usaha untuk memecahkan masalah. Jadi kita lihat aja permasalahan di sekitar kita, kira-kira permasalahan apa yg membutuhkan program komputer untuk menyelesaikannya. Seperti contohnya saya, saya berkerja di kantor, di bagian Sumber Daya Manusia (SDM). Maka permasalahan yang saya hadapi adalah pengelolaan data karyawan. Banyak sekali data karyawan yang mesti dikelola. Dan data-data ini masih terasa sulit jika hanya dikelola menggunakan aplikasi office, seperti Microsoft Office atau LibreOffice.

Maka saya membutuhkan Free Pascal & MySQL server untuk membantu memudahkan mengelola data-data karyawan. Nah begitulah contoh bagaimana pada awalnya kita menentukan arah belajar pemrograman yang ingin kita lakukan atau tekuni.

Smile

#3
Kepingin mengedit post yang nomer 1 tapi ternyata tidak ada tombol editnya seperti di Kaskus. Padahal mau di update terus informasinya. Jadinya ya bikin posting baru saja dibawah. Saya ada menemukan sebuah halaman website yang isinya cukup bisa membantu teman-teman untuk dapat mempelajari pemrograman Free Pascal. Link ke halaman website itu:

http://lazplanet.blogspot.com/p/faq.html

Smile

#4
Boleh dicoba ini Wink
bang ijin salin >Big Grin<
semoga bisa dikembangin lagi biar semakin mengerti :-bd

#5
Nice share om Big Grin
Izin meluncur dulu ke TKP
Sun :*
xMebhZer0 - twitter.com/xmebhzero - facebook.com/MebH95

#6
(01-05-2014, 09:30 PM)opiek97 Wrote: Boleh dicoba ini Wink
bang ijin salin >Big Grin<
semoga bisa dikembangin lagi biar semakin mengerti :-bd

iya silahkan di copy & dikembangkan , silahkan juga share source code Free Pascal hasil latihan di thread ini. biar rame & terus update threadnya. Kita berdiskusi tentang pemrograman Free Pascal disini.


(01-05-2014, 11:16 PM)Mebh95 Wrote: Nice share om Big Grin
Izin meluncur dulu ke TKP
Sun :*

Terimakasih ya sudah berminat dengan pemrograman Free Pascal. Terimakasih juga sudah memberikan komentar.

#7
wah pascal, yang susah sih pseudopascal >.<

#8
(01-06-2014, 11:25 AM)ismiyushar53 Wrote: wah pascal, yang susah sih pseudopascal >.<

Iya ini saya belajar & sharing yang mudah saja. Pemrograman Free Pascal menggunakan IDE Lazarus. Soalnya saya masih pemula di dunia pemrograman. Semoga bermanfaat juga untuk para pemula yang lainnya. Smile

#9
wah mantap om .... ane tes case download dulu ... pascal ini pelajaran pertama ane waktu kuliah ... sangat bagus untuk melatih logika .. sippp +2
FOLLOW @DutaLinux
for more question and sharing about security and Opensource only

#10
(01-06-2014, 01:36 PM)zee eichel Wrote: wah mantap om .... ane tes case download dulu ... pascal ini pelajaran pertama ane waktu kuliah ... sangat bagus untuk melatih logika .. sippp +2

Terimakasih mas @zee eichel . kalau mas zee juga ada source code, tutorial, e-book mari dibagikan di thread ini untuk kita belajar bersama Smile






Users browsing this thread: 1 Guest(s)