LAMPIRAN A: LISTING PROGRAM

dokumen-dokumen yang mirip
1 Latihan 6 Ketentuan Soal:

1. Menggambar ANAK PANAH. Setelah kita RUN dan saya klik button ANAK PANAH maka akan muncul gambar anak panah seperti nampak pada gambar dibawah ini

Minggu ke : 4 Penyusun : Dian Usdiyana Rini Marwati Materi : 4. Pernyataan Kondisional 4.1 If then. 4.2 If. then.else..

PROSEDUR. Mahasiswa dapat memahami penggunaan prosedur. Mahasiswa dapat membuat prosedur. Mahasiswa dapat memahami variabel lokal dan variabel global

LABORATORIUM KOMPUTER TEKNIK INFORMATIKA STT DHARMA ISWARA MADIUN PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK-1 PROCEDURE DAN FUNCTION

LABORATORIUM KOMPUTER TEKNIK INFORMATIKA STT DHARMA ISWARA MADIUN PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK-1 LOGIKA PERULANGAN-1

Minggu ke : 7. Bentuk umum : While <kondisi> do <Pernyataan>

URAIAN POKOK PERKULIAHAN. (1) Nilai akar-akar, x 1 dan x 2, dapat ditentukan dengan menggunakan rumus:

PERCOBAAN 4 GRAFIKA KOMPUTER DENGAN DELPHI

For <pencacah> := <nilaiawal> to <nilaiakhir> do <pernyataan>

LABORATORIUM KOMPUTER TEKNIK INFORMATIKA STT DHARMA ISWARA MADIUN PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK-1 TIPE DATA DAN VARIABEL

PERCOBAAN I STATEMENT

LABORATORIUM KOMPUTER TEKNIK INFORMATIKA STT DHARMA ISWARA MADIUN PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK-1 STRUKTUR KEPUTUSAN-1

STRUCTURED QUERY LANGUAGE (SQL)

FieldName DataType FieldSize Status UserPass Text 40 Primary Key Nama_User Text 30 Password Text 10

Kontrol Data Set dan Navigasi Tabel

Lampiran 1. Form 01. unit Skripsi; interface. uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, math;

Delphi 7. Merencang Program dengan Fungsi IF. Ketentuan Soal : 1. Jabatan : JABATAN GAJI POKOK Direktur Manager Staff

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, ComCtrls, ExtDlgs, TeeProcs, TeEngine, Chart,

Object Name Caption. RadioButton1 rpria Pria RadioButton2 rwanita Wanita. ComboBox1 ckode - Edit1 enapar - Edit2 ehrg - Edit3 ejumbel - Edit4 etotal -

PRAKTIKUM 3 BERBAGAI MACAM TIPE DATA (Integer dan Real)

PROSEDUR DENGAN PARAMETER. Mahasiswa dapat memahami penggunaan prosedur dengan parameter. Mahasiswa dapat membuat prosedur dengan parameter.

PRAKTIKUM 3 BERBAGAI MACAM TIPE DATA

Daftar Pustaka. Supriyadi, Moh Pemrograman Sistem Pengendali dengan Delphi.

ALGORITMA PENCARIAN. c. Hasil pencarian berupa nilai Boolean yang menyatakan status hasil pencarian.

LAMPIRAN A: DDL DATABASE

ANGKA TERBILANG. Program ini terdiri dari beberapa komponen yaitu:

MODUL 2 EVEN, VARIABEL DAN FUNGSI KONVERSI

DAFTAR PUSTAKA. Abdia, Gunaidi Away.2008.The Shortcut Of Delphi For ACCOUNTING.Bandung : Informatika.

Kodingan untuk Membuat Grafik dari Persamaan Garis Lurus dan Kuadrat Menggunakan Delphi 7

Elga Lesmana

URAIAN POKOK PERKULIAHAN

4.1 Struktur Rancangan Puncak-Turun dengan Procedure

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

DAFTAR PUSTAKA. Choiron, Moch. Agus. (tanpa tahun). Interpolasi. Malang.

BAB 4 IMPLEMENTASI HASIL PERANCANGAN

Pengenalan Borland Delphi 7.0

LANJUTAN APLIKASI DATABASE

PEMROGRAMAN DATABASE DENGAN DELPHI DAN MICROSOFT ACCESS

Bahasa Pemrograman (TD22093)

LAPORAN PRAKTIKUM FISIKA KOMPUTASI INTERPRETASI GRAFIS INTENSITAS WARNA DASAR RGB PADA GAMBAR BITMAP MENGGUNAKAN DELPHI7

GRAPHICS AND VISUALIZATION. Logo

BAB 1 PENDAHULUAN 1.1 Latar Belakang

Visual Delphi 7 D3 TI FMIPA UNS Sakroni

URAIAN POKOK PERKULIAHAN

Borland Delphi 7. Created By 1

LAMPIRAN. A. Flowchart 1. Contoh Flowchart Penempatan Subjek. Gambar 185. Flowchart Penempatan Subjek AB

PEMRORAMAN DATA BASE (FORNT END)

PRAKTIKUM 1 2 MENGENAL DELPHI

DAFTAR LAMPIRAN. Panduan Pengguna Program Bantu FPP Bahasa Pemrograman untuk Program Bantu FPP

Membuat File Dynamic Link Library (*.DLL) Menggunakan Borland Delphi

Mengenal pemrograman multithread dengan Delphi 7

Modul I Mengenal Pemrograman Delphi

Modul I Mengenal Pemrograman Delphi

Yohanas auri yahoo.com

LAMPIRAN A RANGKAIAN ELEKTRONIKA LENGKAP

LAMPIRAN A FOTO ALAT MONITORING KONDISI GUNUNG BERAPI NIRKABEL

UNIVERSITAS BINA NUSANTARA

LANJUTAN APLIKASI DATABASE

LAMPIRAN-LAMPIRAN. Lampiran 1. Tabel Hasil Pengumpulan Data (dalam ton)

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

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

BAB IV IMPLEMENTASI DAN PENGUJIAN

KONEKSI MYSQL PADA DELPHI. Oleh : Budi Santoso

Pertemuan -1 BORLAND DELPHI

LAPORAN PRAKTIKUM KOMUNIKASI DATA KONVERSI TO PDU

Algoritma Pemrograman A

Akses Port Paralel (Menggunakan Delphi 7.0) (Drs. Agfianto Eko Putra, M.Si 2005)

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET (KOMUNIKASI DATA)

BAB IV IMPLEMENTASI DAN PENGUJIAN

Pertemuan 7 DESAIN FORM

BAB 5 ALGORITMA A PRIORI. A. Algoritma A Priori

Pengenalan Lingkungan Delphi

B. Kompetensi Mahasiswa dapat memahami tentang kendali kesalahan dengan paritas serta dapat melakukan penghitungan paritas.

MODUL IX PEMROGRAMAN DATABASE DENGAN DELPHI. Untuk praktikum ini kita menggunakan Ms. Access sebagai databasenya.

BAB II LANDASAN TEORI

PEMROGRAMAN DASAR XI TKJ SMK NEGERI 1 KUPANG

BAB IV Antarmuka dengan Port Paralel (Output)

Membuat Keylogger dan Antinya pada sistem operasi Windows

BAB I PENDAHULUAN. Banyak fenomena fisika yang terjadi di sekitar kita. Fenomena-fenomena tersebut

Bab Konsep Dasar Program 2.1 Objek

MEMBUAT APLIKASI DESKTOP DENGAN DATABASE ORACLE. UNIKOM (2010) Disusun Oleh : Andri Heryandi, M.T.

BAB III GRAFIKA 2D. Xv = Xvmin + round((xw - Xwmin)*(Xvmax-Xvmin)/(Xwmax-Xwmin)) Yv = Yvmax - round((yw - Ywmin)*(Yvmax-Yvmin)/(Ywmax-Ywmin))

Mengukur Waktu Tayang Form

