Senin, 23 Januari 2023

Dynamic Algoritma


Reff: https://developers-dot-devsite-v2-prod.appspot.com/chart/interactive/docs/gallery/piechart.html

<link type="text/css" href="<?php echo "$PATH/base/";?>ui.all.css" rel="stylesheet" />   
<script type="text/javascript" src="<?php echo "$PATH/";?>jquery-1.3.2.js"></script>
<script type="text/javascript" src="<?php echo "$PATH/";?>ui/ui.core.js"></script>
<script type="text/javascript" src="<?php echo "$PATH/";?>ui/ui.datepicker.js"></script>
<script type="text/javascript" src="<?php echo "$PATH/";?>ui/i18n/ui.datepicker-id.js"></script>
    
  <script type="text/javascript"> 
      $(document).ready(function(){
        $("#tanggal").datepicker({
dateFormat  : "dd MM yy",        
          changeMonth : true,
          changeYear  : true
        });
      });
    </script>     

 <?php
require_once "koneksivar.php";

$conn = new mysqli($DBServer, $DBUser, $DBPass, $DBName);
if ($conn->connect_error) {
trigger_error('Database connection failed: '  . $conn->connect_error, E_USER_ERROR);
}


<?php 
function setLevel($min,$max, $durasi){
$margin=floor(($max-$min)/$durasi);
$ar=array();
for($i=1;$i<=$durasi;$i++){
$ar[$i-1]=$min+($margin*$i);
}
return $ar;
}
function getLevel($ar, $v){
$L=-1;
for($i=0;$i<count($ar);$i++){
if($v<=$ar[$i]){
$L=$i+1;
break;
}
}
return $L;
}

function setINC($last, $durasi){
$judul_bln = array(1 => "Januari", "Februari", "Maret", "April", "Mei", "Juni", "Juli", "Agustus", "September", "Oktober", "November", "Desember");

  $arr=explode(" ",$last);
$bln=$arr[0];
$thn=$arr[1];
if ($arr[0] == "Januari" || $arr[0] == "January") {
$bul = 1;
} else if ($arr[0] == "Februari" || $arr[0] == "February") {
$bul = 2;
} else if ($arr[0] == "Maret" || $arr[0] == "March") {
$bul = 3;
} else if ($arr[0] == "April") {
$bul = 4;
} else if ($arr[0] == "Mei" || $arr[0] == "May") {
$bul = 5;
} else if ($arr[0] == "Juni" || $arr[0] == "June") {
$bul = 6;
} else if ($arr[0] == "Juli" || $arr[0] == "July") {
$bul = 7;
} else if ($arr[0] == "Agustus" || $arr[0] == "August") {
$bul = 8;
} else if ($arr[0] == "September") {
$bul = 9;
} else if ($arr[0] == "Oktober" || $arr[0] == "October") {
$bul = 10;
} else if ($arr[0] == "November" || $arr[0] == "Nopember") {
$bul = 11;
} else if ($arr[0] == "Desember" || $arr[0] == "December") {
$bul = 12;
}

$ar=array();
$pengali=1;
for($i=1;$i<=$durasi;$i++){
$bul=$bul+1;
if($bul>(12)){$bul=1;$thn++;}

$bulan=$judul_bln[$bul];
$TGL=$bulan." ".$thn;
$ar[$i-1]=$TGL;
}
return $ar;
}


function setBul($tanggal){
$judul_bln = array(1 => "Januari", "Februari", "Maret", "April", "Mei", "Juni", "Juli", "Agustus", "September", "Oktober", "November", "Desember");
$ar=explode("-",$tanggal);
$bln=$ar[1];
$thn=$ar[0];
$bulan=$judul_bln[$bln+0];
$TGL=$bulan." ".$thn;
return $TGL; //Januari 2023
}


function WKT($sekarang){

if ($sekarang == "0000-00-00") {
$sekarang = date("Y-m-d");
}

$tanggal = substr($sekarang, 8, 2) + 0;
$bulan = substr($sekarang, 5, 2);
$tahun = substr($sekarang, 0, 4);

$judul_bln = array(1 => "Januari", "Februari", "Maret", "April", "Mei", "Juni", "Juli", "Agustus", "September", "Oktober", "November", "Desember");
$wk = $tanggal . " " . $judul_bln[(int)$bulan] . " " . $tahun;
return $wk;
}
?>

