MIF_E31222508/tes_cf.php

46 lines
1.2 KiB
PHP

<?php
// tes_cf.php
// Skala CF: 1-4 ke 0.25-1.0
$skala_cf = [
1 => 0.25,
2 => 0.50,
3 => 0.75,
4 => 1.00,
];
// Input contoh (cf_pakar, cf_user dalam skala 1-4)
$input = [
['cf_pakar' => 4, 'cf_user' => 3],
['cf_pakar' => 4, 'cf_user' => 2],
['cf_pakar' => 4, 'cf_user' => 3],
];
// Konversi ke nilai desimal dan hitung CF per gejala
$cf_per_gejala = [];
foreach ($input as $item) {
$cf_pakar = $skala_cf[$item['cf_pakar']];
$cf_user = $skala_cf[$item['cf_user']];
$cf_per_gejala[] = $cf_pakar * $cf_user;
}
// Fungsi untuk gabung CF bertahap
function gabungCF(array $cf_array) {
$cf_total = $cf_array[0];
for ($i = 1; $i < count($cf_array); $i++) {
$cf_total = $cf_total + $cf_array[$i] * (1 - $cf_total);
}
return $cf_total;
}
$cf_akhir = gabungCF($cf_per_gejala);
echo "=== Perhitungan Certainty Factor ===\n";
foreach ($input as $i => $item) {
echo "Gejala " . ($i+1) . ": CF Pakar (" . $item['cf_pakar'] . " -> " . $skala_cf[$item['cf_pakar']] . "), ";
echo "CF User (" . $item['cf_user'] . " -> " . $skala_cf[$item['cf_user']] . "), ";
echo "CF Gejala = " . $cf_per_gejala[$i] . "\n";
}
echo "\nCF Total = " . round($cf_akhir * 100, 2) . "%\n";