Modul II Object Bahasa Pascal

IV. HASIL DAN PEMBAHASAN

BAB VIII Data Logging Tegangan melalui Komunikasi Serial

PEMBUATAN APLIKASI PENAJAMAN GAMBAR UNTUK PENGOLAHAN CITRA DIGITAL. Santoso Setiawan 1, Ahmad Firdaus 2

Mencari Akar-akar persamaan kuadrat AX 2 + BX + C = 0

Sistem informasi penjualan barang

Modul V Form Enty Data Tabel Tabel Transaksi

Pengantar Delphi (IDE Delphi ) & Konsep OOP

Bekerja dengan FORM dan EVENTS

BAB V JOBSHEET 5. Antarmuka dengan Port Parallel (Input)

IMPLEMENTASI ERD KE PROGRAM DATABASE DENGAN DELPHI MENGGUNAKAN DB ACCESS

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

Sum of Variable N Mean StDev Variance Sum Squares Minimum Sphere OPTRON AN

Transkripsi:

L.1 LAMPIRAN A: LISTING PROGRAM A.1 Form Menu Utama (Main Menu) Delphi 7.0 unit umenu; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TfrmMenu = class(tform) Label1: TLabel; Button2: TButton; Button3: TButton; Button4: TButton; Label2: TLabel; procedure Button1Click(Sender: TObject); procedure Button4Click(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure Button3Click(Sender: TObject); procedure Button2Click(Sender: TObject); private { Private declarations } public { Public declarations } var frmmenu: TfrmMenu; implementation uses ucompany, uinfo, umarket; {$R *.dfm} procedure TfrmMenu.Button1Click(Sender: TObject); frmcompany.show;

L.2 self.hide; procedure TfrmMenu.Button4Click(Sender: TObject); application.terminate; procedure TfrmMenu.FormClose(Sender: TObject; var Action: TCloseAction); application.terminate; procedure TfrmMenu.Button3Click(Sender: TObject); frminfo.show; self.hide; procedure TfrmMenu.Button2Click(Sender: TObject); frmmarket.show; frmmenu.hide; end. A.2 Form Menu Traditional Market Analysis Delphi 7.0 unit umarket; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TfrmMarket = class(tform) Label1: TLabel; Label2: TLabel; Label9: TLabel; cbsum: TComboBox; GroupBox1: TGroupBox; ed11: TEdit;

ed12: TEdit; ed13: TEdit; ed14: TEdit; ed21: TEdit; ed22: TEdit; ed23: TEdit; ed24: TEdit; ed31: TEdit; ed32: TEdit; ed33: TEdit; ed34: TEdit; ed41: TEdit; ed42: TEdit; ed43: TEdit; ed44: TEdit; GroupBox2: TGroupBox; Label3: TLabel; edx11: TEdit; edx12: TEdit; edx13: TEdit; edx14: TEdit; edn1: TEdit; GroupBox3: TGroupBox; lbl1: TLabel; lbl2: TLabel; lbl3: TLabel; lbl4: TLabel; cbtreatment1: TComboBox; GroupBox4: TGroupBox; Label8: TLabel; edx21: TEdit; edx22: TEdit; edx23: TEdit; edx24: TEdit; edn2: TEdit; GroupBox5: TGroupBox; Button1: TButton; Button2: TButton; Button3: TButton; Button4: TButton; Button5: TButton; Button6: TButton; cbtreatment2: TComboBox; cbtreatment3: TComboBox; cbtreatment4: TComboBox; edname1: TEdit; Label4: TLabel; L.3

L.4 edname2: TEdit; Label5: TLabel; procedure Button6Click(Sender: TObject); procedure Button5Click(Sender: TObject); procedure Button1Click(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure Button2Click(Sender: TObject); procedure Button3Click(Sender: TObject); procedure Button4Click(Sender: TObject); procedure cbsumchange(sender: TObject); procedure edx11keypress(sender: TObject; var Key: Char); procedure edn1keypress(sender: TObject; var Key: Char); procedure ed12change(sender: TObject); procedure ed13change(sender: TObject); procedure ed14change(sender: TObject); procedure ed23change(sender: TObject); procedure ed24change(sender: TObject); procedure ed34change(sender: TObject); function validasi:boolean; private { Private declarations } public { Public declarations } var frmmarket: TfrmMarket; implementation uses uhelp, ugraph, umenu, uparalel, usqueeze, utest; {$R *.dfm} function TfrmMarket.validasi:boolean; var n:integer; n:=strtoint(cbsum.text); if (ed11.text = '') or (ed12.text = '') or ((ed13.text = '') and (n>=3)) or ((ed14.text = '') and (n=4)) or (ed22.text = '') or ((ed23.text = '') and (n>=3)) or ((ed24.text = '') and (n=4)) or ((ed33.text = '') and (n>=3)) or ((ed34.text = '') and (n=4)) or ((ed44.text = '') and (n=4)) then

MessageDlg('Elemen Covariance Matrix belum lengkap, harap dilengkapi',mterror,[mbok],0); validasi := false; end else if (edname1.text='') or (edn1.text = '') or (edx11.text = '') or (edx12.text = '') or ((edx13.text = '') and (n>=3)) or ((edx14.text = '') and (n=4)) then MessageDlg('Data untuk Group 1 belum lengkap, harap dilengkapi',mterror,[mbok],0); validasi := false; end else if (edname2.text='') or (edn2.text = '') or (edx21.text = '') or (edx22.text = '') or ((edx23.text = '') and (n>=3)) or ((edx24.text = '') and (n=4)) then MessageDlg('Data untuk Group 2 belum lengkap, harap dilengkapi',mterror,[mbok],0); validasi := false; end else if n<3 then ed13.text := '0'; ed23.text := '0'; ed33.text := '0'; ed31.text := '0'; ed32.text := '0'; edx13.text := '0'; edx23.text := '0'; if n<4 then ed14.text := '0'; ed24.text := '0'; ed34.text := '0'; ed44.text := '0'; ed41.text := '0'; ed42.text := '0'; ed43.text := '0'; edx14.text := '0'; edx24.text := '0'; validasi := true; procedure TfrmMarket.Button6Click(Sender: TObject); application.terminate; L.5

L.6 procedure TfrmMarket.Button5Click(Sender: TObject); frmhelp.showmodal; procedure TfrmMarket.Button1Click(Sender: TObject); var max:real; a:integer; if validasi = false then exit; with frmgraph do sumber.caption := 'Market'; label3.visible := false; label4.visible := false; label13.visible := false; label14.visible := false; label23.visible := false; label24.visible := false; shape13.visible := false; shape14.visible := false; shape23.visible := false; shape24.visible := false; shape4.visible := false; shape5.visible := false; if strtoint(cbsum.text) >= 3 then label3.visible := true; label13.visible := true; label23.visible := true; shape13.visible := true; shape23.visible := true; shape4.visible := true; if strtoint(cbsum.text) = 4 then label4.visible := true; label14.visible := true; label24.visible := true; shape14.visible := true; shape24.visible := true; shape5.visible := true;

L.7 label1.caption := cbtreatment1.text; label2.caption := cbtreatment2.text; label3.caption := cbtreatment3.text; label4.caption := cbtreatment4.text; max:=0; if round(strtofloat(edx11.text))>max then max := strtofloat(edx11.text); if round(strtofloat(edx12.text))>max then max := strtofloat(edx12.text); if round(strtofloat(edx13.text))>max then max := strtofloat(edx13.text); if round(strtofloat(edx14.text))>max then max := strtofloat(edx14.text); if round(strtofloat(edx21.text))>max then max := strtofloat(edx21.text); if round(strtofloat(edx22.text))>max then max := strtofloat(edx22.text); if round(strtofloat(edx23.text))>max then max := strtofloat(edx23.text); if round(strtofloat(edx24.text))>max then max := strtofloat(edx24.text); a:=round((shape1.height / max)) - 2; label11.top := shape1.height -round(strtofloat(edx11.text)*a); label12.top := shape1.height -round(strtofloat(edx12.text)*a); label13.top := shape1.height -round(strtofloat(edx13.text)*a); label14.top := shape1.height -round(strtofloat(edx14.text)*a); label21.top := shape1.height -round(strtofloat(edx21.text)*a); label22.top := shape1.height -round(strtofloat(edx22.text)*a); label23.top := shape1.height -round(strtofloat(edx23.text)*a); label24.top := shape1.height -round(strtofloat(edx24.text)*a); shape11.top := label11.top; shape12.top := label12.top; shape13.top := label13.top; shape14.top := label14.top; shape21.top := label21.top; shape22.top := label22.top; shape23.top := label23.top; shape24.top := label24.top; shape11.left := 44; shape12.left := shape11.left; shape13.left := shape11.left; shape14.left := shape11.left; shape21.left := shape11.left; shape22.left := shape11.left; shape23.left := shape11.left; shape24.left := shape11.left; {

L.8 label11.caption := edx11.text; label12.caption := edx12.text; label13.caption := edx13.text; label14.caption := edx14.text; label21.caption := edx21.text; label22.caption := edx22.text; label23.caption := edx23.text; label24.caption := edx24.text; } ShowModal; procedure TfrmMarket.FormClose(Sender: TObject; var Action: TCloseAction); self.hide; frmmenu.show; procedure TfrmMarket.Button2Click(Sender: TObject); if validasi = false then exit; with frmparalel do sumber.caption := 'Market'; edv1.text := inttostr(strtoint(cbsum.text)-1); edv2.text := inttostr(strtoint(edn1.text) + strtoint(edn2.text) - strtoint(cbsum.text)); memo1.clear; memo1.text := 'Name of group 1 = '+edname1.text + ' dengan jumlah sample = '+edn1.text+'('+edx11.text+' '+edx12.text; if edx13.visible = true then memo1.text := memo1.text + ' '+edx13.text; if edx14.visible = true then memo1.text := memo1.text + ' '+edx14.text; memo1.text := memo1.text + ')'+#13+#10; memo1.text := memo1.text + 'Name of group 2 = '+edname2.text + ' dengan jumlah sample = '+edn2.text+'('+edx21.text+' '+edx22.text; if edx23.visible = true then memo1.text := memo1.text + ' '+edx23.text; if edx24.visible = true then memo1.text := memo1.text + ' '+edx24.text; memo1.text := memo1.text + ')'+#13+#10+#13+#10; showmodal; procedure TfrmMarket.Button3Click(Sender: TObject);

if validasi = false then exit; with frmsqueeze do sumber.caption := 'Market'; edv1.text := inttostr(strtoint(cbsum.text)-1); edv2.text := inttostr(strtoint(edn1.text) + strtoint(edn2.text) - strtoint(cbsum.text)); edn12.text := inttostr(strtoint(edn1.text) + strtoint(edn2.text) - 2); memo1.clear; memo1.text := 'Name of group 1 = '+edname1.text + ' dengan jumlah sample = '+edn1.text+'('+edx11.text+' '+edx12.text; if edx13.visible = true then memo1.text := memo1.text + ' '+edx13.text; if edx14.visible = true then memo1.text := memo1.text + ' '+edx14.text; memo1.text := memo1.text + ')'+#13+#10; memo1.text := memo1.text + 'Name of group 2 = '+edname2.text + ' dengan jumlah sample = '+edn2.text+'('+edx21.text+' '+edx22.text; if edx23.visible = true then memo1.text := memo1.text + ' '+edx23.text; if edx24.visible = true then memo1.text := memo1.text + ' '+edx24.text; memo1.text := memo1.text + ')'+#13+#10+#13+#10; showmodal; procedure TfrmMarket.Button4Click(Sender: TObject); if validasi = false then exit; with frmtest do sumber.caption := 'Market'; edv1.text := inttostr(strtoint(cbsum.text)-1); edv2.text := inttostr(strtoint(edn1.text) + strtoint(edn2.text) - strtoint(cbsum.text)); memo1.clear; memo1.text := 'Name of group 1 = '+edname1.text + ' dengan jumlah sample = '+edn1.text+'('+edx11.text+' '+edx12.text; if edx13.visible = true then memo1.text := memo1.text + ' '+edx13.text; if edx14.visible = true then memo1.text := memo1.text + ' '+edx14.text; memo1.text := memo1.text + ')'+#13+#10; memo1.text := memo1.text + 'Name of group 2 = '+edname2.text + ' dengan jumlah sample = '+edn2.text+'('+edx21.text+' '+edx22.text; if edx23.visible = true then memo1.text := memo1.text + ' '+edx23.text; if edx24.visible = true then memo1.text := memo1.text + ' '+edx24.text; memo1.text := memo1.text + ')'+#13+#10+#13+#10; L.9

L.10 showmodal; procedure TfrmMarket.cbSumChange(Sender: TObject); ed11.visible := false; ed12.visible := false; ed13.visible := false; ed14.visible := false; ed21.visible := false; ed22.visible := false; ed23.visible := false; ed24.visible := false; ed31.visible := false; ed32.visible := false; ed33.visible := false; ed34.visible := false; ed41.visible := false; ed42.visible := false; ed43.visible := false; ed44.visible := false; cbtreatment1.visible := false; cbtreatment2.visible := false; cbtreatment3.visible := false; cbtreatment4.visible := false; edx11.visible := false; edx21.visible := false; edx12.visible := false; edx22.visible := false; edx13.visible := false; edx23.visible := false; edx14.visible := false; edx24.visible := false; lbl1.visible := false; lbl2.visible := false; lbl3.visible := false; lbl4.visible := false; if strtoint(cbsum.text) >= 2 then ed11.visible := true;

L.11 ed12.visible := true; ed21.visible := true; ed22.visible := true; cbtreatment1.visible := true; cbtreatment2.visible := true; edx11.visible := true; edx21.visible := true; edx12.visible := true; edx22.visible := true; lbl1.visible := true; lbl2.visible := true; if strtoint(cbsum.text) >= 3 then ed13.visible := true; ed23.visible := true; ed33.visible := true; ed31.visible := true; ed32.visible := true; cbtreatment3.visible := true; edx13.visible := true; edx23.visible := true; lbl3.visible := true; if strtoint(cbsum.text) >= 4 then ed14.visible := true; ed24.visible := true; ed34.visible := true; ed44.visible := true; ed41.visible := true; ed42.visible := true; ed43.visible := true; cbtreatment4.visible := true; edx14.visible := true; edx24.visible := true; lbl4.visible := true; procedure TfrmMarket.edx11KeyPress(Sender: TObject; var Key: Char); if ((key>='0') and (key<='9')) or (key=#8) or (key='.') or (key= - ) then else key:=#0;

L.12 procedure TfrmMarket.edn1KeyPress(Sender: TObject; var Key: Char); if ((key>='0') and (key<='9')) or (key=#8) then else key:=#0; procedure TfrmMarket.ed12Change(Sender: TObject); ed21.text := ed12.text; procedure TfrmMarket.ed13Change(Sender: TObject); ed31.text := ed13.text; procedure TfrmMarket.ed14Change(Sender: TObject); ed41.text := ed14.text; procedure TfrmMarket.ed23Change(Sender: TObject); ed32.text := ed23.text; procedure TfrmMarket.ed24Change(Sender: TObject); ed42.text := ed24.text; procedure TfrmMarket.ed34Change(Sender: TObject); ed43.text := ed34.text; end. A.3 Form Menu Graph Delphi 7.0 unit ugraph; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

L.13 Dialogs, StdCtrls, ExtCtrls; type TfrmGraph = class(tform) Label9: TLabel; Button1: TButton; Button2: TButton; Shape1: TShape; Button3: TButton; Label1: TLabel; Label2: TLabel; Label3: TLabel; Label4: TLabel; Label11: TLabel; Label12: TLabel; Label13: TLabel; Label14: TLabel; Label21: TLabel; Label22: TLabel; Label23: TLabel; Label24: TLabel; Shape2: TShape; Shape3: TShape; Shape4: TShape; Shape5: TShape; Shape11: TShape; Shape12: TShape; Shape13: TShape; Shape14: TShape; Shape21: TShape; Shape22: TShape; Shape23: TShape; Shape24: TShape; sumber: TLabel; procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button3Click(Sender: TObject); private { Private declarations } public { Public declarations } var frmgraph: TfrmGraph;

L.14 implementation uses ucompany, umarket; {$R *.dfm} procedure TfrmGraph.FormClose(Sender: TObject; var Action: TCloseAction); self.close; procedure TfrmGraph.Button1Click(Sender: TObject); self.close; procedure TfrmGraph.Button2Click(Sender: TObject); application.terminate; procedure TfrmGraph.Button3Click(Sender: TObject); var a,b:integer; if sumber.caption = 'Company' then a:=strtoint(frmcompany.cbsum.text) else a:=strtoint(frmmarket.cbsum.text); with Canvas do //MoveTo(ClientWidth, ClientHeight); //LineTo(ClientWidth, ClientHeight); MoveTo(144, label11.top); LineTo(288, label12.top); MoveTo(144, label21.top); LineTo(288, label22.top); if a>=3 then MoveTo(288, label12.top); LineTo(432, label13.top); MoveTo(288, label22.top); LineTo(432, label23.top); if a=4 then

L.15 MoveTo(432, label13.top); LineTo(576, label14.top); MoveTo(432, label23.top); LineTo(576, label24.top); end. A.4 Form Menu Pararellism Test Delphi 7.0 unit uparalel; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TfrmParalel = class(tform) Label1: TLabel; Label2: TLabel; Label3: TLabel; Label4: TLabel; Label5: TLabel; Label6: TLabel; edalpha: TEdit; edv1: TEdit; edv2: TEdit; edftable: TEdit; edfcount: TEdit; Button1: TButton; Label9: TLabel; Button2: TButton; Button3: TButton; Button4: TButton; Button5: TButton; Memo1: TMemo; SaveDialog1: TSaveDialog; Label7: TLabel; Button6: TButton; sumber: TLabel;

L.16 procedure Button5Click(Sender: TObject); procedure Button3Click(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormShow(Sender: TObject); procedure Button4Click(Sender: TObject); procedure Button1Click(Sender: TObject); procedure edalphakeypress(sender: TObject; var Key: Char); procedure edftablekeypress(sender: TObject; var Key: Char); procedure Button2Click(Sender: TObject); procedure Button6Click(Sender: TObject); private { Private declarations } public { Public declarations } var frmparalel: TfrmParalel; const c:array[1..3,1..4] of real = ((1,-1,0,0),(0,1,-1,0),(0,0,1,-1)); implementation uses ucompany, uhelp, utabelf05, umarket; {$R *.dfm} procedure TfrmParalel.Button5Click(Sender: TObject); application.terminate; procedure TfrmParalel.Button3Click(Sender: TObject); self.close; procedure TfrmParalel.FormClose(Sender: TObject; var Action: TCloseAction); self.close; procedure TfrmParalel.FormShow(Sender: TObject); var det,t2,p,f:real;

L.17 n1,n2,n,i,j,k:integer; a,b,x1,x2,x12:array[1..4] of real; s,cs,csc,ct,csc1,cx12:array[1..4,1..4] of real; edalpha.clear; edftable.clear; if sumber.caption = 'Company' then with frmcompany do s[1][1] := strtofloat(ed11.text); s[1][2] := strtofloat(ed12.text); s[1][3] := strtofloat(ed13.text); s[1][4] := strtofloat(ed14.text); s[2][1] := strtofloat(ed21.text); s[2][2] := strtofloat(ed22.text); s[2][3] := strtofloat(ed23.text); s[2][4] := strtofloat(ed24.text); s[3][1] := strtofloat(ed31.text); s[3][2] := strtofloat(ed32.text); s[3][3] := strtofloat(ed33.text); s[3][4] := strtofloat(ed34.text); s[4][1] := strtofloat(ed41.text); s[4][2] := strtofloat(ed42.text); s[4][3] := strtofloat(ed43.text); s[4][4] := strtofloat(ed44.text); n := strtoint(cbsum.text); n1 := strtoint(edn1.text); n2 := strtoint(edn2.text); p := n; x1[1] := strtofloat(edx11.text); x1[2] := strtofloat(edx12.text); x1[3] := strtofloat(edx13.text); x1[4] := strtofloat(edx14.text); x2[1] := strtofloat(edx21.text); x2[2] := strtofloat(edx22.text); x2[3] := strtofloat(edx23.text); x2[4] := strtofloat(edx24.text); end else with frmmarket do s[1][1] := strtofloat(ed11.text); s[1][2] := strtofloat(ed12.text);

L.18 s[1][3] := strtofloat(ed13.text); s[1][4] := strtofloat(ed14.text); s[2][1] := strtofloat(ed21.text); s[2][2] := strtofloat(ed22.text); s[2][3] := strtofloat(ed23.text); s[2][4] := strtofloat(ed24.text); s[3][1] := strtofloat(ed31.text); s[3][2] := strtofloat(ed32.text); s[3][3] := strtofloat(ed33.text); s[3][4] := strtofloat(ed34.text); s[4][1] := strtofloat(ed41.text); s[4][2] := strtofloat(ed42.text); s[4][3] := strtofloat(ed43.text); s[4][4] := strtofloat(ed44.text); n := strtoint(cbsum.text); n1 := strtoint(edn1.text); n2 := strtoint(edn2.text); p := n; x1[1] := strtofloat(edx11.text); x1[2] := strtofloat(edx12.text); x1[3] := strtofloat(edx13.text); x1[4] := strtofloat(edx14.text); x2[1] := strtofloat(edx21.text); x2[2] := strtofloat(edx22.text); x2[3] := strtofloat(edx23.text); x2[4] := strtofloat(edx24.text); //CS for i:=1 to n-1 do for j:=1 to n do cs[i][j] := 0; for k:=1 to n do cs[i][j] := cs[i][j] + c[i][k] * s[k][j]; //Ct for i:=1 to n do for j:=1 to n-1 do ct[i][j] := c[j][i];

L.19 //CSC' for i:=1 to n-1 do for j:=1 to n-1 do csc[i][j] := 0; for k:=1 to n do csc[i][j] := csc[i][j] + cs[i][k] * ct[k][j]; //Invers CSC' if n = 4 then det := csc[1][1]*csc[2][2]*csc[3][3] + csc[1][2]*csc[2][3]*csc[3][1] + csc[1][3]*csc[2][1]*csc[3][2] - (csc[1][3]*csc[2][2]*csc[3][1] + csc[1][2]*csc[2][1]*csc[3][3] + csc[1][1]*csc[2][3]*csc[3][2]); csc1[1][1] := (csc[2][2]*csc[3][3] - csc[2][3]*csc[3][2]) / det; csc1[1][2] := (csc[1][3]*csc[3][2] - csc[1][2]*csc[3][3]) / det; csc1[1][3] := (csc[1][2]*csc[2][3] - csc[1][3]*csc[2][2]) / det; csc1[2][1] := (csc[2][3]*csc[3][1] - csc[2][1]*csc[3][3]) / det; csc1[2][2] := (csc[1][1]*csc[3][3] - csc[1][3]*csc[3][1]) / det; csc1[2][3] := (csc[1][3]*csc[2][1] - csc[1][1]*csc[2][3]) / det; csc1[3][1] := (csc[2][1]*csc[3][2] - csc[3][1]*csc[2][2]) / det; csc1[3][2] := (csc[1][2]*csc[3][1] - csc[1][1]*csc[3][2]) / det; csc1[3][3] := (csc[1][1]*csc[2][2] - csc[2][1]*csc[1][2]) / det; end else if n = 3 then det := (csc[1][1]*csc[2][2] - csc[1][2]*csc[2][1]); csc1[1][1] := csc[2][2] / det; csc1[1][2] := -csc[1][2] / det; csc1[2][1] := -csc[2][1] / det; csc1[2][2] := csc[1][1] / det; end else if n = 2 then csc1[1][1] := csc[1][1]; //x1 - x2 for i:=1 to n do x12[i] := x1[i] - x2[i]; //C(x1-x2) for i:=1 to n-1 do cx12[i][1] := 0;

L.20 for k:=1 to n do cx12[i][1] := cx12[i][1] + c[i][k] * x12[k]; for i:=1 to n do a[i] := cx12[i][1] * (n1*n2/(n1+n2)); for i:=1 to n-1 do b[i] := 0; for k:=1 to n-1 do b[i] := b[i] + csc1[i][k] * cx12[k][1]; t2 := 0; for i:=1 to n-1 do t2 := t2 + a[i] * b[i]; f:= (n1+n2-p) / ((n1+n2-2)*(p-1)) * t2; f:= round(f*100) / 100; edfcount.text := floattostr(f); //Cetak Matrikx { memo1.clear; for i:=1 to n-1 do for j:=1 to n-1 do memo1.text := memo1.text + floattostr(csc1[i][j])+' '; memo1.text := memo1.text + #13 + #10; } procedure TfrmParalel.Button4Click(Sender: TObject); var f:textfile; if savedialog1.execute then assignfile(f, savedialog1.filename);rewrite(f); writeln(f, memo1.text); closefile(f);

L.21 procedure TfrmParalel.Button1Click(Sender: TObject); if edalpha.text = '' then exit; if edftable.text = '' then exit; //UNTUK MENENTUKAN HASIL ANALYZE PARALELLISM TEST if strtofloat(edfcount.text) < strtofloat(edftable.text) then memo1.text := memo1.text + 'Sesuai dengan kaidah keputusan, maka kita menerima H01'+#13+#10; memo1.text := memo1.text + 'karena F = '+edfcount.text+' < F table = '+edftable.text+'; dengan demikian disimpulkan'+#13+#10; memo1.text := memo1.text + 'pada dasarnya profil populasi kelompok 1 sejajar dengan profil populasi kelompok 2'+#13+#10; memo1.text := memo1.text + 'Rekomendasi pengembangan yang dapat dilakukan oleh kedua area pasar, sebagai berikut:'+#13+#10; memo1.text := memo1.text + '- Berikan perlakuan yang sama untuk area yang memiliki rata - rata perlakuan lebih rendah'+#13+#10; memo1.text := memo1.text + '- Pengembangan area pasar yang memilki rata - rata perlakuan rendah dapat mengacu pada area pasar yang diujikan bersamanya'+#13+#10; memo1.text := memo1.text + '- Cobakan berikan dengan perlakuan yang berbeda untuk kedua area'+#13+#10; memo1.text := memo1.text + '- Lakukan pengembangan area tidak tertuju pada satu atau dua area saja'+#13+#10; end else memo1.text := memo1.text + 'Sesuai dengan kaidah keputusan, maka kita menolak H01'+#13+#10; memo1.text := memo1.text + 'karena F = '+edfcount.text+' > F table = '+edftable.text+'; dengan demikian disimpulkan'+#13+#10; memo1.text := memo1.text + 'pada dasarnya profil populasi kelompok 1 tidak sejajar dengan profil populasi kelompok 2'+#13+#10; memo1.text := memo1.text + 'Rekomendasi pengembangan yang dapat dilakukan oleh kedua area pasar, sebagai berikut:'+#13+#10; memo1.text := memo1.text + '- Berikan perlakuan yang beda untuk area yang memiliki rata - rata perlakuan lebih rendah'+#13+#10; memo1.text := memo1.text + '- Atau berikan perlakuan yang sama tetapi dengan kapasitas yang lebih kepada area dengan nilai rata - rata perlakuan yang lebih rendah'+#13+#10; memo1.text := memo1.text + '- Cobakan berikan dengan perlakuan yang berbeda untuk kedua area'+#13+#10; memo1.text := memo1.text + '- Lakukan pengembangan area tidak tertuju pada satu satu atau dua area saja'+#13+#10;

L.22 procedure TfrmParalel.edAlphaKeyPress(Sender: TObject; var Key: Char); if ((key>='0') and (key<='9')) or (key=#8) or (key='.') then else key:=#0; procedure TfrmParalel.edFTableKeyPress(Sender: TObject; var Key: Char); if ((key>='0') and (key<='9')) or (key=#8) or (key='.') then else key:=#0; procedure TfrmParalel.Button2Click(Sender: TObject); frmhelp.showmodal; procedure TfrmParalel.Button6Click(Sender: TObject); frmtabelf05.show; end. A.5 Form Menu Squeeze Test Delphi 7.0 unit usqueeze; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TfrmSqueeze = class(tform) Label1: TLabel; Label2: TLabel; Label3: TLabel; Label4: TLabel; Label5: TLabel; Label6: TLabel; Label9: TLabel; edalpha: TEdit;

L.23 edv1: TEdit; edv2: TEdit; edftable: TEdit; edtsquare: TEdit; Button1: TButton; Button2: TButton; Button3: TButton; Button4: TButton; Button5: TButton; Memo1: TMemo; Label7: TLabel; Label8: TLabel; Label10: TLabel; Label11: TLabel; edalpha2: TEdit; edn12: TEdit; edttable: TEdit; SaveDialog1: TSaveDialog; Label12: TLabel; Button6: TButton; Button7: TButton; sumber: TLabel; procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure Button3Click(Sender: TObject); procedure Button5Click(Sender: TObject); procedure Button4Click(Sender: TObject); procedure FormShow(Sender: TObject); procedure edalphakeypress(sender: TObject; var Key: Char); procedure edftablekeypress(sender: TObject; var Key: Char); procedure edalpha2keypress(sender: TObject; var Key: Char); procedure edttablekeypress(sender: TObject; var Key: Char); procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button6Click(Sender: TObject); procedure Button7Click(Sender: TObject); private { Private declarations } public { Public declarations } var frmsqueeze: TfrmSqueeze; implementation uses ucompany, uhelp, utabelt, utabelf05, umarket;

L.24 {$R *.dfm} procedure TfrmSqueeze.FormClose(Sender: TObject; var Action: TCloseAction); self.close; procedure TfrmSqueeze.Button3Click(Sender: TObject); self.close; procedure TfrmSqueeze.Button5Click(Sender: TObject); application.terminate; procedure TfrmSqueeze.Button4Click(Sender: TObject); var f:textfile; if savedialog1.execute then assignfile(f, savedialog1.filename);rewrite(f); writeln(f, memo1.text); closefile(f); procedure TfrmSqueeze.FormShow(Sender: TObject); var a,b,t2:real; n1,n2,n,i,j:integer; x1,x2:array[1..4] of real; s:array[1..4,1..4] of real; edalpha.clear; edftable.clear; edalpha2.clear; edttable.clear; if sumber.caption = 'Company' then with frmcompany do s[1][1] := strtofloat(ed11.text); s[1][2] := strtofloat(ed12.text); s[1][3] := strtofloat(ed13.text); s[1][4] := strtofloat(ed14.text);

L.25 s[2][1] := strtofloat(ed21.text); s[2][2] := strtofloat(ed22.text); s[2][3] := strtofloat(ed23.text); s[2][4] := strtofloat(ed24.text); s[3][1] := strtofloat(ed31.text); s[3][2] := strtofloat(ed32.text); s[3][3] := strtofloat(ed33.text); s[3][4] := strtofloat(ed34.text); s[4][1] := strtofloat(ed41.text); s[4][2] := strtofloat(ed42.text); s[4][3] := strtofloat(ed43.text); s[4][4] := strtofloat(ed44.text); n := strtoint(cbsum.text); n1 := strtoint(edn1.text); n2 := strtoint(edn2.text); x1[1] := strtofloat(edx11.text); x1[2] := strtofloat(edx12.text); x1[3] := strtofloat(edx13.text); x1[4] := strtofloat(edx14.text); x2[1] := strtofloat(edx21.text); x2[2] := strtofloat(edx22.text); x2[3] := strtofloat(edx23.text); x2[4] := strtofloat(edx24.text); end else with frmmarket do s[1][1] := strtofloat(ed11.text); s[1][2] := strtofloat(ed12.text); s[1][3] := strtofloat(ed13.text); s[1][4] := strtofloat(ed14.text); s[2][1] := strtofloat(ed21.text); s[2][2] := strtofloat(ed22.text); s[2][3] := strtofloat(ed23.text); s[2][4] := strtofloat(ed24.text); s[3][1] := strtofloat(ed31.text); s[3][2] := strtofloat(ed32.text); s[3][3] := strtofloat(ed33.text); s[3][4] := strtofloat(ed34.text); s[4][1] := strtofloat(ed41.text); s[4][2] := strtofloat(ed42.text); s[4][3] := strtofloat(ed43.text); s[4][4] := strtofloat(ed44.text);

L.26 n := strtoint(cbsum.text); n1 := strtoint(edn1.text); n2 := strtoint(edn2.text); x1[1] := strtofloat(edx11.text); x1[2] := strtofloat(edx12.text); x1[3] := strtofloat(edx13.text); x1[4] := strtofloat(edx14.text); x2[1] := strtofloat(edx21.text); x2[2] := strtofloat(edx22.text); x2[3] := strtofloat(edx23.text); x2[4] := strtofloat(edx24.text); a:=0; for i:=1 to n do a := a + (x1[i]-x2[i]); b:=0; for i:=1 to n do for j:=1 to n do b:=b+s[i][j]; t2 := a*a* (1/ ((1/n1 + 1/n2)*b)) ; t2:= round(t2*100) / 100; edtsquare.text := floattostr(t2); procedure TfrmSqueeze.edAlphaKeyPress(Sender: TObject; var Key: Char); if ((key>='0') and (key<='9')) or (key=#8) or (key='.') then else key:=#0; procedure TfrmSqueeze.edFTableKeyPress(Sender: TObject; var Key: Char); if ((key>='0') and (key<='9')) or (key=#8) or (key='.') then else key:=#0; procedure TfrmSqueeze.edalpha2KeyPress(Sender: TObject; var Key: Char); if ((key>='0') and (key<='9')) or (key=#8) or (key='.') then else key:=#0;

L.27 procedure TfrmSqueeze.edttableKeyPress(Sender: TObject; var Key: Char); if ((key>='0') and (key<='9')) or (key=#8) or (key='.') then else key:=#0; procedure TfrmSqueeze.Button1Click(Sender: TObject); if edalpha.text = '' then exit; if edftable.text = '' then exit; if edttable.text = '' then exit; if edalpha2.text = '' then exit; //UNTUK MENENTUKAN HASIL ANALYZE SQUEEZE TEST tahap 1 if strtofloat(edtsquare.text) > strtofloat(edftable.text) then memo1.text := memo1.text + 'Sesuai dengan kaidah keputusan, maka kita menolak H02 karena'+#13+#10; memo1.text := memo1.text + 'T-square = '+edtsquare.text+' > F-table = '+edftable.text+' (berdasarkan transformasi linear)'+#13+#10; memo1.text := memo1.text + 'Dengan demikian dapat disimpulkan bahwa taraf (level) dari profil-profil adalah berbeda sangat nyata pada alpha='+edalpha.text+' '; memo1.text := memo1.text + 'jadi kedua profil tersebut tidak berimpit'+#13+#10; memo1.text := memo1.text + 'Rekomendasi pengembangan yang dapat dilakukan oleh kedua area pasar, sebagai berikut:'+#13+#10; memo1.text := memo1.text + '- Hasil analisa menunjukkan bahwa total nilai ratarata respons perlakuan ke dua area berbeda'+#13+#10; memo1.text := memo1.text + '- Coba berikan perlakuan yang sama kepada area yang memilki rata - rata repons perlakuan lebih rendah'+#13+#10; memo1.text := memo1.text + '- Lakukan pengembangan area tidak tertuju pada satu atau dua area saja'+#13+#10; end else memo1.text := memo1.text + 'Sesuai dengan kaidah keputusan, maka kita menerima H02 karena'+#13+#10; memo1.text := memo1.text + 'T-square = '+edtsquare.text+' < F-table = '+edftable.text+' (berdasarkan transformasi linear)'+#13+#10; memo1.text := memo1.text + 'Dengan demikian dapat disimpulkan bahwa taraf (level) dari profil-profil adalah berbeda sangat nyata pada alpha='+edalpha.text+' '; memo1.text := memo1.text + 'jadi kedua profil tersebut berimpit'; memo1.text := memo1.text + 'Rekomendasi pengembangan yang dapat dilakukan oleh kedua area pasar, sebagai berikut:'+#13+#10; memo1.text := memo1.text + '- Hasil analisa menunjukkan bahwa total nilai ratarata respons perlakuan ke dua area sama'+#13+#10; memo1.text := memo1.text + '- Coba berikan perlakuan yang belum sama sekali pernah diberikan kepada area yang memilki rata - rata repons perlakuan lebih rendah'+#13+#10;

L.28 memo1.text := memo1.text + '- Lakukan pengembangan area tidak tertuju pada satu atau dua area saja'; memo1.text := memo1.text + #13+#10+#13+#10; //Tahap 2 if strtofloat(edttable.text)<>0 then memo1.text := memo1.text + 'Oleh karena selang kepercayaan '+floattostr((1- strtofloat(edalpha2.text))*100)+' % bagi parameter j'+#39+'(u1-u2) '; memo1.text := memo1.text + 'tidak mengandung nilai nol, maka hal ini menunjukkan bahwa kedua profil yang diuji tidak berimpit'; end else memo1.text := memo1.text + 'Oleh karena selang kepercayaan '+floattostr((1- strtofloat(edalpha2.text))*100)+' % bagi parameter j'+#39+'(u1-u2) '; memo1.text := memo1.text + 'mengandung nilai nol, maka hal ini menunjukkan bahwa kedua profil yang diuji berimpit'; procedure TfrmSqueeze.Button2Click(Sender: TObject); frmhelp.showmodal; procedure TfrmSqueeze.Button6Click(Sender: TObject); frmtabelt.show; procedure TfrmSqueeze.Button7Click(Sender: TObject); frmtabelf05.show; end. A.6 Form Menu Test With X Axis Delphi 7.0 unit utest; interface

L.29 uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TfrmTest = class(tform) Label1: TLabel; Label2: TLabel; Label3: TLabel; Label4: TLabel; Label5: TLabel; Label6: TLabel; Label9: TLabel; edalpha: TEdit; edv1: TEdit; edv2: TEdit; edftable: TEdit; edfcount: TEdit; Button1: TButton; Button2: TButton; Button3: TButton; Button4: TButton; Button5: TButton; Memo1: TMemo; SaveDialog1: TSaveDialog; Label7: TLabel; Button6: TButton; sumber: TLabel; procedure Button3Click(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure Button4Click(Sender: TObject); procedure FormShow(Sender: TObject); procedure Button5Click(Sender: TObject); procedure edalphakeypress(sender: TObject; var Key: Char); procedure edftablekeypress(sender: TObject; var Key: Char); procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button6Click(Sender: TObject); private { Private declarations } public { Public declarations } var frmtest: TfrmTest;

L.30 const c:array[1..3,1..4] of real = ((1,-1,0,0),(0,1,-1,0),(0,0,1,-1)); implementation uses ucompany, uhelp, utabelf05, umarket; {$R *.dfm} procedure TfrmTest.Button3Click(Sender: TObject); self.close; procedure TfrmTest.FormClose(Sender: TObject; var Action: TCloseAction); self.close; procedure TfrmTest.Button4Click(Sender: TObject); var f:textfile; if savedialog1.execute then assignfile(f, savedialog1.filename);rewrite(f); writeln(f, memo1.text); closefile(f); procedure TfrmTest.FormShow(Sender: TObject); var p,det,t2,f:real; n1,n2,n,i,j,k:integer; x,x1,x2,xc,a:array[1..4] of real; cs,csc,csc1,s,ct:array[1..4,1..4] of real; edalpha.clear; edftable.clear; if sumber.caption = 'Company' then with frmcompany do s[1][1] := strtofloat(ed11.text); s[1][2] := strtofloat(ed12.text); s[1][3] := strtofloat(ed13.text); s[1][4] := strtofloat(ed14.text); s[2][1] := strtofloat(ed21.text);

L.31 s[2][2] := strtofloat(ed22.text); s[2][3] := strtofloat(ed23.text); s[2][4] := strtofloat(ed24.text); s[3][1] := strtofloat(ed31.text); s[3][2] := strtofloat(ed32.text); s[3][3] := strtofloat(ed33.text); s[3][4] := strtofloat(ed34.text); s[4][1] := strtofloat(ed41.text); s[4][2] := strtofloat(ed42.text); s[4][3] := strtofloat(ed43.text); s[4][4] := strtofloat(ed44.text); n := strtoint(cbsum.text); n1 := strtoint(edn1.text); n2 := strtoint(edn2.text); p := n; x1[1] := strtofloat(edx11.text); x1[2] := strtofloat(edx12.text); x1[3] := strtofloat(edx13.text); x1[4] := strtofloat(edx14.text); x2[1] := strtofloat(edx21.text); x2[2] := strtofloat(edx22.text); x2[3] := strtofloat(edx23.text); x2[4] := strtofloat(edx24.text); end else with frmmarket do s[1][1] := strtofloat(ed11.text); s[1][2] := strtofloat(ed12.text); s[1][3] := strtofloat(ed13.text); s[1][4] := strtofloat(ed14.text); s[2][1] := strtofloat(ed21.text); s[2][2] := strtofloat(ed22.text); s[2][3] := strtofloat(ed23.text); s[2][4] := strtofloat(ed24.text); s[3][1] := strtofloat(ed31.text); s[3][2] := strtofloat(ed32.text); s[3][3] := strtofloat(ed33.text); s[3][4] := strtofloat(ed34.text); s[4][1] := strtofloat(ed41.text); s[4][2] := strtofloat(ed42.text); s[4][3] := strtofloat(ed43.text); s[4][4] := strtofloat(ed44.text);

L.32 n := strtoint(cbsum.text); n1 := strtoint(edn1.text); n2 := strtoint(edn2.text); p := n; x1[1] := strtofloat(edx11.text); x1[2] := strtofloat(edx12.text); x1[3] := strtofloat(edx13.text); x1[4] := strtofloat(edx14.text); x2[1] := strtofloat(edx21.text); x2[2] := strtofloat(edx22.text); x2[3] := strtofloat(edx23.text); x2[4] := strtofloat(edx24.text); //Ct for i:=1 to n do for j:=1 to n-1 do ct[i][j] := c[j][i]; //xfor i:=1 to n do x[i] := (n1/(n1+n2)) * x1[i] + (n2/(n1+n2)) * x2[i]; //X'C' for j:=1 to n-1 do xc[j]:=0; for k:=1 to n do xc[j] := xc[j] + x[k] * ct[k][j]; //CS for i:=1 to n-1 do for j:=1 to n do cs[i][j] := 0; for k:=1 to n do cs[i][j] := cs[i][j] + c[i][k] * s[k][j]; //CSC' for i:=1 to n-1 do

L.33 for j:=1 to n-1 do csc[i][j] := 0; for k:=1 to n do csc[i][j] := csc[i][j] + cs[i][k] * ct[k][j]; //Invers CSC' if n = 4 then det := csc[1][1]*csc[2][2]*csc[3][3] + csc[1][2]*csc[2][3]*csc[3][1] + csc[1][3]*csc[2][1]*csc[3][2] - (csc[1][3]*csc[2][2]*csc[3][1] + csc[1][2]*csc[2][1]*csc[3][3] + csc[1][1]*csc[2][3]*csc[3][2]); csc1[1][1] := (csc[2][2]*csc[3][3] - csc[2][3]*csc[3][2]) / det; csc1[1][2] := (csc[1][3]*csc[3][2] - csc[1][2]*csc[3][3]) / det; csc1[1][3] := (csc[1][2]*csc[2][3] - csc[1][3]*csc[2][2]) / det; csc1[2][1] := (csc[2][3]*csc[3][1] - csc[2][1]*csc[3][3]) / det; csc1[2][2] := (csc[1][1]*csc[3][3] - csc[1][3]*csc[3][1]) / det; csc1[2][3] := (csc[1][3]*csc[2][1] - csc[1][1]*csc[2][3]) / det; csc1[3][1] := (csc[2][1]*csc[3][2] - csc[3][1]*csc[2][2]) / det; csc1[3][2] := (csc[1][2]*csc[3][1] - csc[1][1]*csc[3][2]) / det; csc1[3][3] := (csc[1][1]*csc[2][2] - csc[2][1]*csc[1][2]) / det; end else if n = 3 then det := (csc[1][1]*csc[2][2] - csc[1][2]*csc[2][1]); csc1[1][1] := csc[2][2] / det; csc1[1][2] := -csc[1][2] / det; csc1[2][1] := -csc[2][1] / det; csc1[2][2] := csc[1][1] / det; end else if n = 2 then csc1[1][1] := csc[1][1]; for i:=1 to n-1 do a[i] := 0; for j:=1 to n-1 do a[i] := a[i] + (n1+n2)*xc[j]*csc1[j][i]; t2 := 0; for i:=1 to n-1 do t2 := t2 + a[i] * xc[i]; f:= t2*(n1+n2-p)/((n1+n2-2)*(p-1));

L.34 f:= round(f*100) / 100; edfcount.text := floattostr(f); //Cetak Matrikx { memo1.clear; for i:=1 to n-1 do //for j:=1 to n-1 do memo1.text := memo1.text + floattostr(xc[i])+' '; memo1.text := memo1.text + #13 + #10; } procedure TfrmTest.Button5Click(Sender: TObject); application.terminate; procedure TfrmTest.edAlphaKeyPress(Sender: TObject; var Key: Char); if ((key>='0') and (key<='9')) or (key=#8) or (key='.') then else key:=#0; procedure TfrmTest.edFTableKeyPress(Sender: TObject; var Key: Char); if ((key>='0') and (key<='9')) or (key=#8) or (key='.') then else key:=#0; procedure TfrmTest.Button1Click(Sender: TObject); if edalpha.text = '' then exit; if edftable.text = '' then exit; //HASIL ANALYZE TEST WITH X-AXIS if strtofloat(edfcount.text) > strtofloat(edftable.text) then memo1.text := memo1.text + 'Sesuai dengan kaidah keputusan, kita menolak H03 karena '; memo1.text := memo1.text + 'F = '+edfcount.text+' > F-table = '+edftable.text+' (berdasarkan interpolasi linear)'+#13+#10; memo1.text := memo1.text + 'Dengan demikian disimpulkan bahwa profil-profil itu tidak sejajar terhadap sumbu datar (sumbu X)';

L.35 memo1.text := memo1.text + 'dan oleh karena itu disimpulkan bahwa pengaruh perlakuan tidak sama semuanya...'+#13+#10; memo1.text := memo1.text + 'Rekomendasi pengembangan yang dapat dilakukan oleh kedua area pasar, sebagai berikut:'+#13+#10; memo1.text := memo1.text + '- Hasil analisa menunjukkan bahwa pengaruh perlakuan yang diberikan tidak sama terhadap kedua area'+#13+#10; memo1.text := memo1.text + '- Coba berikan perlakuan yang beda kepada area yang memilki rata - rata repons perlakuan lebih rendah'+#13+#10; memo1.text := memo1.text + '- Lakukan pengembangan area tidak tertuju pada satu atau dua area saja'+#13+#10; end else memo1.text := memo1.text + 'Sesuai dengan kaidah keputusan, kita menerima H03 karena '; memo1.text := memo1.text + 'F = '+edfcount.text+' < F-table = '+edftable.text+' (berdasarkan interpolasi linear)'+#13+#10; memo1.text := memo1.text + 'Dengan demikian disimpulkan bahwa profil-profil itu sejajar terhadap sumbu datar (sumbu X) '; memo1.text := memo1.text + 'dan oleh karena itu disimpulkan bahwa pengaruh perlakuan sama semuanya...'+#13+#10; memo1.text := memo1.text + 'Rekomendasi pengembangan yang dapat dilakukan oleh kedua area pasar, sebagai berikut:'+#13+#10; memo1.text := memo1.text + '- Hasil analisa menunjukkan bahwa pengaruh perlakuan yang diberikan sama terhadap kedua area'+#13+#10; memo1.text := memo1.text + '- Coba berikan perlakuan yang sama atau berikan perlakuan yang belum pernah diberikan kepada area yang memilki rata - rata repons perlakuan lebih rendah'+#13+#10; memo1.text := memo1.text + '- Lakukan pengembangan area tidak tertuju pada satu atau dua area saja'+#13+#10; procedure TfrmTest.Button2Click(Sender: TObject); frmhelp.showmodal; procedure TfrmTest.Button6Click(Sender: TObject); frmtabelf05.show; end.

L.36 A.7 Form Menu Table F Delphi 7.0 unit utabelf05; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, DB, udm, StdCtrls, Grids, DBGrids; type TfrmTabelF05 = class(tform) DataSource1: TDataSource; DBGrid1: TDBGrid; Label2: TLabel; Label1: TLabel; Button1: TButton; Label3: TLabel; Label4: TLabel; DBGrid2: TDBGrid; DataSource2: TDataSource; procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } var frmtabelf05: TfrmTabelF05; implementation {$R *.dfm} procedure TfrmTabelF05.FormClose(Sender: TObject; var Action: TCloseAction); self.hide; procedure TfrmTabelF05.Button1Click(Sender: TObject); self.hide;

L.37 end. A.8 Form Menu Table T Delphi 7.0 unit utabelt; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, udm, DB, Grids, DBGrids, StdCtrls; type TfrmTabelT = class(tform) DBGrid1: TDBGrid; DataSource1: TDataSource; Label2: TLabel; Button1: TButton; procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } var frmtabelt: TfrmTabelT; implementation {$R *.dfm} procedure TfrmTabelT.FormClose(Sender: TObject; var Action: TCloseAction); self.hide; procedure TfrmTabelT.Button1Click(Sender: TObject); self.hide; end.

L.38 A.9 Form Menu Help Delphi 7.0 unit uhelp; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TfrmHelp = class(tform) Memo1: TMemo; procedure FormClose(Sender: TObject; var Action: TCloseAction); private { Private declarations } public { Public declarations } var frmhelp: TfrmHelp; implementation {$R *.dfm} procedure TfrmHelp.FormClose(Sender: TObject; var Action: TCloseAction); self.close; end. A.10 Form Menu Info Delphi 7.0 unit uinfo; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, jpeg; type

L.39 TfrmInfo = class(tform) Label9: TLabel; Image1: TImage; Label2: TLabel; Button1: TButton; Label1: TLabel; Label3: TLabel; Label4: TLabel; Label5: TLabel; Label6: TLabel; Label7: TLabel; Label8: TLabel; Label10: TLabel; procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } var frminfo: TfrmInfo; implementation uses umenu; {$R *.dfm} procedure TfrmInfo.FormClose(Sender: TObject; var Action: TCloseAction); self.hide; frmmenu.show; procedure TfrmInfo.Button1Click(Sender: TObject); self.hide; frmmenu.show; end.

L.40 LAMPIRAN B: LANGKAH LANGKAH PEMAKAIAN PROGRAM Berikut ini adalah langkah langkah yang harus dilakukan untuk menggunakan program aplikasi Traditional Market Profile Analysis : Pada Menu Main Menu : 1. Klik Info untuk melihat Info pembuat program aplikasi ini dan alamat kontaknya. 2. Klik Traditional Market Analysis untuk memulai analisis profil dua kelompok pasar tradisional. 3. Klik Exit untuk keluar dari program. Pada Menu Traditional Market Analysis : 1. Tentukan jumlah perlakuan yang ingin diberikan dengan memilih pada Sum of Treatment. 2. Isi Covariance Matrix. 3. Pilih nama Treatment. 4. Pada group 1, isi nama kelompok (pasar) 1 yang diujikan pada Name of Group. 5. Pada group 1, Isi jumlah sampel kelompok 1 pada Sum of Sample. 6. Ulangi langkah 4&5 untuk Group 2 7. Klik Graph untuk menganalisis data group 1 dan group 2 dengan grafik garis. 8. Klik Pararellism Test untuk menganalisis data group 1 dan group 2 dengan uji kesejajaran profil.

L.41 9. Klik Squeeze Test untuk menganalisa data group 1 dan group 2 dengan uji keberimpitan profil. 10. Klik Test with X Axis untuk menganalisa data group 1 dan group 2 dengan uji kesejajaran dengan sumbu X. 11. Klik Exit untuk keluar dari program. 12. Klik Help untuk melihat petunjuk pemakaian program. Pada Menu Graph : 1. Klik Generate Graph untuk memunculkan grafik. 2. Klik Back untuk kembali ke menu Traditional Market Analysis. 3. Klik Exit untuk keluar dari program Pada Menu Pararellism Test : 1. Isi nilai alpha yang diminta. 2. Isi nilai F tabel yang diminta, untuk bantuan klik Table untuk melihat nilai F table. 3. Klik Analyze untuk melihat hasil analisis uji kesejajaran. 4. Klik Exit untuk keluar dari program. 5. Klik Help untuk melihat petunjuk pemakaian program. 6. Klik Back untuk kembali ke menu Traditional Market Analysis. 7. Klik Save Result untuk menyimpan hasil analisa pada memo result ke dalam format.txt.

L.42 Pada Menu Squeeze Test : 1. Isi nilai alpha yang diminta. 2. Isi nilai F tabel yang diminta, untuk bantuan,klik Table untuk melihat nilai F tabel. 3. Isi nilai T tabel yang diminta, untuk bantuan,klik Table untuk melihat nilai T tabel. 4. Klik Analyze untuk melihat hasil analisis uji keberimpitan. 5. Klik Exit untuk keluar dari program. 6. Klik Help untuk melihat petunjuk pemakaian program. 7. Klik Back untuk kembali ke menu Traditional Market Analysis. 8. Klik Save Result untuk menyimpan hasil analisa pada memo result ke dalam format.txt. Pada Menu Test With X Axis : 1. Isi nilai alpha yang diminta. 2. Isi nilai F tabel yang diminta, untuk bantuan klik Table untuk melihat nilai F table. 3. Klik Analyze untuk melihat hasil analisis uji kesejajaran dengan sumbu X. 4. Klik Exit untuk keluar dari program. 5. Klik Help untuk melihat petunjuk pemakaian program. 6. Klik Back untuk kembali ke menu Traditional Market Analysis. 7. Klik Save Result untuk menyimpan hasil analisa pada memo result ke dalam format.txt