login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Even of oneven

Offline Sitefoon - 14/04/2006 15:03 (laatste wijziging 14/04/2006 15:04)
Avatar van SitefoonNieuw lid is er een functie in php waar ik aan kan zien of een getal even of oneven is.

dus bijvoorbeeld:

  1. <?php
  2. $getal = rand(0,20);
  3. if (functie($getal) == 'even')
  4. {
  5. echo "het getal is even";
  6. }
  7. else
  8. {
  9. echo "het getal is oneven";
  10. }
  11. ?>

9 antwoorden

Gesponsorde links
Offline Stefan14 - 14/04/2006 15:06 (laatste wijziging 14/04/2006 15:07)
Avatar van Stefan14 PHP gevorderde gewoon kijken of het deelbaar is door 2, maar dat zal kokx ook wel doen denk ik.

vinTage edit: heb je met deze boodschap ook nog iets nuttigs te melden ?
Offline vinTage - 14/04/2006 15:07
Avatar van vinTage Nieuw lid
  1. <?php
  2. $getal = rand(0,20);
  3. if ($getal%2 == 0)
  4. {
  5. echo "het getal is even<br>";
  6. }
  7. else
  8. {
  9. echo "het getal is oneven<br>";
  10. }
  11. echo "het random getal was ".$getal;
  12. ?>


woei 
Offline kokx - 14/04/2006 15:08 (laatste wijziging 14/04/2006 15:10)
Avatar van kokx Onbekend ff een functie van gemaakt:
  1. <?php
  2. function evengetal($getal){
  3. $getal = $getal % 2;
  4. if($getal == 0){
  5. return true;
  6. }else{
  7. return false;
  8. }
  9. }
  10. ?>


Edit: @vinTage: Rensjuh super-admin??
v edit: jap
Offline Nation - 14/04/2006 15:12 (laatste wijziging 14/04/2006 15:14)
Avatar van Nation PHP interesse je kan wel zorgen dat een getal afrond misschien op een geheel getal
ik denk met de functie round()
weet wel niet hoe die te gebruiken:D

als je dan een getal deelt door 2 en dit opslaat in een variabele.
en het oorspronkelijke getal ook deelt door 2 maar dan ook afrond en dit sla je ook op in een variabele,
dan kijk je of de 2 variabelen gelijk zijn.
zijn ze niet gelijk => getal = oneven
zijn ze wel gelijk => getal = even

  1. <?php
  2. $getal = rand(0,20);
  3. $gedeelt = $getal % 2;
  4. $afgerond = round($gedeelt,0);
  5. if $gedeelt == $afgerond
  6. {
  7. echo "het getal is even";
  8. }
  9. else
  10. {
  11. echo "het getal is oneven";
  12. }
  13. ?>

zoiets moet het volgens mij zjin.
die round functie werkt denk ik wel niet:!:
Offline Sitefoon - 14/04/2006 15:12
Avatar van Sitefoon Nieuw lid bedankt
Offline Thomas - 14/04/2006 15:21
Avatar van Thomas Moderator Dat is ook precies wat je doet met % (ook wel "modulo" genoemd).

Het resultaat van "a % b" is niets anders dan de rest na deling van a door b. Als (a % 2) gelijk is aan 0 (lees: de rest na deling van a door 2), dan is a een even getal.

Een iets kortere functie om te bepalen of een getal even is (deelbaar door 2):

  1. function even($getal)
  2. {
  3. return ($getal % 2) == 0;
  4. }
Offline kokx - 14/04/2006 15:50 (laatste wijziging 14/04/2006 16:57)
Avatar van kokx Onbekend @FangorN: Ik denk niet dat dat werkt. Ik dacht eerder aan dit:
  1. <?php
  2. function even($getal){
  3. return (($getal % 2) == 0) ? true : false;
  4. }
  5. ?>
Offline Rens - 14/04/2006 15:51 (laatste wijziging 14/04/2006 15:51)
Avatar van Rens Gouden medaille

Crew algemeen
Tuurlijk werkt dat wel.
Er staat een vergelijking achter.
($getal % 2) == 0.
Dus word er of true, of false gereturned.
Offline nemesiskoen - 14/04/2006 16:57
Avatar van nemesiskoen Gouden medaille

PHP expert
  1. <?php
  2. function even($getal){
  3. return (($getal % 2) == 0) ? true : false;
  4. }
  5. ?>

Dat is een van de grappigste dingen die ik ooit heb gezien.
Letterlijk doe je hier:
Als "$getal % 2 == 0" true terug stuurt, stuur dan true terug. Als het false terugstuurt, stuur dan false terug. Je kan dus evengoed "$getal % 2 == 0" terugsturen.
FangorN's versie klopt wel degelijk.
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.254s