paper - scissor - rock

Door Lode , 20 jaar geleden, 7.150x bekeken

Iemand was zoiets aan het maken.
Leek me wel een uitdaging.
Misschien heeft iemand er nog wat aan.

Gesponsorde koppelingen

PHP script bestanden

  1. paper-scissor-rock

 

Er zijn 37 reacties op 'Paper scissor rock'

PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Marcel
Marcel
20 jaar geleden
 
0 +1 -0 -1
*rock, paper, scissors
Lode
Lode
20 jaar geleden
 
0 +1 -0 -1
Je mag 'm zelf aanpassen :-]
Jelmer -
Jelmer -
20 jaar geleden
 
0 +1 -0 -1
Waarom de hexadecimale notatie bij define? Was er iets mis met het good old fashioned 0, 1 en 2?

edit: Overigens vat ik deze regel ook niet helemaal:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
    if(($recursive - $count) % ($recursive - $count) == 0){

x / x is toch altijd een rond getal, namelijk altijd 1. Dus deze if zal hoe dan ook waar zijn, onafhankelijk van de waarden $recursive & $count...
Marcel
Marcel
20 jaar geleden
 
0 +1 -0 -1
Ik vind em niet mooi gescript :-P
Lode
Lode
20 jaar geleden
 
0 +1 -0 -1
@jelmer:
Hexidecimalen, tja een kwestie van persoonlijke voorkeur misschien. integers kunnen ook ja...

je hebt gelijk die is hier niet helemaal nodig en klopt niet helemaal inderdaad
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
if(($recursive - $count) % $count == $count){
?>

Moet het zijn... om te controleren of $matrix wel echt een matrix is.

@Marcel
Kom maar op met jou variant zou ik zeggen....
Robin de Vries
Robin de Vries
20 jaar geleden
 
0 +1 -0 -1
php 4?
Thijs X
Thijs X
20 jaar geleden
 
0 +1 -0 -1
Mooie oplossing dmv een matrix!
GaMer B
GaMer B
20 jaar geleden
 
0 +1 -0 -1
Erg mooi Lode.
Lode
Lode
20 jaar geleden
 
0 +1 -0 -1
@Robin

inderdaad hij werkt ook gewoon in php4
Jurgen assaasas
Jurgen assaasas
20 jaar geleden
 
0 +1 -0 -1
Wat is het voordeel van een matrix gebruiken?
Lode
Lode
20 jaar geleden
 
0 +1 -0 -1
De eerste wint van de laatste.
En je hebt 3 mogenlijkheden.
Dus 3 x 3 = 9 uitkomsten.

Ik zou zeggen ga maar ande slag met if/elseif/else dan zal je het voordeel wel ontdekken na een tijd op je hoofd krabben.

NB. Leuk dat er zonder enige melding of wat dan ook een titel aanpassing heeft plaats gevonden???? Gaan we weer beginnen? Wat was er mis mee dan? Was toch duidelijk???
Ruud Verbij
Ruud Verbij
20 jaar geleden
 
0 +1 -0 -1
@Lode
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
if(($recursive - $count) % $count == $count){

Hier zitten 2 echt grove fouten in.
De definitie van modulo (%), is dat je een X aantal keer het rechter gedeelte van het linker afhaalt. Dus is het onzin om eerst al $count van $recursive af te halen alvorens hem modulo $count te doen.
Daarnaast levert een modulo altijd een getal KLEINER dan het rechterlid op, dus als je iets modulo $count doet, levert dit dus een getal kleiner dan $count op. Je expressie is dus altijd false.
Lode
Lode
20 jaar geleden
 
0 +1 -0 -1
Grove fouten...
Daar versta ik persoonlijk wat anders onder.

Maar je hebt gelijk hij klopt nog steeds niet helemaal.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
if($count % ($recursive - $count) == $count){
?>


NB. $count moet we degelijk er van af!
Kijk anders maar eens hoe
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
count($blaat, COUNT_RECURSIVE);
?>


precies werkt!
Die geeft in dit geval namelijk 12....
Robin de Vries
Robin de Vries
20 jaar geleden
 
0 +1 -0 -1
@lode
er staat dat het werkt in php4, maar dat vind ik een beetje ouderwets. Kun je niet gewoon php 5 neerzetten>
Lode
Lode
20 jaar geleden
 
0 +1 -0 -1
Zo beter?
Ik vind dit tot op heden echt de meest onzinnige opmerking die ik hier heb gekregen hoor.....
- -
- -
20 jaar geleden
 
0 +1 -0 -1
Je titel is niet veranderd, die veranderd alleen soms met de reactie :)

Kijk trouwens even naar de zijkant, kun je zien dat "Erg leuk script!" van mij afkomstig is :)
Marcel
Marcel
20 jaar geleden
 
0 +1 -0 -1
Lode schreef op 21.04.2008 08:57:
@Marcel
Kom maar op met jou variant zou ik zeggen....
Ow, oke
Lode
Lode
20 jaar geleden
 
0 +1 -0 -1
En wat is daar mooier aan qua code ?
Beetje plaatjes en sessions... maar ik vind 'm eerder minder overzichtelijk...

EDIT:
doe dan een <input type="image"> zou ik dan denken ?

@chris
Hij was wel degelijk veranderd... Site is zeker zo lek als een mandje dan?! :-S
Jesper Diovo
Jesper Diovo
20 jaar geleden
 
0 +1 -0 -1
Lode, waar maak je je druk om? Een titel is een titel... Ik weet niet wat de voorgaande titel was, maar nu ("paper - scissor - rock") is toch duidelijk en goed?

Btw, misschien een voorbeeldje?
Lode
Lode
20 jaar geleden
 
0 +1 -0 -1
Het is 1 groot voorbeeld...
Jesper Diovo
Jesper Diovo
20 jaar geleden
 
0 +1 -0 -1
Ik zie geen voorbeeld, hoor. Wat jij 'Voorbeeld' noemt, zie ik als code. Dat is oké, maar nu of het ook echt werkt. Aangezien er nog wat foutjes in zaten (zie voorgaande reacties) wil ik het ook wel eens uitproberen (ohja... ik ben lui, ga het script niet eerst kopiëren, plakken, opslaan, uploaden en dan pas uittesten).
- -
- -
20 jaar geleden
 
0 +1 -0 -1
Graag een online voorbeeld (je script op een website zetten dus)
Lode
Lode
20 jaar geleden
 
0 +1 -0 -1
uploaden? installeer xampp of wamp? Zend studio? Of een combinatie...
Niet mijn probleem dat je lui bent...

ik wou 'm ff testen dus je hebt geluk...
http://www.lodesite.nl/psr.php

Maar die blijft daar niet heel lang staan...
- -
- -
20 jaar geleden
 
0 +1 -0 -1
Het is je eigen voorbeeld, waarom zou je die verwijderen? Anders verplicht je ons eigenlijk om je script te uploaden zonder dat ze weten of ze het uberhaupt wel willen..
Jurgen assaasas
Jurgen assaasas
20 jaar geleden
 
0 +1 -0 -1
Je upload dit toch alleen als je het zou willen gebruiken dit is de basis, je kan hier natuurlijk een leuke grafische schil om bouwen.
Tom K
Tom K
20 jaar geleden
 
0 +1 -0 -1
leuk script, goede code. Een vraagje:wat doet PHP_EOL
Jurgen assaasas
Jurgen assaasas
20 jaar geleden
 
0 +1 -0 -1
PHP is een constante die een manual break geeft in de code.

normaal zou je broncode zo komen:

<tr><td></td></tr>

met EOL kun je:

<tr>
<td></td>
</tr>

in de broncode krijgen.
Tom K
Tom K
20 jaar geleden
 
0 +1 -0 -1
dat kan toch ook met "\n\r"
Jurgen assaasas
Jurgen assaasas
20 jaar geleden
 
0 +1 -0 -1
Niet als je voor HTML enkele quotes gebruikt wat dus het beste is.
Jesper Diovo
Jesper Diovo
20 jaar geleden
 
0 +1 -0 -1
http://www.lodesite.nl/psr.php?psr=3 werkt ook...

En verder vind ik dat de maker van het script een voorbeeld móét hebben, anders is het gewoon een waardeloos script. Men moet toch kunnen zien wat het script doet, alvorens men het klakkeloos overneemt?


20 jaar geleden
 
0 +1 -0 -1
Linebreaks verschillen ook weer van os, PHP_EOL pakt automatisch de goede dacht ik.


20 jaar geleden
 
0 +1 -0 -1
Quote:
Lode schreef op 21.04.2008 02:24
Je mag 'm zelf aanpassen :-]

Quote:
NB. Leuk dat er zonder enige melding of wat dan ook een titel aanpassing heeft plaats gevonden????

Volgens mij was jij te lui wat aan te passen en heeft iemand anders het min of meer op jouw verzoek aangepast.

Quote:
Het is 1 groot voorbeeld...

Waarvan dan precies als ik mag vragen?

Quote:
ik wou 'm ff testen dus je hebt geluk...
http://www.lodesite.nl/psr.php

Fijn dat je je code even test voordat je dat als "voorbeeld" on-line plaatst. Zou wel fijn zijn als voorbeelden hier zouden werken.
Dan hebben beginners er ook wat aan namelijk. Oh ja beginners, die gebruiken voornamelijk voorbeelden van dit soort spelletjes. Daarom begrijp ik deze niet helemaal:
Quote:
Niveau: Expert

Zo moeilijk is het script verder niet namelijk.

edit:
Quote:
Site is zeker zo lek als een mandje dan?! :-S
Ja klopt dat is deze site. Inmiddels heeft Bas met naald, garen en een stel lapjes er een hele kleurrijke lappendeken van gemaakt.

edit op verzoek van Steffan: het kleurenspectrum van Bas zijn lappenmand is blauw, blauw, blauw, blauw, zwart en wit
Jurgen assaasas
Jurgen assaasas
20 jaar geleden
 
0 +1 -0 -1
Ik denk dat dit voor een beginner wel te ingewikkeld is.


20 jaar geleden
 
0 +1 -0 -1
Jurgen:
Ik denk dat dit voor een beginner wel te ingewikkeld is.

Je kunt het zo moeilijk maken als je wilt. In dit geval doet Lode dat ook.
0x00000000 is gewoon gelijk aan 0, 0x00000001 aan 1 en 0x00000002 aan 2. Simpel.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php if(isset($_GET['psr']) && ctype_digit((string) $_GET['psr'])){ ?>
daar kan die hele isset weg, want als $_GET['psr'] niet bestaat, geeft ctype_digit false terug, bij strings en floats e.d. ook.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php $count        = count($matrix, COUNT_NORMAL);
    $recursive    = count($matrix, COUNT_RECURSIVE);
    //corrected:
    if($count % ($recursive - $count) == $count){ ?>

kan helemaal weg, kan je ook gewoon tellen, hoef je niet iedere keer weer door php laten tellen. Ook is 3%(12-3) gelijk aan drie, dus kan ook weg, alweer wat simpeler.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php if($_GET['psr'] > $count xor  $_GET['psr'] < 0){ ?>

Hmm... Kan psr groter dan 3 zijn en tegelijkertijd kleiner dan 0? Dan zou psr een gesplete persoonlijkheid hebben. Or of || volstaat dus.

Dan komt een switch statement, wat wel een slimme aanpak is, PHP_EOL, een line break die je eigenlijk zo moeten gebruiken als je een line break wilt en de constante __FILE__ die de full path geeft, dus moet basename er wel over.
Eigenlijk is dit script zo simpel als het maar kan, gewoon een beginner script, je moet alleen effe door de vaagheden kijken.
Lode
Lode
20 jaar geleden
 
0 +1 -0 -1
@Karl
>> Hexidecimalen hebben we het al over gehad....

"daar kan die hele isset weg"
>> Als ik $_GET['psr'] niet bestaat zal je dan een 'undefined index' error krijgen...

"if($count % ($recursive - $count) == $count)"
Is hier inderdaad niet helemaal nodig.. maar ik gebruik elders variabele matrixen. 3x3, 4x4 , 5x5 dus vandaar die controle.

"Hmm... Kan psr groter dan 3 zijn en tegelijkertijd kleiner dan 0?"
Nee, XOR links != rechts, dus als > 3 xor < 0. Hij kan maar 1 van de 2 zijn, dus xor is hier juist wel van toepassing...

@Djemo:
"En verder vind ik dat de maker van het script een voorbeeld móét hebben"
Leuk voor je... Maar ik deel iets omdat ik dat wil. Maar ik ben hier niet om naar jou verwachtingspatroon toe te leven. Ben je te lui om zelf iets doen? Heb je mij niet mee...

@webmakkerij:
"Niveau: Expert"
Staat nergens gedefineerd wanneer wat waarbij hoort. Is dus een persoonlijk iets... Stemmen of admins zouden zoiets moeten bepalen vind ik.

"Zou wel fijn zijn als voorbeelden hier zouden werken"
Dan moet je ze denk ik op deze site gaan draaien. Dan staan ze waar ze horen en kunnen ze beheerd worden...

"Ja klopt dat is deze site. Inmiddels heeft Bas met naald, garen en een stel lapjes er een hele kleurrijke lappendeken van gemaakt."
Mooi, dan kan ie misschien gelijk een paar andere dingen meenemen ? :-]
- layout, is een beetje klein op 23'
- login, waarom staan er wachtwoorden en usernames in de cookies?

Moet ik nog even doorgaan?...
Terence Hersbach
Terence Hersbach
20 jaar geleden
 
0 +1 -0 -1
@lode, binnenkort (lees ongeveer in 2065) komt er een nieuwe versie van phphulp. daar is bas al een jaar mee bezig ong.
PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen


20 jaar geleden
 
0 +1 -0 -1
Quote:
@Karl
>> Hexidecimalen hebben we het al over gehad....

En ik zeg dat die niet hoeven, ik denk dat de meeste mensen denken van, oh, das hex (of het niet eens weten), das ingewikkeld, dat script skip ik.

Quote:
"daar kan die hele isset weg"
>> Als ik $_GET['psr'] niet bestaat zal je dan een 'undefined index' error krijgen...

Idd krijg je die notice, opzich mag je die negeren, maar is idd niet netjes. Wat me nu wel opviel was dat je niet per se hoeft te type casten.

Quote:
"if($count % ($recursive - $count) == $count)"
Is hier inderdaad niet helemaal nodig.. maar ik gebruik elders variabele matrixen. 3x3, 4x4 , 5x5 dus vandaar die controle.

Aha, maar klopt die controle ook? Doe je niet zoals je eerst deed x/x?

Quote:
"Hmm... Kan psr groter dan 3 zijn en tegelijkertijd kleiner dan 0?"
Nee, XOR links != rechts, dus als > 3 xor < 0. Hij kan maar 1 van de 2 zijn, dus xor is hier juist wel van toepassing...

Dat doet or ook al. Kijk, ik heb het volgende van deze site:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
Operand Name    Sample        Description
OR      Or    $var OR $var2    Is true if either value is true.
XOR      Xor    $var XOR $var2    Is true if either value is true, but not both.

Het gaat dus om dat laatste, psr kan niet twee verschillende waardes aannemen, dus volstaat or ook. Zie ook deze site.

Om te reageren heb je een account nodig en je moet ingelogd zijn.

Inhoudsopgave

  1. paper-scissor-rock

Labels

  • Geen tags toegevoegd.

Navigatie

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.