18
1 Estudis d’Informàtica, Multimèdia i Telecomunicació Programació Pràctica 1 Estudiant Cognoms: Amengual Gomila Nom: Pere

1 Estudis d’Informàtica, Multimèdia i Telecomunicaciógraumultimedia.com/wp-content/uploads/Amengual_Gomila_Pere_Prac… · Es valorarà especialment l'aplicació correcta dels

  • Upload
    dothuy

  • View
    217

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 1 Estudis d’Informàtica, Multimèdia i Telecomunicaciógraumultimedia.com/wp-content/uploads/Amengual_Gomila_Pere_Prac… · Es valorarà especialment l'aplicació correcta dels

1

Estudis d’Informàtica, Multimèdia i Telecomunicació

Programació Pràctica 1

Estudiant Cognoms: Amengual Gomila

Nom: Pere

Page 2: 1 Estudis d’Informàtica, Multimèdia i Telecomunicaciógraumultimedia.com/wp-content/uploads/Amengual_Gomila_Pere_Prac… · Es valorarà especialment l'aplicació correcta dels

Exercici 1: Treball amb seqüències d'entrada [20 %] A un hotel, molts dels turistes estrangers fan canvi de moneda. Les monedes acceptades estan restringides a USDolars ($), Lliures esterlines(£), Yens(¥), Yuans (Y) i Rubles (R).

Tots els canvis de moneda efectuats al llarg del dia s’enregistren i constitueixen una seqüència diària del tipus

<t1 q1 t2 q2 ..... tn qn X> on ti és un caràcter que indica la moneda, el valor del qual pot ser ‘$’, ‘£’, ‘¥’, ‘Y’ o

‘R’ segons el tipus de moneda canviada a euros qi és la quantitat de moneda estrangera canviada del tipus ti X és la lletra 'X' i indica el final de la seqüència

Els canvis vigents dels diferents tipus de moneda són

Moneda Valor en € $ 0.73 £ 1.18 ¥ 0.0075 Y 0.022 R 0.11

Tasca: Creeu en llenguatge algorísmic el mòdul totalEuros (acció o funció, el més

adequat i justifiqueu el motiu de la tria), que llegeixi del canal estàndard d'entrada la seqüència diària i escrigui en el canal estàndard de sortida, per a cada tipus de moneda canviada la quantitat entrada al llarg del dia. També ha d’escriure el total d’euros que han sortit de la caixa de canvi.

