JavaScript - Ayuda con ejercicio de cartas en JS

 
Vista:

Ayuda con ejercicio de cartas en JS

Publicado por Fernando (2 intervenciones) el 07/08/2018 01:09:23
necesito ayuda con el siguiente ejercicio:

Desarrolla una función que puntúe una mano de cartas, que tenga como parámetro un array de cartas, cada una representada por un diccionario con palo y valor. Al puntuar, las cartas suman su valor excepto si es un as que suma 20.

Declare las cartas el as como 1,cree el array con todas las cartas en el y el codigo, pero el codigo no me da el resultado deseado y no se que estoy haciendo mal






1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
carta1 = {PALO:"c",VALOR:1}
carta2 = {PALO:"d",VALOR:7}
carta3 = {PALO:"p",VALOR:5}
 
cartas = [carta1,carta2,carta3];
 
function puntua(mano){
  var mano = 0
for (var i = 0; i < cartas.length; i ++) {
    if (cartas[i].valor === 1) {
        mano = mano + cartas[i].valor + 20;
    } else {
    if (cartas[i].valor != 1) {
        mano = mano + cartas[i].valor;
}
   console.log(puntua(mano))
}
}
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro
Val: 1.448
Plata
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

Ayuda con ejercicio de cartas en JS

Publicado por Alejandro (540 intervenciones) el 07/08/2018 16:06:35
  • Alejandro se encuentra ahora conectado en el
  • chat de PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<script>
	cartas=[];
	cartas[1]={'palo':'c','valor':1};
	cartas[2]={'palo':'d','valor':7};
	cartas[3]={'palo':'p','valor':5};
	function puntua(mano){
		puntaje=0;
		mano.forEach(function(carta){
			puntaje += (carta.valor!=1)?carta.valor:20;
		});
		return puntaje;
	}
	document.writeln("El puntaje es: "+puntua(cartas));
</script>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar