Form Utama Form Aboutme

LISTING PROGRAM

1. Form Utama

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace MenentukanAntibiotik { public partial class FormUtama : Form { public FormUtama { InitializeComponent; } private void aBOUTMEToolStripMenuItem_Click object sender, EventArgs e { AboutMe aboutme = new AboutMe ; aboutme.ShowDialog; } private void mASTERDATAPENYAKITToolStripMenuItem_Click object sender, EventArgs e { MasterPenyakit masterpenyakit = new MasterPenyakit ; masterpenyakit.ShowDialog; } private void mASTERDATAANTIBIOTIKToolStripMenuItem_Click object sender, EventArgs e { MasterAntibiotik masterantibiotik = new MasterAntibiotik ; masterantibiotik.ShowDialog; Universitas Sumatera Utara } private void mASTERDATAKRITERIAToolStripMenuItem_Click object sender, EventArgs e { MasterKriteria masterkriteria = new MasterKriteria ; masterkriteria.ShowDialog; } private void FormUtama_Load object sender, EventArgs e { } private void eXITToolStripMenuItem_Click object sender, EventArgs e { Application .Exit; } private void pENILAIANKRITERIAToolStripMenuItem_Click object sender, EventArgs e { PenilaianKriteria penilaian = new PenilaianKriteria ; penilaian.ShowDialog; } private void pENILAIANANTIBIOTIKToolStripMenuItem_Click object sender, EventArgs e { PenilaianAntibiotik penilaian = new PenilaianAntibiotik ; penilaian.ShowDialog; } private void pENILAIANPRODUKWPToolStripMenuItem_Click object sender, EventArgs e { PenilaianProduk penilaian = new PenilaianProduk ; penilaian.ShowDialog; } } } Universitas Sumatera Utara

2. Form Aboutme

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace MenentukanAntibiotik { public partial class AboutMe : Form { public AboutMe { InitializeComponent; } private void button1_Click object sender, EventArgs e { this .Close; } } } 3. Hasil AHP antibiotik using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Data; using System.Data.SqlServerCe; using System.Diagnostics; namespace MenentukanAntibiotik Universitas Sumatera Utara { public partial class HasilAHPAntibiotik : Form { public DataTable TableBeratBadan = new DataTable ; public DataTable TableDosis = new DataTable ; public DataTable TableHarga = new DataTable ; public HasilAHPAntibiotik { InitializeComponent; } private void HasilAHPAntibiotik_Load object sender, EventArgs e { Stopwatch sw = new Stopwatch ; sw.Start; ProsesAHPTableBeratBadan, BeratBadan ; ProsesAHPTableHarga, Harga ; ProsesAHPTableDosis, Dosis ; HitungTotal; sw.Stop; MessageBox .Show Perhitungan selesai\n + Tampilkan hasil perhitungan , Perhitungan , MessageBoxButtons .OK; DataTable table_ranking = DataTable data_ranking.DataSource; DataView view = new DataView table_ranking; view.Sort = [Eigen Vector] DESC ; table_ranking = view.ToTable; table_ranking.Columns.Add Rank No , typeof double ; table_ranking.Columns.Remove Deskripsi ; int rankNo = 1; foreach DataRow row in table_ranking.Rows { row[ Rank No ] = rankNo++; } data_ranking.DataSource = table_ranking; Universitas Sumatera Utara } private Dictionary string , double ProsesAHP DataTable data, string kriteria { Dictionary string , DataTable result = new Dictionary string , DataTable ; DataTable matriks = GetMatriksdata; DataTable tableAkhir = new DataTable ; DataTable tableJumlahKolom = new DataTable ; DataTable dataAntibiotik = GetDataAntibiotik; tableAkhir = matriks.Copy; double lamda = 0; double nilaiCI = 0; double nilaiCR = 0; double NilaiIR = 1.43; double JumlahAntibiotik = dataAntibiotik.Rows.Count; result = NormalisasitableAkhir, dataAntibiotik; tableAkhir = result[ MatriksAkhir ]; tableJumlahKolom = result[ MatriksJumlahKolom ]; foreach DataRow row in tableAkhir.Rows { String NamaAntibiotik = row[ Antibiotik ].ToString; if NamaAntibiotik == Total Kolom continue ; lamda += double row[ Eigen Max ]; } nilaiCI = lamda - JumlahAntibiotik JumlahAntibiotik - 1; nilaiCR = nilaiCI NilaiIR; Dictionary string , double consistency = new Dictionary string , double ; consistency.Add JumlahAntibiotik , JumlahAntibiotik; consistency.Add CI , nilaiCI; consistency.Add CR , nilaiCR; consistency.Add IR , NilaiIR; DataTable data_consistency = new DataTable ; data_consistency.Columns.Add Variable , typeof string ; data_consistency.Columns.Add Nilai , typeof double ; DataRow newrow = data_consistency.NewRow; newrow[ Variable ] = Jumlah Antibiotik ; newrow[ Nilai ] = JumlahAntibiotik; data_consistency.Rows.Addnewrow; Universitas Sumatera Utara newrow = data_consistency.NewRow; newrow[ Variable ] = Nilai IR ; newrow[ Nilai ] = NilaiIR; data_consistency.Rows.Addnewrow; newrow = data_consistency.NewRow; newrow[ Variable ] = Nilai CI ; newrow[ Nilai ] = nilaiCI; data_consistency.Rows.Addnewrow; newrow = data_consistency.NewRow; newrow[ Variable ] = Nilai CR ; newrow[ Nilai ] = nilaiCR; data_consistency.Rows.Addnewrow; Control [] matriks_ctl = this .Controls.Find data_matriks + kriteria, true ; Control [] data_jumlah_kolom_ctl = this .Controls.Find data_jumlah_kolom + kriteria, true ; Control [] data_akhir_ctl = this .Controls.Find data_akhir + kriteria, true ; Control [] data_consistency_ctl = this .Controls.Find data_consistency + kriteria, true ; if matriks_ctl.Length 0 { DataGridView matriks_ctl[0].DataSource = matriks; } if data_jumlah_kolom_ctl.Length 0 { DataGridView data_jumlah_kolom_ctl[0].DataSource = tableJumlahKolom; } if data_akhir_ctl.Length 0 { DataGridView data_akhir_ctl[0].DataSource = tableAkhir; } if data_consistency_ctl.Length 0 { DataGridView data_consistency_ctl[0].DataSource = data_consistency; } return consistency; } Universitas Sumatera Utara private DataTable GetDataAntibiotik { Database database = new Database CEConn ; DataTable data = new DataTable ; List SqlCeParameter parameters = new List SqlCeParameter ; String query = SELECT FROM table_antibiotik ORDER BY NamaAntibiotik ASC ; parameters = new List SqlCeParameter ; data = database.GetDataTablequery, parameters; return data; } private DataTable GetDataKriteria { Database database = new Database CEConn ; DataTable data = new DataTable ; List SqlCeParameter parameters = new List SqlCeParameter ; String query = SELECT FROM table_kriteria ORDER BY NamaKriteria ASC ; parameters = new List SqlCeParameter ; data = database.GetDataTablequery, parameters; return data; } private DataTable GetMatriks DataTable data { DataTable dataAntibiotik = GetDataAntibiotik; DataTable matriks = new DataTable Matriks ; matriks.Columns.Add Antibiotik , typeof string ; foreach DataRow row in dataAntibiotik.Rows { matriks.Columns.Addrow[ NamaAntibiotik ].ToString, typeof double ; } foreach DataRow row in dataAntibiotik.Rows { DataRow new_row = matriks.NewRow; new_row[ Antibiotik ] = row[ NamaAntibiotik ]; matriks.Rows.Addnew_row; } Universitas Sumatera Utara for int i = 0; i matriks.Rows.Count; i++ { for int j = 1; j matriks.Columns.Count; j++ { string column = matriks.Columns[j].ColumnName; string row = matriks.Rows[i][ Antibiotik ].ToString; if column == row { matriks.Rows[i][j] = 1; } else { DataRow [] rows = data.Select AntibiotikB = + column + AND AntibiotikA = + row + ; double nilai = 0; string dominan = ; if rows.Length == 1 { nilai = double rows[0][ Nilai ]; dominan = rows[0][ Dominan ].ToString; } else { rows = data.Select AntibiotikA = + column + AND AntibiotikB = + row + ; if rows.Length == 1 { nilai = double rows[0][ Nilai ]; dominan = rows[0][ Dominan ].ToString; } else { nilai = 0; } } if row == dominan { matriks.Rows[i][j] = nilai; } else if column == dominan Universitas Sumatera Utara { matriks.Rows[i][j] = nilai == 0 ? 0 : 1 nilai; } else { matriks.Rows[i][j] = 0; } } } } return matriks; } private Dictionary string , DataTable Normalisasi DataTable data, DataTable dataAntibiotik { Dictionary string , DataTable result = new Dictionary string , DataTable ; DataTable matriks = new DataTable Matriks ; DataTable newMatriks = new DataTable NewMatriks ; double JumlahAntibiotik = dataAntibiotik.Rows.Count; Dictionary string , double total_kolom = new Dictionary string , double ; foreach DataRow antibiotik in dataAntibiotik.Rows { total_kolom.Addantibiotik[ NamaAntibiotik ].ToString, 0; } foreach DataRow row in data.Rows { foreach DataRow antibiotik in dataAntibiotik.Rows { String namaAntibiotik = antibiotik[ NamaAntibiotik ].ToString; total_kolom[namaAntibiotik] += double row[namaAntibiotik]; } } newMatriks = data.Copy; matriks = data.Copy; DataRow new_row = newMatriks.NewRow; new_row[ Antibiotik ] = Total Kolom ; foreach DataRow antibiotik in dataAntibiotik.Rows Universitas Sumatera Utara { String namaAntibiotik = antibiotik[ NamaAntibiotik ].ToString; new_row[namaAntibiotik] = total_kolom[namaAntibiotik]; } newMatriks.Rows.Addnew_row; foreach DataRow row in data.Rows { foreach DataRow antibiotik in dataAntibiotik.Rows { String namaAntibiotik = antibiotik[ NamaAntibiotik ].ToString; row[namaAntibiotik] = double row[namaAntibiotik] total_kolom[namaAntibiotik]; } } hitung jumlah baris Dictionary string , double total_baris = new Dictionary string , double ; foreach DataRow antibiotik in dataAntibiotik.Rows { total_baris.Addantibiotik[ NamaAntibiotik ].ToString, 0; } foreach DataRow row in data.Rows { String namaAntibiotik = row[ AntiBiotik ].ToString; if namaAntibiotik == Total Kolom continue ; for int i = 1; i data.Columns.Count; i++ { total_baris[namaAntibiotik] += double row[i]; } } data.Columns.Add Jumlah Baris , typeof double ; data.Columns.Add Eigen Vector , typeof double ; data.Columns.Add Eigen Max , typeof double ; Dictionary string , double eigenVectors = new Dictionary string , double ; foreach DataRow row in data.Rows { String namaAntibiotik = row[ AntiBiotik ].ToString; if namaAntibiotik == Total Kolom continue ; Universitas Sumatera Utara row[ Jumlah Baris ] = total_baris[namaAntibiotik]; row[ Eigen Vector ] = total_baris[namaAntibiotik] JumlahAntibiotik; row[ Eigen Max ] = total_baris[namaAntibiotik] JumlahAntibiotik total_kolom[namaAntibiotik]; } result.Add MatriksJumlahKolom , newMatriks; result.Add MatriksAkhir , data; return result; } private void HitungTotal { DataTable table_hitung = new DataTable ; DataTable table_ranking = new DataTable ; DataTable Data_kriteria = GetDataKriteria; DataTable Data_antibiotik = GetDataAntibiotik; table_hitung.Columns.Add Kriteria , typeof string ; table_hitung.Columns.Add Prioritas , typeof double ; table_ranking = Data_antibiotik.Copy; table_ranking.Columns.Add Eigen Vector , typeof double ; Dictionary String , DataTable datas = new Dictionary string , DataTable ; foreach DataRow kriteria in Data_kriteria.Rows { string namakriteria = kriteria[ NamaKriteria ].ToString.Replace , ; DataTable table_nilai = new DataTable ; Control [] ctls = this .Controls.Find data_akhir + namakriteria, true ; if ctls.Length 0 { table_nilai = DataTable DataGridView ctls[0].DataSource; } datas.Addnamakriteria, table_nilai; } foreach DataRow antibiotik in Data_antibiotik.Rows { string nama_antibiotik = antibiotik[ NamaAntibiotik ].ToString; table_hitung.Columns.Addnama_antibiotik, typeof double ; } Universitas Sumatera Utara foreach DataRow kriteria in Data_kriteria.Rows { string namakriteria = kriteria[ NamaKriteria ].ToString; double eigenvector = String .IsNullOrEmptykriteria[ EigenVector ].ToString ? 0 : double kriteria[ EigenVector ];; DataRow new_row = table_hitung.NewRow; new_row[ Kriteria ] = namakriteria; new_row[ Prioritas ] = eigenvector; table_hitung.Rows.Addnew_row; } DataRow row_total = table_hitung.NewRow; row_total[ Kriteria ] = Total Eigen ; foreach DataRow rank in table_hitung.Rows { string namakriteria = rank[ Kriteria ].ToString.Replace , ; double eigenvectorkriteria = double rank[ Prioritas ]; foreach DataRow antibiotik in Data_antibiotik.Rows { string nama_antibiotik = antibiotik[ NamaAntibiotik ].ToString; DataRow [] rows = datas[namakriteria].Select Antibiotik = + nama_antibiotik + ; double eigenvectorpemain = rows.Length 0 ? double rows[0][ Eigen Vector ] : 1; rank[nama_antibiotik] = eigenvectorkriteria eigenvectorpemain; if String .IsNullOrEmptyrow_total[nama_antibiotik].ToString row_total[nama_antibiotik] = 0; row_total[nama_antibiotik] = double row_total[nama_antibiotik] + double rank[nama_antibiotik]; } } table_hitung.Rows.Addrow_total; foreach DataRow antibiotik in table_ranking.Rows { string nama_antibiotik = antibiotik[ NamaAntibiotik ].ToString; Universitas Sumatera Utara antibiotik[ Eigen Vector ] = row_total[nama_antibiotik]; } data_hitung.DataSource = table_hitung; data_ranking.DataSource = table_ranking; } private void BKeluar_Click object sender, EventArgs e { this .Close; } } }

4. Hasil AHP Kriteria