Probleempje met While en een Array

Status
Niet open voor verdere reacties.

Yottz

Gebruiker
Lid geworden
28 mrt 2011
Berichten
34
Hoi,

Ik heb weer een klein probleempje. Het gaat om dit stukje code:


Code:
$array = array(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25);

(...)

While($xa <> $array)
{ $xa = $xa - 26;  }

(...)

In dit geval is $xa een geheel getal, wat kan variëren tussen heel hoog en heel laag in de min. Nu wil ik dat dat getal ergens tussen de 0 en 25 wordt en dat wil ik dus checken met die $xa <> $array en als dat niet het geval is, dan net zolang 26 aftrekken tot het wel tussen 0 en 25 valt (die getallen in de array dus). Dus heeft iemand dan een idee hoe ik dat dan het beste kan aanpakken?

Thnx,

`Yottz
 
Is dit een schoolopdracht ofzo? Dit kan namelijk véél sneller door gebruik te maken van de modulo functie ->

PHP:
$getal = 432534;
// plaats het getal tussen 0 en 25
$getal = $getal % 26; // modulo operator :)

Voor je eigen code; als je wil controleren of een waarde in een array zit, kun je gebruik maken van in_array:

PHP:
$getal = 234;
$array = array(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25);
if ( in_array( $getal, $array ) ) {
  echo 'zit in de array';
}
else {
  echo 'zit niet in de array :(';
}
 
Ja eigenlijk wel, ik moet een soort codeermachine ontwerpen.

Omg, dat ik daar niet aan gedacht heb. Goeie tip ja

PHP:
$getal = 6000;
$array = array(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25);
if (!in_array( $xa, $array ) ) 
{
  $getal = $getal % 26;
}

Dit lijkt me dan het meest van toepassing op de code. Ik heb nu geen tijd om het te proberen want ik ga straks op vakantie dus ik zal volgende week wel even verder kijken dan.
 
Het werkt nu grotendeels, maar het hoeft ook niet perfect te zijn. Thnx voor de hulp.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan