Soruyu tam anlamadim ama..

<?php
#yüzde alma fonksiyonumuz
function yuzde($sayi, $toplam) {
$al = $sayi / $toplam;
$al2 = $al * 100;
return number_format($al2, 0);
}

#değerleri verdik
$sayi1 = 2000000;
$sayi2 = 2150000;
$sayi3 = 40;

#sayi2 için değer eşleştirmeleri
if (($sayi2 > 100000) && ($sayi2 < 750000)) { $sayi2 = 1; }
elseif (($sayi2 >= 750000) && ($sayi2 < 1500000)) { $sayi2 = 2; }
elseif (($sayi2 >= 2000000) && ($sayi2 <= 2150000)) { $sayi2 = 3; }
else { echo "Yanlis deger."; }

#yüzdeleri alıyoruz. elimizde toplam 100 var.
#bu yüzü önem sırasına göre dağıtiyoruz; 
# birinci sayı : 33,3 //orta derecede önemli
# ikinci sayı : 14,2 //en önemsiz
# ücüncü sayı : 50 //en önemli
#Hepsi toplamda : 97-98 (Küsüratlar etkileyecek)

$bir = yuzde($sayi1,"2000000") / 3;
$iki = yuzde($sayi2,"3") / 7;
$uc = yuzde($sayi3,"40") / 2;

#yuvarla ve echo et
echo "Sonuç : ".ceil($bir + $iki + $uc)." %";
?>
Koşulları bilmediğimiz için sallamasyon oldu biraz =)