Solucionado (ver solución)
Solucionado
(ver solución)
4
respuestas

Ejercicio mundial y duda

Buenas! queria hacer que el programa tambien diga en que año no hay mundial pero no lo estoy consiguiendo me repite igualmente que en ese año si hubo. Creo q estoy poniendo al reves las cosas. Tambien probe poniendo en el while (anhoMundial <= anhoActual && anhoMundial != 1942 && anhoMundial != 1946 ) pero de esta manera solo me imprime hasta el año 1938. Comparto el codigo haber si me pueden ayudar :


<meta charset="UTF-8">

<h1>Juego: Año Mundial</h1>


<script>
    function saltarLinea() {
        document.write("<br>");
        document.write("<br>");
        document.write("<br>");
    }

    function imprimir(frase) {
        document.write(frase);
        saltarLinea();
    }

    var anhoMundial = 1930

    var anhoActual = parseInt(prompt("Ingrese año actual:"));

    while (anhoMundial <= anhoActual) {

      imprimir ("Hubo Mundial en el año: " + anhoMundial);
      anhoMundial += 4

      if (anhoMundial == 1942 || anhoMundial == 1946 ) {

        imprimir ("No hubo mundial en el año " + anhoMundial + " debido a un conflicto europeo");        

      }

    }


</script>

Asi es como lo hice pero me imprime :

No hubo mundial en el año 1942 debido a un conflicto europeo

Hubo Mundial en el año: 1942

No hubo mundial en el año 1946 debido a un conflicto europeo

Hubo Mundial en el año: 1946

No me puedo dar cuenta q hago mal, creo q debe ser el orden de las cosas.

Gracias!!!!!

4 respuestas
solución!

Hola Christian!

Está muy bien pensado, solo que el siguiente código tendría que ir en un else (después del if)

imprimir ("Hubo Mundial en el año: " + anhoMundial);

Preguntás:

Si añoactual es igual a 1942 o es igual a 1946

--> imprimí que no hubo mundial por un conflicto europeo.

De lo contrario (else) imprimi que hubo mundial.

      if (anhoMundial == 1942 || anhoMundial == 1946 ) {
        imprimir ("No hubo mundial en el año " + anhoMundial + " debido a un conflicto europeo");        
      } else {
        imprimir ("Hubo Mundial en el año: " + anhoMundial);
     }

De esta manera solo se ejecuta una línea o la otra. Debajo te dejo el código completo con la corrección:

<meta charset="UTF-8">

<h1>Juego: Año Mundial</h1>


<script>
    function saltarLinea() {
        document.write("<br>");
        document.write("<br>");
        document.write("<br>");
    }

    function imprimir(frase) {
        document.write(frase);
        saltarLinea();
    }

    var anhoMundial = 1930;

    var anhoActual = parseInt(prompt("Ingrese año actual:"));

    while (anhoMundial <= anhoActual) {
      if (anhoMundial == 1942 || anhoMundial == 1946 ) {
        imprimir ("No hubo mundial en el año " + anhoMundial + " debido a un conflicto europeo");        
      } else {
        imprimir ("Hubo Mundial en el año: " + anhoMundial);
      }
      anhoMundial += 4;
    }
</script>

jajajaja loco te quiero de tutor! sos una luz . Te re agradezco me quedo clarisimo, me pone contento q pegue en el palo estuve cerca. gracias x la buena onda !!!

jajajaj nah! no soy una luz. Es haberle errado al código tantas veces que uno va agarrando experiencia.

Abrazo grande y a seguir codeando! =)

Muchas gracias por tus aportaciones amigo