function terbilang($i){
$huruf = array("", "Satu", "Dua", "Tiga", "Empat", "Lima", "Enam", "Tujuh", "Delapan", "Sembilan", "Sepuluh", "Sebelas");

if ($i < 12) return " " . $huruf[$i];
elseif ($i < 20) return terbilang($i - 10) . " Belas";
elseif ($i < 100) return terbilang($i / 10) . " Puluh" . terbilang($i % 10);
elseif ($i < 200) return " Seratus" . terbilang($i - 100);
elseif ($i < 1000) return terbilang($i / 100) . " Ratus" . terbilang($i % 100);
elseif ($i < 2000) return " Seribu" . terbilang($i - 1000);
elseif ($i < 1000000) return terbilang($i / 1000) . " Ribu" . terbilang($i % 1000);
elseif ($i < 1000000000) return terbilang($i / 1000000) . " Juta" . terbilang($i % 1000000);
}
 


function getList($conn, $kode){

$gab = "";
$sqlv = "select * from `tb_detail` where id_po='$kode' order by `id_detail` asc";
$jumv = getJum($conn, $sqlv);
if ($jumv > 0) {
$tot = 0;
$arrv = getData($conn, $sqlv);
foreach ($arrv as $dv) {
$id_barang = getBarang($conn, $dv["id_barang"]);
$jumlah = $dv["jumlah"];
$subtotal = ($dv["subtotal"]);
$harga = RP($subtotal / $jumlah);
$tot += $subtotal;
$gab .= "$id_barang @RP. $harga ($jumlah),";
}
$gab .= "Total " . RP($tot);
} else {
$gab = "Belum ada order Transaksi...";
}

return $gab;
}
?>

<?php function RP($rupiah){
return number_format($rupiah, "2", ",", ".");
} ?>


<?php
function BAL($tanggal){
$arr = explode(" ", $tanggal);
if ($arr[1] == "Januari" || $arr[1] == "January") {
$bul = "01";
} else if ($arr[1] == "Februari" || $arr[1] == "February") {
$bul = "02";
} else if ($arr[1] == "Maret" || $arr[1] == "March") {
$bul = "03";
} else if ($arr[1] == "April") {
$bul = "04";
} else if ($arr[1] == "Mei" || $arr[1] == "May") {
$bul = "05";
} else if ($arr[1] == "Juni" || $arr[1] == "June") {
$bul = "06";
} else if ($arr[1] == "Juli" || $arr[1] == "July") {
$bul = "07";
} else if ($arr[1] == "Agustus" || $arr[1] == "August") {
$bul = "08";
} else if ($arr[1] == "September") {
$bul = "09";
} else if ($arr[1] == "Oktober" || $arr[1] == "October") {
$bul = "10";
} else if ($arr[1] == "November") {
$bul = "11";
} else if ($arr[1] == "Nopember") {
$bul = "11";
} else if ($arr[1] == "Desember" || $arr[1] == "December") {
$bul = "12";
}
return "$arr[2]-$bul-$arr[0]";
}
?>


<?php
function BALP($tanggal){
$arr = explode(" ", $tanggal);
if ($arr[1] == "Jan") {
$bul = "01";
} else if ($arr[1] == "Feb") {
$bul = "02";
} else if ($arr[1] == "Mar") {
$bul = "03";
} else if ($arr[1] == "Apr") {
$bul = "04";
} else if ($arr[1] == "Mei") {
$bul = "05";
} else if ($arr[1] == "Jun") {
$bul = "06";
} else if ($arr[1] == "Jul") {
$bul = "07";
} else if ($arr[1] == "Agu") {
$bul = "08";
} else if ($arr[1] == "Sep") {
$bul = "09";
} else if ($arr[1] == "Okt") {
$bul = "10";
} else if ($arr[1] == "Nov") {
$bul = "11";
} else if ($arr[1] == "Nop") {
$bul = "11";
} else if ($arr[1] == "Des") {
$bul = "12";
}
return "$arr[2]-$bul-$arr[0]";
}
?>

<?php
function WKTP($sekarang){
$tanggal = substr($sekarang, 8, 2) + 0;
$bulan = substr($sekarang, 5, 2);
$tahun = substr($sekarang, 2, 2);

$judul_bln = array(1 => "Jan", "Feb", "Mar", "Apr", "Mei", "Jun", "Jul", "Agu", "Sep", "Okt", "Nov", "Des");
$wk = $tanggal . " " . $judul_bln[(int)$bulan] . "'" . $tahun;
return $wk;
}
?>

<?php
function process($conn, $sql){
$s = false;
$conn->autocommit(FALSE);
try {
$rs = $conn->query($sql);
if ($rs) {
$conn->commit();
$last_inserted_id = $conn->insert_id;
$affected_rows = $conn->affected_rows;
$s = true;
}
} catch (Exception $e) {
echo 'fail: ' . $e->getMessage();
$conn->rollback();
}
$conn->autocommit(TRUE);
return $s;
}

function getJum($conn, $sql)
{
$rs = $conn->query($sql);
$jum = $rs->num_rows;
$rs->free();
return $jum;
}

function getField($conn, $sql){
$rs = $conn->query($sql);
$rs->data_seek(0);
$d = $rs->fetch_assoc();
$rs->free();
return $d;
}

function getData($conn, $sql){
$rs = $conn->query($sql);
$rs->data_seek(0);
$arr = $rs->fetch_all(MYSQLI_ASSOC);
//foreach($arr as $row) {
//  echo $row['nama_kelas'] . '*<br>';
//}

$rs->free();
return $arr;
}

function getPelanggan($conn, $kode){
$field = "nama_pelanggan";
$sql = "SELECT `$field` FROM `tb_pelanggan` where `id_pelanggan`='$kode'";
$rs = $conn->query($sql);
$rs->data_seek(0);
$row = $rs->fetch_assoc();
$rs->free();
return $row[$field];
}

function getBarang($conn, $kode){
$field = "nama_barang";
$sql = "SELECT `$field` FROM `tb_barang` where `id_barang`='$kode'";
$rs = $conn->query($sql);
$rs->data_seek(0);
$row = $rs->fetch_assoc();
$rs->free();
return $row[$field];
}

function getDetail($conn, $kode){
$gab = "";
$sqlv = "select * from `tb_detail` where `id_order`='$kode' order by `id_detail` asc";
$jumv = getJum($conn, $sqlv);
if ($jumv > 0) {
$gab = "<ol>";
$arrv = getData($conn, $sqlv);
foreach ($arrv as $dv) {
$id_detail = $dv["id_detail"];
$id_order = $dv["id_order"];
$id_barang = $dv["id_barang"];
$jumlah = $dv["jumlah"];
$subtotal = RP($dv["subtotal"]);
$catatan = $dv["catatan"];

$sql = "select `id_barang`,`nama_barang,`harga` from `tb_barang` where `id_barang`='$id_barang'";
$d = getField($conn, $sql);
$nama_barang = $d["nama_barang"];
$harga = RP($d["harga"]);

$gab .= "<li>
<p>$nama_barang -> $jumlah @Rp. $harga <i><br> Catatan: $catatan</i>";
}
$gab .= "</ol>";
} else {
$gab = "Belum Ada Transaksi....";
}
return $gab;
}

?>

<?php
function getDetail2($conn, $kode){
$no = 1;
$gab = 0;
$lap = "";
$sql = "select * from `tb_detail` where id_order='$kode' order by `id_detail` asc";
$jum = getJum($conn, $sql);
if ($jum > 0) {
$arr = getData($conn, $sql);
foreach ($arr as $d) {
$no++;
$id_barang = $d["id_barang"];
$jumlah = $d["jumlah"];
$harga = RP($d["harga"]);
$nm = getBarang($conn, $id_barang);

$subtotal = $d["subtotal"];
$gab += $subtotal;
$lap .= "<li>$nm: $jumlah x $harga</li>";
}
$lap .= "Total: Rp." . RP($gab);
} else {
$lap = "Belum Ada Transaksi Pembelian...";
}

return $lap;
}

?>


<?php
function getDetail3($conn, $kode){
$no = 1;
$gab = 0;
$lap = "";
$sql = "select * from `tb_detail` where id_order='$kode' order by `id_detail` asc";
$jum = getJum($conn, $sql);
if ($jum > 0) {
$arr = getData($conn, $sql);
foreach ($arr as $d) {
$no++;
$id_barang = $d["id_barang"];
$jumlah = $d["jumlah"];
$harga = RP($d["harga"]);
$nm = getBarang($conn, $id_barang);

$subtotal = $d["subtotal"];
$gab += $subtotal;
$lap .= "$nm: $jumlah x $harga,";
}
$lap .= "Total: Rp." . RP($gab);
} else {
$lap = "Belum Ada Transaksi Pembelian...";
}
return $lap;
}

?>

<?php
$k_value=15;
$time_start = microtime(true);
?>

<script type="text/javascript"> 
function PRINTME(){ 
win=window.open('knnprint.php','win','width=1000, height=400, menubar=0, scrollbars=1, resizable=0, location=0, toolbar=0, status=0'); } 
</script>


