22. maj 2020 - 15:39 Der er 9 kommentarer

Gange med 0 og negative tal

Hej
Jeg er ikke erfaren i php.
Er der en venlig ekspert, der vil kunne hjælpe mig med at rette lidt til i

http://sysform.dk/images/2016/Multiplikationlilletabel%20med%20negative%20tal.php

så jeg for mulighed for at generere opgaver hvor der er mulighed for også at gange med nul og negative tal
22. maj 2020 - 15:42 #1
Der skal lige tilføjes at jeg er ejeren af sysform.dk
Avatar billede Xelot Juniormester
22. maj 2020 - 16:30 #2
Ja det tænker jeg nok der er. Hvis du starter med at sende noget kode ind, så finder vi nok en løsning 👍
22. maj 2020 - 16:56 #3
Hvis du højreklikker på vis "Vis kildestekst" på siden, når du har åbnet nævnte link, har du koderne.
Avatar billede olsensweb.dk Ekspert
22. maj 2020 - 17:17 #4
#3
hvordan ser den PHP code ud der volder besvær ??
det eneste vi kan se på siden er det fortolket PHP code., dvs. HTML,JS, CSS
22. maj 2020 - 17:51 #5
I tidernes morgen har jeg selv rettet til i html ed det du/I forhåbentligt kan se i kildeteksten,
Det fungerer fint med de rettelser jeg har lavet til eksempelvis addition og f,eks 2 og 3 tabel isoleret , de andre tabeller og så hele den lille gangetabel som er vist i linket
Avatar billede ejvindh Ekspert
22. maj 2020 - 20:26 #6
De tal, som bruges, laves i følgende linier:

  n1 = Math.floor(1+Math.random()*10);
            n2 = 1 +Math.floor( Math.random()*(10-1) );:

Hvilket Range vil du gerne have dem indenfor? [÷10 - 10] ?
Avatar billede ejvindh Ekspert
22. maj 2020 - 20:27 #7
(og det er i øvrigt ikke PHP, men JavaScript :) )
22. maj 2020 - 21:00 #8
ok ... herfra den ikke erfarne ...
Jeps indenfor Range  [÷10 - 10]
Hvis jeg får resultatet 0 eller bruger 0 får jeg fejlmeddelelse med undefined
Avatar billede ejvindh Ekspert
22. maj 2020 - 22:07 #9
I forhold til at få det rigtige range, foregår det på følgende måde:

Math.random() laver et tilfældigt tal, hvor (0 <= x < 1). Hvis du ganger dette tal med 21, og fjerner decimalerne (med Math.floor), får du derfor et tilfældigt tal mellem (0 <= x < 21). Hvis du så herefter trækker 10 fra dette tal får du (-10 <= x < 11), hvilket i praksis bliver det samme som (-10 <= x <= 10).

Når man så kigger i din kode, så bærer den lidt præg af at være klippe-klistret noget, f.eks. har jeg på fornemmelsen, at du har taget nogle funktioner ud af koden i sin tid. Derfor ser det ud til, at du _flere_ steder genererer de tilfældige tal, og jeg må indrømme, at jeg har ikke helt gennemskuet, hvilken der tæller, men i hvert fald virker det, hvis du sætter følgende ind alle steder, hvor n1 og n2 defineres:

n1 = Math.floor(Math.random()*21)-10;
n2 = Math.floor(Math.random()*21)-10;

Så har du ret i, at der bliver noget bøvl, hvis én af dem går i 0. Jeg kan ikke lige på stående fod forklare hvorfor...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester