Foros aprenderaprogramar.com
Aprender a programar => C, C++, C#, Java, Visual Basic, HTML, PHP, CSS, Javascript, Ajax, Joomla, MySql y más => Mensaje iniciado por: Salvadoruve2 en 05 de Junio 2016, 18:25
-
Hola de nuevo
Estoy resolviendo el prmier apartado del ejercicio CU01131E del curso básico de programación con JavaScript de aprenderaprogramar.com:
1) Crea una función que pida una palabra al usuario y usando un bucle for y el método charAt, muestre cada una de las letras que componen la entrada. Por ejemplo si se introduce “ave” debe mostrar:
Letra 1: a
Letra 2: v
Letra 3: e
Con lo aprendido recientemente he creado una función con un bucle for pero no me funciona.
<!DOCTYPE html>
<html>
<head>
<title>Bucles</title>
<meta charset="utf-8">
<script type="text/javascript">
function solicitarNombre() {
var palabra= prompt('Por favor introduzca una palabra: ');
var msg = 'Su palabra tiene las letras: \n\n';
for (var i=1; i=<palabra.length; i++){
msg = msg + 'Letra '+ i + ': '+ palabra.charAt(i-1);
alert(msg);
}
</script>
</head>
<body>
<img onclick="solicitarNombre()" src="https://nosinmimono.files.wordpress.com/2012/06/estudiando.jpg" alt="Notepad++" title="Notepad++, un útil editor de texto">
</body>
</html>
he comprobado un ejercico resuelto por pedro,, y he visto que has utilizado un elemento If else para solucionarlo. Pero me gustaría saber si es estrictamente necesario o se puede resolver de alguna manera con mi propuesta. gracias
Propuesta de pedro,,
function deletrearPalabra(){
var palabra;
var msg = 'Letra ';
palabra = prompt('Introduzca el primer nombre: ');
for(var i=1; i<=palabra.length; i++){
if(i==palabra.length){
msg = msg + i + ': ' + palabra.charAt(i-1);
}else{
msg = msg + i + ': ' + palabra.charAt(i-1) + '\nLetra ';
}
}
alert(msg);
-
Hola Salvador.
El que yo lo resolviera con el if, es para que junto con la última letra no se almacenase un salto de línea. Así que el if no es necesario para resolver el ejercicio.
En tu ejercicio hay algunos errores.
Te falta una "}" para cerrar la función.
En el for, en esta parte "i=<palabra.length", tendría que ser menor o igual, "i<=palabra.length"
El alert, tienes que sacarlo del bucle, sino, se ejecutará tantas veces como letras tenga la cadena de texto introducida.
Y por último en línea en la que añades las letras a la variable msg, tendrías que añadir un salto de línea ,'\n'.
Saludos. ;D
-
Parece increible pero se ha solucionado solo con esos cambios.
Gracias, y espero que no me cojais manía por postear tanto en domingo.. :o