<script language="JavaScript">
function buka(url) {window.open(url, 'window_baru', 'width=800,height=600,left=320,top=100,resizable=1,scrollbars=1');}
</script>

<?php
$CLASS="kategori"; 

$AR= array(setV(5), setV(4), setV(3), setV(2),setV(1));
$sql="select * from `$tbpengujian` order by `id_pengujian` desc";
if(isset($_GET["id"])){
$id_pengujian=$_GET["id"];
$sql="select * from `$tbpengujian` where `id_pengujian`='$id_pengujian'";
}
$d=getField($conn,$sql);
$IDUJI=$d["id_pengujian"];
$NM=$d["nama"];
$jenis_kelamin = $d["jenis_kelamin"];
$program_studi = $d["program_studi"];
$attr1 = $d["attr1"];
$attr2 = $d["attr2"];
$attr3 = $d["attr2"];
$attr4 = $d["attr2"];
$attr5 = $d["attr2"];
$attr6 = $d["attr2"];
$attr7 = $d["attr2"];
$attr8 = $d["attr2"];
$attr9 = $d["attr2"];
$attr10 = $d["attr2"];
$attr11 = $d["attr2"];
$attr12 = $d["attr2"];
$attr13 = $d["attr2"];
$attr14 = $d["attr2"];
$attr15 = $d["attr2"];
$attr16 = $d["attr2"];
$attr17 = $d["attr2"];
$attr18 = $d["attr2"];
$attr19 = $d["attr2"];
$attr20 = $d["attr2"];
$attr21 = $d["attr2"];

$arB[0]=setV($attr1);
$arB[1]=setV($attr2);
$arB[2]=setV($attr3);
$arB[3]=setV($attr4);
$arB[4]=setV($attr5);
$arB[5]=setV($attr6);
$arB[6]=setV($attr7);
$arB[7]=setV($attr8);
$arB[8]=setV($attr9);
$arB[9]=setV($attr10);
$arB[10]=setV($attr11);
$arB[11]=setV($attr12);
$arB[12]=setV($attr13);
$arB[13]=setV($attr14);
$arB[14]=setV($attr15);
$arB[15]=setV($attr16);
$arB[16]=setV($attr17);
$arB[17]=setV($attr18);
$arB[18]=setV($attr19);
$arB[19]=setV($attr20);
$arB[20]=setV($attr21); 

$arA[0]=$attr1; 
$arA[1]=$attr2;
$arA[2]=$attr3;
$arA[3]=$attr4;
$arA[4]=$attr5;
$arA[5]=$attr6;
$arA[6]=$attr7;
$arA[7]=$attr8;
$arA[8]=$attr9;
$arA[9]=$attr10;
$arA[10]=$attr11;
$arA[11]=$attr12;
$arA[12]=$attr13;
$arA[13]=$attr14;
$arA[14]=$attr15;
$arA[15]=$attr16;
$arA[16]=$attr17;
$arA[17]=$attr18;
$arA[18]=$attr19;
$arA[19]=$attr20;
$arA[20]=$attr21; 
?>

<link rel="stylesheet" href="jsacordeon/jquery-ui.css">
<link rel="stylesheet" href="resources/demos/style.css">
<script src="jsacordeon/jquery-1.12.4.js"></script>
  <script src="jsacordeon/jquery-ui.js"></script>
  <script>
  $( function() {
    $( "#accordion" ).accordion({
      collapsible: true
    });
  } );
  </script>

<div align="RiGHT">
<h3>
<a href="?mnu=1">Algoritma 1</a> | 
<a href="?mnu=2">Algoritma 2</a>
</h3>
</div>
<div id="accordion">
<?php
$time_start = microtime(true);
?>
<h4>Analisa Algoritma 1</h4>
<div>

<h3>Data Pengujian</h3>
<table CLASS="table table-bordered">

<th width="20%"><label for="id_user">ID UJI</label>
<th width="1%">:
<th colspan="2">UJI:<?php echo $IDUJI;?></tr>

<tr>
<td height="24"><label for="nama">Nama Pengujian</label>
<td>:<td><?php echo $NM;?>
</td>
</tr>

<tr>
<td height="24"><label for="nama">Jenis Kelamin</label>
<td>:<td><?php echo $jenis_kelamin;?>
</td>
</tr>

<tr>
<td height="24"><label for="nama">Program Studi</label>
<td>:<td><?php echo $program_studi;?>
</td>
</tr>
</table>

<br>

<div CLASS="section layout_padding theme_bg">
        <div CLASS="container">
            <div CLASS="row">

                <div CLASS="col-lg-6 col-md-6 col-sm-11 white_fonts">
                    <h3 CLASS="small_heading">Algoritma 1</h3>
                    <p>sistemnya menggunakan klasifikasi ketetanggaan (neighbor) sebagai nilai prediksi dari query instance yang baru. Algoritma ini sederhana, bekerja berdasarkan jarak terpendek dari query instance ke training sample untuk menentukan ketetanggaannya.
                </div>
<br><br>
                <div CLASS="col-lg-6 col-md-6 col-sm-12 text_align_center">
                    <div CLASS="full"><br><br>
                        <img CLASS="img-responsive" src="ypathfile/1.png" alt="#" />
                    </div>
                </div>
            </div>
        </div>
    </div>
<div CLASS="section layout_padding">
        <div CLASS="container">

            <div CLASS="row">
                <div CLASS="col-md-12">
                    <div CLASS="full center margin-bottom_30">
                        <div CLASS="heading_main text_align_center">
                            <h2><span CLASS="theme_color">Tahapan Langkah Algoritma 1</h2>
                            <p CLASS="large">Resume</p>
                        </div>
                    </div>
                </div>
            </div>

            <div CLASS="row">
                <div CLASS="col-lg-11">
<ol>
<li>Menentukan parameter k (jumlah tetangga paling dekat).
<li>Menghitung kuadrat jarak eucliden objek terhadap data training yang diberikan.<li>Mengurutkan hasil no 2 secara ascending (berurutan dari nilai tinggi ke rendah)
<li>Mengumpulkan kategori Y (Klasifikasi nearest neighbor berdasarkan nilai k)
<li>Dengan menggunakan kategori nearest neighbor yang paling mayoritas maka dapat dipredisikan kategori objek.
</ol>
                </div>

                <div CLASS="col-lg-11">
                    <p><i>Jadi, Untuk mengklasifikasi instance x menggunakan A1, kita cukup mendefinisikan fungsi untuk menghitung jarak antar-instance, menghitung jarak x dengan semua instance lainnya berdasarkan fungsi tersebut, dan menentukan kelas x sebagai kelas yang paling banyak muncul dalam k instance terdekat</i></p>
                </div>

            </div>
  <div CLASS="col-lg-6 col-md-6 col-sm-12 text_align_center">
                    <div CLASS="full">
                        <img CLASS="img-responsive" src="ypathfile/ecc.png" alt="#" />
                    </div>
                </div>
        </div>
    </div>
</div>

<br><br><br><br><br><br><br><br><br><br><br><br>
<?php
$TBL="$tbdataset";
$pk="id_dataset";
$M=0;
$dist=0;
  $sqlv="select distinct(`$CLASS`) from `$TBL` order by `$CLASS` asc";
  $jumv=getJum($conn,$sqlv);
