Gå til innhold

Regne med php.


Anbefalte innlegg

Skrevet

			if ($rank > 599 AND $rank < 3000) {
		$rankk = $rank-599;
		$s = 2401;
		$ss = 61;
		$procent = $rankk * 100 / 599 + $s / $ss;
		echo $rankk.'<br>';
		echo $procent.'<br>';
		echo $rank;
		$procentt = 100-$procent;

 

Dette er "rankbar" koden min.

 

$rank = 1217.

 

Men outputen blir slik:

 

142.36566408495

 

Det blir helt feil, det skal bli ca 41. Hvorfor blir det plusset på masse mer? Evt, noen grunner?

Videoannonse
Annonse
Skrevet

Rekkefølgen regneoperatørene utføres i er kanskje ikke som du tror. Legg til et par paranteser der du regner ut $procent, så skal du se at det kanskje blir mer riktig.

Skrevet (endret)
Rekkefølgen regneoperatørene utføres i er kanskje ikke som du tror. Legg til et par paranteser der du regner ut $procent, så skal du se at det kanskje blir mer riktig.

 

 

Prøvde,

$procent = ($rankk * 100 / 599) + ($s / $ss);

 

 

Samme som printes ut enda.. Hva er feil ?

 

 

Er vel basic aritmetikk, det. Deling og ganging skjer før plussing og subtrahering, for eksempel.

 

Må gjøre det i den rekkefølgen!

Endret av ThomasQ
Skrevet

Parantesene du har lagt på gjør ingenting med stykket, siden det er den rekkefølgen som gjaldt implisitt fra før (ref. mitt forrige innlegg).

 

Tenk gjennom hva det er du skal regne ut — det er visst ikke det du regner ut nå i alle fall.

Skrevet (endret)

$procent = (($rankk * 100) / (599 + ($s)) / ($ss));

 

Nå ble svaret 0,31 så begynner å nærme meg :hmm:

 

 

Hjelpe meg? Får det ikke til..

Endret av ThomasQ
Skrevet (endret)

Ganske basic matte, er det ikke?

 

Det du egentlig gjør, er å plusse på resultatet av $s delt på $ss, når du egentlig ønsker å dele alt på $ss til slutt.

Det beste er at du finner løsningen selv, så linjen over bør sparke deg i riktig retning.

Endret av m4rtin
Skrevet (endret)
Et sted hvor jeg kan lære om når man skal sette parantes og ikke?

Jupp, det stedet kalles skolen. ;):wee:

 

Paranteser lærer du i løpet av ungdomsskolen.

Endret av Jonas
Skrevet

<?php
$rank = 1217;
if ($rank > 599 AND $rank < 3000) {
$rankk = $rank-599;
$s = 2401;
$ss = 61;
$procent = $rankk * 100 / 599 + $s / $ss;
$procentt = $procent - 100;
echo $rankk.'<br>';
echo $procentt.'<br>';
echo $rank;
}
?>

 

Testet, og skal funke.. - men vet ikke om svaret er rett :p - ble 42 ihvertfall :)

Skrevet (endret)

$prosent = ($rank - 600) / 23.99; // for verdier mellom 599 og 3000 ikke inklusiv, der 600 er 0% og 2999 er 100%.

 

Må innrømme eg ikke har noen ide om ka du vil frem til.

Endret av OISNOT

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...