Com no retorna cap valor (llegeix i escriu en els canals estàndard d'entrada i sortida) ha de ser una acció. Per la resolució del problema hem de fer servir un esquema de recorregut aplicat a la entrada amb marca.

Page 3: 1 Estudis d’Informàtica, Multimèdia i Telecomunicaciógraumultimedia.com/wp-content/uploads/Amengual_Gomila_Pere_Prac… · Es valorarà especialment l'aplicació correcta dels

accio totalEuros() var moneda: caracter; quantitat: real; sumaDolars: real; sumaLliures: real; sumaYens: real; sumaYuans: real; sumaRubles: real; totalCanviatEuros: real; fvar const valorDolar: real = 0.73; valorLliura: real = 1.18; valorYen: real = 0.0075; valorYuan: real = 0.022; valorRuble: real = 0.11; fconst moneda := llegirCaracter (); quantitat := llegirReal (); sumaDolars:= 0; sumaLliures:= 0; sumaYens:= 0; sumaYuans:= 0; sumaRubles:= 0; totalCanviatEuros:= 0; mentre no (moneda = “X”) fer si (moneda = “$”) llavors sumaDolars:= sumaDolars + quantitat; totalCanviatEuros:= totalCanviatEuros + (quantitat * valorDolar); fsi si (moneda = “£”) llavors sumaLliures:= sumaLliures + quantitat; totalCanviatEuros:= totalCanviatEuros + (quantitat * valorLliura); fsi si (moneda = “¥”) llavors sumaYens:= sumaYens + quantitat; totalCanviatEuros:= totalCanviatEuros + (quantitat * valorYen); fsi si (moneda = “Y”) llavors sumaYuans:= sumaYuans + quantitat; totalCanviatEuros:= totalCanviatEuros + (quantitat * valorYuan); fsi si (moneda = “R”) llavors sumaRubles:= sumaRubles + quantitat; totalCanviatEuros:= totalCanviatEuros + (quantitat * valorRuble); fsi moneda := llegirCaracter (); quantitat := llegirReal (); fmentre escriureCadena (“El nombre total de dòlars canviats és ”); escriureReal(sumaDolars); escriureCadena (“El nombre total de lliures canviades és ”); escriureReal(sumaLliures); escriureCadena (“El nombre total de yens canviats és ”); escriureReal(sumaYens); escriureCadena (“El nombre total de yuans canviats és ”); escriureReal(sumaYuans); escriureCadena (“El nombre total de rubles canviats és ”); escriureReal(sumaRubles); escriureCadena (“El nombre tota d'euros que han sortit de la caixa és “); escriureReal(totalCanviatEuros); faccio

lectura inicial

inici tractament

tractar element

lectura

comparació amb la marca

No hi ha tractament final

Page 4: 1 Estudis d’Informàtica, Multimèdia i Telecomunicaciógraumultimedia.com/wp-content/uploads/Amengual_Gomila_Pere_Prac… · Es valorarà especialment l'aplicació correcta dels

Exercici 2: Treball amb seqüències [20 %] No és gens estrany trobar rellotges o plaques commemoratives que expressen l’hora o la data en números romans.

Com ja sabeu la numeració romana1 empra lletres per representar les xifres i és un tant peculiar perquè una xifra romana pot tenir un valor positiu o negatiu segons es trobi a la dreta o l’esquerra d’una xifra de valor més gran.

Trobar el valor d’un número romà no és complicat si bé ens requereix una sèrie de còmputs Tasca: Crear en llenguatge algorísmic el mòdul moles (acció o funció, el més apropiat

i justifiqueu la tria) que rebi una quantitat representada correctament en números romans i finalitzada en un punt i en retorni el valor representat en numeració moderna.

Per exemple: Si rep “CDXIX.” retornaria 419. Si rep “MDLXXXVII.” retornaria 1587.

Indicació 1: Cal tenir present que el valor d’una xifra romana no se sap exactament quan es

mira la xifra, perquè pot ser positiu o negatiu segons la xifra següent.

Indicació 2: El número romà que rep el mòdul és un número romà correcte i acaba amb un punt. No heu de fer cap mena de control d’errors.

1 http://ca.wikipedia.org/wiki/Numeraci%C3%B3_romana

Page 5: 1 Estudis d’Informàtica, Multimèdia i Telecomunicaciógraumultimedia.com/wp-content/uploads/Amengual_Gomila_Pere_Prac… · Es valorarà especialment l'aplicació correcta dels

funcio obtenirValor(lletra: caracter): enter si (lletra = “I”) llavors valor := 1; fsi si (lletra = “V”) llavors valor := 5; fsi si (lletra = “X”) llavors valor := 10; fsi si (lletra = “L”) llavors valor := 50; fsi si (lletra = “C”) llavors valor := 100; fsi si (lletra = “D”) llavors valor := 500; fsi si (lletra = “M”) llavors valor := 1000; fsi retorna valor; ffuncio funcio moles(nombreRoma: cadena): enter var total: enter; valorAnterior: enter; valorActual: enter; contador: enter; nombreRoma: cadena; lletraActual: caracter; fvar contador := 1; lletraActual := nombreRoma(contador); total := 0; valorAnterior := 9999999; valorActual := 0; mentre no (lletraActual=”.”) fer valorActual := obtenirValor(lletraActual); total := total + valorActual; si (valorActual > valorAnterior) llavors total := total - (2 * valorAnterior); fsi valorAnterior := valorActual; contador := contador+1; lletraActual := nombreRoma(contador); fmentre retorna total;

preparar seqüència

inici tractament

expressio fi seqüència

tractar element

No hi ha tractament final

avançar seqüència

Page 6: 1 Estudis d’Informàtica, Multimèdia i Telecomunicaciógraumultimedia.com/wp-content/uploads/Amengual_Gomila_Pere_Prac… · Es valorarà especialment l'aplicació correcta dels

ffuncio

Page 7: 1 Estudis d’Informàtica, Multimèdia i Telecomunicaciógraumultimedia.com/wp-content/uploads/Amengual_Gomila_Pere_Prac… · Es valorarà especialment l'aplicació correcta dels

Exercici 3: Treball amb seqüències en PHP [20 %]

Disposem d'unes cadenes de text en què s'intercalen xifres i lletres, com ara "12c4354gy3232z9087r26."

Tasca: Es demana un programa que sigui capaç de llegir un fitxer que contingui una cadena de text d'aquestes característiques i escrigui en pantalla, a una línia per bloc de xifres, la suma de totes les xifres que formen cada bloc. Quan arriba al punt, escriu Dot found i finalitza l'execució.

Indicacions preceptives

• El fitxer php rebrà el nom prac1_exer3.php

• La crida al programa serà del tipus que es mostra i les dades s'entraran en un fitxer de text

prac1_exer3.php?filename=data30

els fitxers de dades consten d’una única instrucció de php en què la variable $cadena rep com valor una cadena de text integrada per sèries de xifres que estan separats per un o més caràcters i conté un punt. Per exemple el fitxer data30 té el següent contingut

<?php $cadena="12c4354gy3232z9087r26."; ?>

Podeu comprovar el funcionament del programa que se us demana que escriviu amb la crida:

http://prog.uoc.edu/prac1/prac1_exer3.php?filename=data30

Podeu provar canviant els noms dels fitxers de dades (data30 a data34).

• Les instruccions per carregar el fitxer amb la variable $cadena ja formen part de la plantilla.

• Els fitxers de dades s'hauran d'ubicar a la mateixa carpeta que els php

Altres indicacions

• La variable $cadena és una variable de text i les xifres que l'integren, com les lletres, són caràcters, cosa que s'haurà de tenir en compte a l'hora de fer comparacions.

Page 8: 1 Estudis d’Informàtica, Multimèdia i Telecomunicaciógraumultimedia.com/wp-content/uploads/Amengual_Gomila_Pere_Prac… · Es valorarà especialment l'aplicació correcta dels

• També s'haurà de tenir en compte per a fer sumes. Si el contingut de la variable $a és el caràcter '1', si el volem afegir a $total, la instrucció serà $total = $total + (int)$a; per tal de convertir el caràcter al seu valor numèric abans de sumar

• A les cadenes de text es pot accedir a cadascun dels caràcters individuals que la formen mitjançant el nom de la variable i un número que indica la posició del caràcter dins de la cadena: Si el contingut de $v és "Hola", llavors $v[0] és 'H', $v[1] és 'o', $v[2] és 'l' i $v[3] és 'a'. Dins de les claus es pot emprar una variable entera, p.e: for ($i=0; $i<4; $i++) print $v[$i]."<br />"; S'ha de tenir present que al primer caràcter se li assigna l'índex 0.

• Per a un plantejament adequat del problema cal tenir present que la seqüència rebuda està formada per diferents tipus d'unitats: caràcters i blocs de xifres. Un primer tractament és recórrer aquestes unitats fins trobar el punt. El tractament de les unitats serà no fer res en el cas dels caràcters i quan s'arriba a una xifra engegar el tractament del bloc de xifres que ha de donar com resultat escriure en pantalla el valor de la suma de totes les xifres.

Avaluació

Es valorarà especialment l'aplicació correcta dels esquemes de cerca, recorregut i/o tractament adequats al problema. També es tindrà present el disseny i l'aprofitament adequat de funcions i accions, que resultin útils i que l'estudiant vulgui desenvolupar voluntàriament.

Page 9: 1 Estudis d’Informàtica, Multimèdia i Telecomunicaciógraumultimedia.com/wp-content/uploads/Amengual_Gomila_Pere_Prac… · Es valorarà especialment l'aplicació correcta dels

//Aquí heu de posar el vostre codi <?php /************* FUNCTION *************/ //Aquí va el codi de les funcions function linebreak () { echo "<br>"; } /************* MAIN *************/ $filename = $_GET["filename"]; include($filename); //Aquí va el vostre codi del programa principal linebreak(); $i = 0; // preparar seqüència $suma = 0; // inici tractament while ($cadena[$i] <> ".") { // expressió fi seqüència if (is_numeric($cadena[$i])) { // tractar element $suma = $suma + (int)$cadena[$i] ; if (!is_numeric($cadena[$i+1])) { echo "Sum of digits = " . $suma ; linebreak(); $suma = "0"; } } $i++; // avançar seqüència } echo "Dot found"; ?>

Page 10: 1 Estudis d’Informàtica, Multimèdia i Telecomunicaciógraumultimedia.com/wp-content/uploads/Amengual_Gomila_Pere_Prac… · Es valorarà especialment l'aplicació correcta dels

Exercici 4: Treball amb seqüències en PHP [20 %]

Tasca: Crear un programa que sigui capaç de mostrar en pantalla totes les figures d'una màquina escurabutxaques el nom de les quals formi part de un text que es llegirà d'un arxiu de dades que el carrega a la variable $cadena.

Indicacions preceptives

• El fitxer php rebrà el nom prac1_exer4.php

• La crida al programa serà del tipus

prac1_exer4.php? filename=nom_arxiu_dades

per la qual cosa s'haurà d'emprar la instrucció $filename=$_GET["filename"]; per carregar el nom del fitxer que incorpora la instrucció que assigna valor a la variable $cadena. Un cop carregat aquest fitxer, es pot incorporar la instrucció al programa mitjançant l'ordre include($filename)2; ambdues instruccions ja formen part de la plantilla i són les primeres del programa principal. El fitxer example1.php adjunt carrega un d'aquests fitxers i mostra en pantalla el contingut. La crida ha de ser del tipus example1.php?filename=data42

• Es crearà la function putImg que rebrà el nom d'una figura i posarà en pantalla la imatge que li correspon. Sempre que s'hagi de posar una imatge en pantalla es farà amb una crida a aquesta function.

• Es crearà la function detectFruit que rebrà com a paràmetres la cadena de text i un número enter que serà en la posició en que cercarà si hi ha el nom d'una figura. En el cas que en aquesta posició del text es trobi el nom d'una figura, es retornarà aquest nom. Altrament es retornarà un zero. Per exemple, si $cadena="ablemonst" la crida detectFruit($cadena,1) retornaria 0 mentre que la crida detectFruit($cadena,2) retornaria "lemon"

• Es faciliten els fitxers d'imatge en format png necessaris per al desenvolupament de l'exercici

2 http://es2.php.net/manual/es/function.include.php

Page 11: 1 Estudis d’Informàtica, Multimèdia i Telecomunicaciógraumultimedia.com/wp-content/uploads/Amengual_Gomila_Pere_Prac… · Es valorarà especialment l'aplicació correcta dels

banana

bell grapes lemon melon orange peach

plum seven

• Els fitxers d'imatge s'hauran d'ubicar a la mateixa carpeta que el php

• Es faciliten arxius de text de prova amb noms data40, data41, ..., data43. Els arxius, que són arxius de text, s'hauran d'ubicar a la mateixa carpeta que el fitxer php.

• PHP facilita la funció strlen($cadena)3; que retorna la longitud en caràcters de la cadena de text $cadena

• PHP facilita la funció substr_compare4($main_str, $str , $offset ,$length) que retorna un 0 si a partir de la posició $offset de la cadena $main_str, coincideixen $length caràcters amb la cadena $str. P.e. substr_compare ("caleidoscopio", "idoia", 4, 3 ) retornaria 0 perquè a partir de la quarta posició de caleidoscopio (recordeu que el primer caràcter està a la posició zero) trobem 3 lletres iguals a les tres primeres de "idoia"..

• Podeu comprovar el funcionament del programa que se us demana que escriviu amb la crida: http://prog.uoc.edu/prac1/prac1_exer4.php?filename=data40 o, si voleu, canviant el nom del fitxer de dades

Consells.

• Que un fitxer de dades tingui un contingut molt extens, no assegura que contingui el nom d'alguna figura.

• El programa ha de fer un recorregut per la cadena cercant en cada posició si troba algun dels noms de les imatges. Com que la imatge que té un nom més curt és la campana, és inútil fer cerques quan estem a tres posicions del final de la cadena. Això ho podem aprofitar per a que el nostre programa no doni voltes innecessàries a la composició iterativa.

3 http://es.php.net/manual/es/function.strlen.php 4 http://php.net/manual/es/function.substr-compare.php

Page 12: 1 Estudis d’Informàtica, Multimèdia i Telecomunicaciógraumultimedia.com/wp-content/uploads/Amengual_Gomila_Pere_Prac… · Es valorarà especialment l'aplicació correcta dels

• Els noms de dos imatges es poden solapar, com ara grapeseven o bellemon en que una mateixa lletra forma part dels dos noms.

Avaluació

Es valorarà especialment l'aplicació correcta dels esquemes de cerca, recorregut i/o tractament adequats al problema. També es tindrà present el disseny i l'aprofitament adequat de funcions i accions, tant les preceptives per enunciat com aquelles altres que resultin útils i que l'estudiant vulgui desenvolupar voluntàriament.

Page 13: 1 Estudis d’Informàtica, Multimèdia i Telecomunicaciógraumultimedia.com/wp-content/uploads/Amengual_Gomila_Pere_Prac… · Es valorarà especialment l'aplicació correcta dels

//Aquí heu de posar el vostre codi <?php /************* FUNCTION *************/ function putImg ($nomfigura) { // rep el nom d'una figura i posa en pantalla la imatge que li correspon print "<img src='$nomfigura.png'>"; } function detectFruit ($cadena, $posicio) { // rep la cadena dins la que s'ha de cercar si hi ha el nom d'una fruita en la posició $posicio // retorna 0 si no hi ha cap fruita o el nom de la fruita si n'hi ha una en la posició demanada $fruites=array("banana","bell","grapes","lemon","melon","orange","peach","plum","seven"); $nomFruita = "0"; foreach ($fruites as $value) { $comparacio = substr_compare($cadena,$value,$posicio,strlen($value)); if ($comparacio == 0) { $nomFruita = $value; } } return ($nomFruita); } /************* MAIN *************/ $filename = $_GET["filename"]; include($filename); //Aquí va el vostre codi del programa principal $contador = 0; $maxACercar = strlen($cadena) - 3; while ($contador < $maxACercar) { $trobada=detectFruit ($cadena, $contador); if ($trobada <> "0") { putImg($trobada); } $contador++; } ?>

Page 14: 1 Estudis d’Informàtica, Multimèdia i Telecomunicaciógraumultimedia.com/wp-content/uploads/Amengual_Gomila_Pere_Prac… · Es valorarà especialment l'aplicació correcta dels

Exercici 5: Treball amb seqüències de seqüències a l'entrada en PHP [20 %]

Un addicte al set i mig que es juga al poble anota, cada cop que juga, quines cartes li han sortit. Per a això fa servir un codi que fa correspondre a cada carta un número del 0 al 39 en què les cartes 0-9 corresponen als oros, 10-19 a les copes, 20-29 a les espases i 30-39 als bastos i, dins de cada palo es codifiquen les cartes per ordre numèric. La seqüència que crea és del tipus

{c11 c12 ... c1n # c21 c22 ... c2n # c31 c32 ... c3n # ... # cm1 cm2 ... cmn .} on

• cij : és el codi corresponent a la carta situada en posició j de la partida situada en posició i.

• # és el caràcter ‘#’ que indica la fi de les cartes d’una partida • . és el caràcter '.' que indica la fi de la seqüència

Tasca: Crear un programa que rebi un fitxer amb la seqüència d’una sèrie de partides i les mostri en pantalla, a una partida per línia i acompanyades per la puntuació obtinguda o bé la paraula "Pass"

Indicacions

• El fitxer php rebrà el nom prac1_exer5.php

• La crida al programa serà del tipus

prac1_exer5.php?filename=nom_arxiu_dades

per la qual cosa s'haurà d'emprar la instrucció $filename=$_GET["filename"]; per carregar el nom del fitxer que incorpora la instrucció que assigna valor a la variable $cadena. Un cop carregat aquest arxiu, es pot incorporar la instrucció al programa mitjançant l'ordre include($filename); ambdues instruccions ja formen part de la plantilla i són les primeres del programa principal.

Page 15: 1 Estudis d’Informàtica, Multimèdia i Telecomunicaciógraumultimedia.com/wp-content/uploads/Amengual_Gomila_Pere_Prac… · Es valorarà especialment l'aplicació correcta dels

El fitxer example1.php adjunt carrega un d'aquests fitxers i mostra en pantalla el contingut. La crida ha de ser del tipus example1.php?filename=data53

• Amb els fitxers de l’enunciat, es faciliten 40 fitxers d’imatge en format png corresponents a l'anvers de les cartes espanyoles.

• Per tal de recollir els elements un a un de la seqüència, s'aconsella emprar la combinació de les instruccions explode i posteriorment array_shift.

Per tal d'obtenir de la cadena $string un a un els números que la formen, on s'ha fet servir com separador el caracter $c, podeu emprar consecutivament:

• $var1 = explode ($c, $string);5

• $var2 = array_shift($var1);6

Podeu observar el codi i veure com funciona l'arxiu example2.php que s'adjunta a l'enunciat. La crida és del tipus example2.php?cadena=5,6,7,8,91,2,3,4,5,5,676767,78,8,89 i fa servir com separador una coma. Si modifiqueu la instrucció $var1 = explode(',', $cadena); a $var1 = explode(' ', $cadena); llavors haureu de fer servir com separador l'espai en blanc en lloc de la coma. La instrucció

• $var2 = array_shift($var1); equival al que en llenguatge algorísmic escriuríem var2 := readInteger() considerant que $var1 és el canal d’entrada. Posa a la variable $var2 el valor

5 http://es2.php.net/manual/es/function.explode.php 6 http://es2.php.net/manual/es/function.array-shift.php

Page 16: 1 Estudis d’Informàtica, Multimèdia i Telecomunicaciógraumultimedia.com/wp-content/uploads/Amengual_Gomila_Pere_Prac… · Es valorarà especialment l'aplicació correcta dels

que està en la primera posició de $var1 a l’hora que elimina aquest valor de $var1 de manera que tots els elements de $var1 corren una posició endavant.

Un cop carregada la cadena de dades s'emmagatzemarà la llista de dades a la variable $data. Aquestes instruccions ja formen part de la plantilla.

• Podeu comprovar el funcionament del programa que se us demana que escriviu amb la crida: http://phppract.comlu.com/prac1/prac1_exer5.php?filename=data50 o canviant el nom del fitxer de dades.

• Es faciliten diversos arxius de dades amb els noms data50 a data53. Són fitxers de text i podeu obrir-los per comprovar el contingut: una instrucció php.

• Els fitxers de dades i d’imatge han se posar-se a la mateixa carpeta que el fitxer php

• S'ha de crear la function putCard que, a partir del número de codi mostrarà una carta en pantalla.

• S’ha de crear la function cardValue que rep el número corresponent a la imatge d'una carta (només el número) i retorna el seu valor en el joc. Per exemple si rep 32 (3 de bastos) retornaria 3, i si rebés 18 (cavall de copes) retornaria 0.5.

• S’ha de crear la funció played que rep la seqüència i extreu d’ella les cartes d’una partida, les mostra i escriu la puntuació total de la partida. Aquesta function, retornarà com paràmetre la mateixa seqüència (però sense les dades extretes) i un valor true o false segons quedin més dades a la seqüència o ja s’hagi acabat.

• El programa principal està completament escrit i no s’ha de modificar.

Page 17: 1 Estudis d’Informàtica, Multimèdia i Telecomunicaciógraumultimedia.com/wp-content/uploads/Amengual_Gomila_Pere_Prac… · Es valorarà especialment l'aplicació correcta dels

//Aquí heu de posar el vostre codi <?php /************* FUNCTION *************/ //Aquí va el codi de les funcions function putCard ($numCodi) { // rep número de codi (de 0 a 39) i mostra la carta en pantalla (e0 a e39) print "<img src='e$numCodi.png'>"; } function cardValue ($numImatgeCarta) { // rep el número corresponent a la imatge de la carta (de 0 a 39) i retorna el seu valor en el set i mig (1 a 7, o 0,5) $numImatgeCarta = $numImatgeCarta % 10 + 1; if (($numImatgeCarta >= 1) and ($numImatgeCarta <= 7)) { $valor=$numImatgeCarta; } if (($numImatgeCarta >= 8) and ($numImatgeCarta <= 10)) { $valor=0.5; } return $valor; } function played (&$data) { // rep la seqüència -per referència- i la retorna sense les cartes extretes, també retorna un valor booleà true si queden més cartes per jugar // mostra les cartes i escriu la puntuació total en pantalla $quedenMes = true; $cartaActual = array_shift($data); $valorPartida = 0; while (is_numeric($cartaActual)) { putCard ($cartaActual); $valorPartida = $valorPartida + cardValue($cartaActual); $cartaActual = array_shift($data); } if (!is_numeric($cartaActual)) { if ($valorPartida >7.5) { echo " Pass" . "<br>"; } else { echo " Play Value = " . $valorPartida . "<br>"; } } if ($cartaActual == ".") {

Page 18: 1 Estudis d’Informàtica, Multimèdia i Telecomunicaciógraumultimedia.com/wp-content/uploads/Amengual_Gomila_Pere_Prac… · Es valorarà especialment l'aplicació correcta dels

$quedenMes = false; } return $quedenMes; } /************* MAIN *************/ $filename = $_GET["filename"]; include($filename); $data = explode(" ", $cadena); $nextGame = true; //begin a new Play while ($nextGame) $nextGame = played($data); ?>