if($jumv <1){echo "<h1>Maaf Data Training belum tersedia</h1>";}
$arrv=getData($conn,$sqlv);
$arD=array();
foreach($arrv as $dv) {
$KTG=$dv["$CLASS"];
$ARM[$dist]=$KTG;
$dist++;

$sql="select * from `$TBL` where `$CLASS`='$KTG' order by `$pk` asc";
$jumvv=getJum($conn,$sql);//WHILE
?>

<h4>Tabel Datalatih   <?php echo strtoupper("$CLASS $KTG")." ($jumvv Item)";?></h4>
<div>
<table width="100%">
  <tr bgcolor="#036">
    <td width="3%"><center><font color="white">No</td>
    <th width="5%" title="<?php echo $ckreteria1; ?>"><?php echo $clabel1; ?></td>
<th width="5%" title="<?php echo $ckreteria2; ?>"><?php echo $clabel2; ?></td>
<th width="5%" title="<?php echo $ckreteria3; ?>"><?php echo $clabel3; ?></td>
<th width="5%" title="<?php echo $ckreteria4; ?>"><?php echo $clabel4; ?></td>
<th width="5%" title="<?php echo $ckreteria5; ?>"><?php echo $clabel5; ?></td>
<th width="5%" title="<?php echo $ckreteria6; ?>"><?php echo $clabel6; ?></td>
<th width="5%" title="<?php echo $ckreteria7; ?>"><?php echo $clabel7; ?></td>
<th width="5%" title="<?php echo $ckreteria8; ?>"><?php echo $clabel8; ?></td>
<th width="5%" title="<?php echo $ckreteria9; ?>"><?php echo $clabel9; ?></td>
<th width="5%" title="<?php echo $ckreteria10; ?>"><?php echo $clabel10; ?></td>
<th width="5%" title="<?php echo $ckreteria11; ?>"><?php echo $clabel11; ?></td>
<th width="5%" title="<?php echo $ckreteria12; ?>"><?php echo $clabel12; ?></td>
<th width="5%" title="<?php echo $ckreteria13; ?>"><?php echo $clabel13; ?></td>
<th width="5%" title="<?php echo $ckreteria14; ?>"><?php echo $clabel14; ?></td>
<th width="5%" title="<?php echo $ckreteria15; ?>"><?php echo $clabel15; ?></td>
<th width="5%" title="<?php echo $ckreteria16; ?>"><?php echo $clabel16; ?></td>
<th width="5%" title="<?php echo $ckreteria17; ?>"><?php echo $clabel17; ?></td>
<th width="5%" title="<?php echo $ckreteria18; ?>"><?php echo $clabel18; ?></td>
<th width="5%" title="<?php echo $ckreteria19; ?>"><?php echo $clabel19; ?></td>
<th width="5%" title="<?php echo $ckreteria20; ?>"><?php echo $clabel20; ?></td>
<th width="5%" title="<?php echo $ckreteria20; ?>"><?php echo $clabel20; ?></td>
<th width="5%" title="<?php echo $ckreteria21; ?>"><?php echo $clabel21; ?></td>
  </tr>
<?php  
$no=1;  
$arr=getData($conn,$sql);
foreach($arr as $d) {
$PK=$d["$pk"];
$NM=strtoupper($d["nama"]);
$KET=$d["keterangan"];

$attr1 = $d["attr1"];
$attr2 = $d["attr2"];
$attr3 = $d["attr2"];
$attr4 = $d["attr2"];
$attr5 = $d["attr2"];
$attr6 = $d["attr2"];
$attr7 = $d["attr2"];
$attr8 = $d["attr2"];
$attr9 = $d["attr2"];
$attr10 = $d["attr2"];
$attr11 = $d["attr2"];
$attr12 = $d["attr2"];
$attr13 = $d["attr2"];
$attr14 = $d["attr2"];
$attr15 = $d["attr2"];
$attr16 = $d["attr2"];
$attr17 = $d["attr2"];
$attr18 = $d["attr2"];
$attr19 = $d["attr2"];
$attr20 = $d["attr2"];
$attr21 = $d["attr2"];

$k1=setV($attr1);
$k2=setV($attr2);
$k3=setV($attr3);
$k4=setV($attr4);
$k5=setV($attr5);
$k6=setV($attr6);
$k7=setV($attr7);
$k8=setV($attr8);
$k9=setV($attr9);
$k10=setV($attr10);
$k11=setV($attr11);
$k12=setV($attr12);
$k13=setV($attr13);
$k14=setV($attr14);
$k15=setV($attr15);
$k16=setV($attr16);
$k17=setV($attr17);
$k18=setV($attr18);
$k19=setV($attr19);
$k20=setV($attr20);
$k21=setV($attr21); 

$c=0;
$arD[$M][$c]=$attr1;$c++;
$arD[$M][$c]=$attr2;$c++;
$arD[$M][$c]=$attr3;$c++;
$arD[$M][$c]=$attr4;$c++;
$arD[$M][$c]=$attr5;$c++;
$arD[$M][$c]=$attr6;$c++;
$arD[$M][$c]=$attr7;$c++;
$arD[$M][$c]=$attr8;$c++;
$arD[$M][$c]=$attr9;$c++;
$arD[$M][$c]=$attr10;$c++;
$arD[$M][$c]=$attr11;$c++;
$arD[$M][$c]=$attr12;$c++;
$arD[$M][$c]=$attr13;$c++;
$arD[$M][$c]=$attr14;$c++;
$arD[$M][$c]=$attr15;$c++;
$arD[$M][$c]=$attr16;$c++;
$arD[$M][$c]=$attr17;$c++;
$arD[$M][$c]=$attr18;$c++;
$arD[$M][$c]=$attr19;$c++;
$arD[$M][$c]=$attr20;$c++;
$arD[$M][$c]=$attr21;$c++;

$arD[$M][$c]=$KTG;$c++;
$arD[$M][$c]=$PK; $c++;

$color="#dddddd";
if($no %2==0){$color="#eeeeee";}
echo"<tr bgcolor='$color'>
<td valign='top'>$no</td>
<td><label title='$k1'><small>$attr1</small></label></td>
<td><label title='$k2'><small>$attr2</small></label></td>
<td><label title='$k3'><small>$attr3</small></label></td>
<td><label title='$k4'><small>$attr4</small></label></td>
<td><label title='$k5'><small>$attr5</small></label></td>
<td><label title='$k6'><small>$attr6</small></label></td>
<td><label title='$k7'><small>$attr7</small></label></td>
<td><label title='$k8'><small>$attr8</small></label></td>
<td><label title='$k9'><small>$attr9</small></label></td>
<td><label title='$k10'><small>$attr10</small></label></td>
<td><label title='$k11'><small>$attr11</small></label></td>
<td><label title='$k12'><small>$attr12</small></label></td>
<td><label title='$k13'><small>$attr13</small></label></td>
<td><label title='$k14'><small>$attr14</small></label></td>
<td><label title='$k15'><small>$attr15</small></label></td>
<td><label title='$k16'><small>$attr16</small></label></td>
<td><label title='$k17'><small>$attr17</small></label></td>
<td><label title='$k18'><small>$attr18</small></label></td>
<td><label title='$k19'><small>$attr19</small></label></td>
<td><label title='$k20'><small>$attr20</small></label></td>
<td><label title='$k21'><small>$attr21</small></label></td>
<td><label title='$NM $KET'><small><small>$NM $KET</small></small></label></td>
</tr>";
$no++;
$M++;
}//while
?>
</table>
</div>
<?php
}//distinct
 
