• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

[PHP] Problem z odpowiednim wyświetleniem parzystości

Cloud VPS
0 głosów
1,265 wizyt
pytanie zadane 20 maja 2015 w PHP przez marcin_w Gaduła (3,190 p.)

Witajcie mam takie zadanie aby napisać skrypt który wyświetli zawartość dwóch plików .php . Pierwszy z nich ma wyświetlić sumę dziesięciu losowo wygenerowanych liczb. Drugi ma wyświetlić czy ta suma jest parzysta czy nieparzysta. Cóż po dłuższym rozmyślaniu jakoś to napisałem, jednak to nie jest to czego oczekiwałem. Stworzyłem 3 pliki cwiczenie.php, suma.php i parzystosc.php. Co prawda wyświetla się parzystość jednak jest to odnośnie tej samej funkcji losuj() z pliku  suma.php. Aby to wszystko w ogóle działało musiałem skopiować częściowo zawartość funkcji losuj () do funkcji parzystość().  Nie mam pojęcia co zrobić aby warunki w funkcji parzystość() wyświetlały się w stosunku do TEJ SAMEJ SUMY. Oto linie kodu :

 

cwiczenie.php 

echo "Plik zawierający sumę wylosowanych liczb: <br><br>";
    include("suma.php");
     losuj();

  echo"<br><br>Plik sprawdzający parzystość sumy wylosowanych liczb <br><br>";
    include("parzystosc.php");
     parzystosc();

 

suma.php

 

function losuj()
     {
       $suma = 0;

       for($i=1; $i<=10; $i++)
         {
            $x = rand(1, 15);
            $suma = $suma + $x;
            echo $x." + ";
         }
        echo"0 = $suma";     
       
     }

 

parzystosc.php

 

function parzystosc()
     {
         
        $suma = 0;
        
       for($i=1; $i<=10; $i++)
         {
            $x = rand(1, 15);
            $suma = $suma + $x;
            
         }
      
        
        if($suma % 2 == 0)
          {
            echo " jest to liczba parzysta";
          }
        
        else if ($suma % 2 > 0)
          {
            echo " nie jest to liczba parzysta";
          }
     }

1 odpowiedź

0 głosów
odpowiedź 20 maja 2015 przez ssnake Obywatel (1,860 p.)
wybrane 21 maja 2015 przez marcin_w
 
Najlepsza
zwracaj sobie tą sumę z losuj() do jakiejś zmiennej, a w przystosc($liczba) podaj ją jako argument funkcji;

P.S.
po co w parzystosc() masz else if? skoro wiadomo, że jak nie jest parzysta o jest nieparzysta ;)
komentarz 20 maja 2015 przez marcin_w Gaduła (3,190 p.)

Właśnie na tym polega problem że jak wymażę funkcję losuj z parzystosc() to mi wywala błąd. Nie bardzo rozumiem co masz na myśli mówiąc abym dodał $liczba jako agument funkcji parzystosc().

komentarz 20 maja 2015 przez ssnake Obywatel (1,860 p.)
edycja 20 maja 2015 przez ssnake
cwiczenie.php 
 
include("suma.php");
include("parzystosc.php");

echo "Plik zawierający sumę wylosowanych liczb: <br><br>";
     $sum = losuj();

echo"<br><br>Plik sprawdzający parzystość sumy wylosowanych liczb <br><br>";
     parzystosc($sum);

suma.php
function losuj(){
       $suma = 0;

       for($i=1; $i<=10; $i++){
            $x = rand(1, 15);
            $suma += $x;
            echo $x." + ";
       }
       echo "0 = $suma";     
       return $suma;
}


parzystosc.php
function parzystosc($suma){
        if($suma % 2 == 0)
            echo " jest to liczba parzysta";
        else
            echo " nie jest to liczba parzysta";
}

 

komentarz 21 maja 2015 przez marcin_w Gaduła (3,190 p.)

Dzięki serdeczne działa ;). Według tego co napisałeś to zadecydowała zmienna $sum. Dziwne jest dla mnie to że trzeba było użyć return $suma; . Mam rozumieć że gdyby nie było return $suma; to funkcja nie zwróciłaby sumy tak jak powinna ? ;)

komentarz 21 maja 2015 przez ssnake Obywatel (1,860 p.)
edycja 21 maja 2015 przez ssnake

nie zwróciła by nic bo nawet nie wiadomo co miałaby zwrócić, dokumentacja PHP na temat return => http://php.net/manual/pl/functions.returning-values.php

Podobne pytania

0 głosów
2 odpowiedzi 262 wizyt
pytanie zadane 29 października 2017 w PHP przez Undisputed Gaduła (3,040 p.)
0 głosów
1 odpowiedź 140 wizyt
pytanie zadane 26 listopada 2016 w PHP przez Bielson Użytkownik (540 p.)
0 głosów
2 odpowiedzi 270 wizyt
pytanie zadane 17 lipca 2019 w PHP przez Kacperhehe Bywalec (2,930 p.)

93,488 zapytań

142,422 odpowiedzi

322,773 komentarzy

62,908 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Kursy INF.02 i INF.03
...