$JD=$M;//jumlah all data all class
$JC=$c;//21
//col 3 kategori
//col 21 PK

$gab1="<h4>Hitung Jarak Eccludean Distance</h4>
<table width='95%'>
  <tr bgcolor='#036'>
    <th width='3%'><center><font color='#ffffff'>No</td>
<th width='17%'><center><font color='#ffffff'>$CLASS</td>
    <th width='70%'><center><font color='#ffffff'>Formula</td>
<th width='5%'><center><font color='#ffffff'>Bobot</font></td>
  </tr>";

$arDB=array();
  for($m=0;$m<$M;$m++){
  $no=$m+1;
  $KAT=$arD[$m][$JC-2];//class
  $PKEY=$arD[$m][$JC-1];//pkey
  $arDB=$arD[$m];//array 1xJC
  $ar=getECC($arA,$arDB);
  $bobot=$ar[0];
  $sbobot1=$ar[1];
  $sbobot2=$ar[2];
  $arBobot[$m]=$bobot;
  $arSBobot1[$m]=$sbobot1;
  $arSBobot2[$m]=$sbobot2;
  $arSKat[$m]=$KAT;
  $arIKat[$m]=$PKEY;
  
$color="#dddddd";
if($no %2==0){$color="#eeeeee";}
$gab1.="<tr bgcolor='$color'>
<td valign='top'>$no</td>
<td valign='top' align='left'>$KAT
<td valign='top' align='left'><small><i><small>$sbobot1 = $sbobot2</small></small></i>
<td valign='top' align='left'><small><i>$bobot</small><i>
</tr>";
}//for
$gab1.="</table>";

  $size = $M;
    for ($i=0; $i<$size; $i++) {
        for ($j=0; $j<$size-1-$i; $j++) {
            if ($arBobot[$j+1] < $arBobot[$j]) {//>ambil tertinggi, <ambil terendah
                swap($arBobot, $j, $j+1);
swap($arSBobot1, $j, $j+1);
swap($arSBobot2, $j, $j+1);
swap($arSKat, $j, $j+1);
swap($arIKat, $j, $j+1);
            }
        }
    }

$gab2= "<h3>KNN KValue $k_value Tertinggi</h3>";
$gab2.="<table width=\"95%\">
  <tr bgcolor=\"#036\">
    <th width=\"3%\"><center><font color=\"#ffffff\">No</td>
<th width=\"5%\"><center><font color=\"#ffffff\">Kategori</td>
    <th width=\"87%\"><center><font color=\"#ffffff\">Formula</td>
<th width=\"5%\"><center><font color=\"#ffffff\">Bobot</font></td>
  </tr>";


$j1=0;
$tot1=0;
$j2=0;
$tot2=0;
$j3=0;
$tot3=0;

  for($m=0;$m<$k_value;$m++){
  $no=$m+1;
  $KAT=$arSKat[$m];
  $idkat=$arIKat[$m];
  $bobot=$arBobot[$m];
  $sbobot1=$arSBobot1[$m];
  $sbobot2=$arSBobot2[$m];

  if($KAT==$ARM[0]){$j1++;$tot1+=$bobot;}//kat1
  else if($KAT==$ARM[1]){$j2++;$tot2+=$bobot;}//kat2
  else if($KAT==$ARM[2]){$j3++;$tot3+=$bobot;}//kat2
  
$color="#dddddd";
if($no %2==0){$color="#eeeeee";}
$gab2.="<tr bgcolor=\"$color\">
<td valign=\"top\">$no</td>
<td valign=\"top\" align=\"left\">#".$KAT."
<td valign=\"top\" align=\"left\"><small><i><small>$sbobot1</small>= $sbobot2</small></i>
<td valign=\"top\" align=\"left\"><small><i>$bobot</small></i>
</tr>";
}//for
$gab2.="</table>";

$shasil="?";
$bobot=0;
if($j1>=$j2 && $j1>=$j3 ){$shasil=$ARM[0];$bobot=$tot1/$j1;}
else if($j2>=$j1 && $j2>=$j3){$shasil=$ARM[1];$bobot=$tot2/$j2;}
else if($j3>=$j1 && $j3>=$j2){$shasil=$ARM[2];$bobot=$tot3/$j3;}

$gab2.="<h4>ASC Status Dominan $k_value XYZ ($j1:$j2) = <u>".strtoupper($shasil)." ($bobot)</u></h4>";


$hasil= "<h3>Analisa XYZan $nama $idpel Dengan $k_value XYZ ($j1:$j2)=>".strtoupper($shasil)."  ($bobot)</h3><div>$gab1 $gab2</div>";
$_SESSION["gab"]=$hasil;


$img="<img src=\"ypathicon/print.png\" width=\"20\" height=\"20\" title=\"PRINT\" OnClick=\"PRINTME()\"><br>";
$hasilprint= "<h3>Analisa an $nama $idpel Dengan XYZ $k_value XYZ($j1:$j2:$j3) =>".strtoupper($shasil)." ($bobot)</h3><div>$gab1 $gab2</div>";

echo $hasilprint;


?>

</div>

<?php

$time_end = microtime(true);
$durasi = ($time_end - $time_start) *1000;
echo"<br><i>Waktu Proses $durasi ms</i>"; 

echo $sql="update `$tbpengujian` set
`analisa1`='$gab',
`kategori1`='$shasil',
`hasil1`='Analisa an $nama $idpel Dengan XYZ $k_value KNN ($j1:$j2) =>".strtoupper($shasil)." ($bbt), $durasi ms |$kathasil'
where `id_pengujian`='$id_pengujian'";
$up=process($conn,$sql);

?>

<?php
function swap(&$arr, $a, $b) {
    $tmp = $arr[$a];
    $arr[$a] = $arr[$b];
    $arr[$b] = $tmp;
}
?>


<?php
function getECC($arrA,$arrB){
$c=count($arrA);
$h=0;
$vs1="";
$vs2="";
for($i=0;$i<$c;$i++){
$a=$arrA[$i];
$b=$arrB[$i];
$v=pow(($a-$b),2);
$h+=$v;
$vs1.="($a-$b)<sup>2</sup>+";
$vs2.="$v+";
}
$vs1=substr($vs1,0,strlen($vs1)-1);
$vs2=substr($vs2,0,strlen($vs2)-1);
$h=sqrt($h);
$vs1="sqrt($vs1)";
$vs2="sqrt($vs2)";
$ar=array();
$ar[0]=bul($h);
$ar[1]=$vs1;
$ar[2]=$vs2;
return $ar;
}



function getVx($ar,$v){
$h=0;
for($i=0;$i<count($ar);$i++){
if($ar[$i]==$v){
$h=$i+1;
break;
}
}
return $h;
}

function getDistinctx($conn,$kolom){
$ar=array();
$sql="select distinct(`$kolom`) from `tb_dataset` order by `$kolom` asc";
   $arr=getData($conn,$sql);
$i=0;
foreach($arr as $d) {
$value=$d["$kolom"];
if($value==42){$value="N/A";}
$ar[$i]=$value;
$i++;
}
return $ar;
}

?>








Tidak ada komentar:

Posting Komentar

global_priv WARNING Selalu

 Jika muncul pesan kesalahan: Warning in .\libraries\classes\Dbal\DbiMysqli.php#209  mysqli::query(): (HY000/1034): Index for table 'glo...