Autor Tema: CU01113E Tipos de variables javascript: numéricas Number. Resultados Nan e infin  (Leído 3006 veces)

Pandemia

  • Avanzado
  • ****
  • APR2.COM
  • Mensajes: 255
    • Ver Perfil
Buenas noches aquí os dejo mi propuesta al ejercicio.

Citar
EJERCICIO

Crea un código JavaScript para evitar el problema del redondeo que hemos tenido en el código anterior. Para ello define los decimales como enteros y realiza la operación para mostrar el decimal sólo en el momento de mostrar el resultado por pantalla.

Código: [Seleccionar]
<html>
<head>
<title>Ejercicio CU01113E del Curso JavaScript de aprenderaprogramar.com</title> <meta charset="utf-8">

<script type="text/javascript">

function mostrarMensaje1(){

var bacterias = 3.55; var texto = 'bacterias en la probeta'; var numeroInfinito = Infinity;
alert('La variable bacterias vale: ' + bacterias);
bacterias = 3.55E5; alert('La variable bacterias vale (multiplicamos por 100000): ' + bacterias);
bacterias = 3.55E-5; alert('La variable bacterias ahora es un número muy pequeño: ' + bacterias);
alert('La variable bacterias ahora es (operación sin sentido): ' + bacterias*texto);
bacterias = 3.55e100000000000000000; alert('La variable bacterias ahora es demasiado grande: ' + bacterias);
bacterias = 3.55E-100000000000000000; alert('La variable bacterias es ahora demasiado pequeña: ' + bacterias);
alert('Un numero positivo dividido entre cero (indeterminación matemática) devuelve: ' + (4/0));
alert('Un numero negativo dividido entre cero (indeterminación matemática) devuelve: ' + (-4/0));
alert('Cero dividido entre cero devuelve: ' + (0/0));
alert('La variable numeroInfinito vale: ' + numeroInfinito);
var diezCentimos = 10;
var veinteCenimos = 20;
var treintaCentimos = 30;
alert('Esperamos 0.1 y lo obtenemos: ' + (veinteCenimos-diezCentimos/100));
alert('Esperamos 0.1 y no lo obtenemos: ' + (treintaCentimos-veinteCenimos/100));
}
</script>

</head>
<body>
<div>
<p>Aquí un párrafo de texto situado antes de la imagen, dentro de un div contenedor</p>
<img onclick="mostrarMensaje1()" src="http://i.imgur.com/afC0L.jpg" alt="Notepad++" title="Notepad++, un útil editor de texto">
<p style="background-color:yellow;" onclick="mostrarMensaje2()">Aquí otro párrafo de texto. JavaScript es un lenguaje utilizado para dotar de efectos dinámicos a las páginas web.
</p>
</div>
</body>
</html>

Saludos y gracias de antemano.......

bermartinv

  • Avanzado
  • ****
  • APR2.COM
  • Mensajes: 298
    • Ver Perfil
Hola Pandemia,
vuelve a revisar los alert nuevos porque con los resultados obtenidos no está claro. Prueba usar parentesis.
Saludos

Pandemia

  • Avanzado
  • ****
  • APR2.COM
  • Mensajes: 255
    • Ver Perfil
Hola buenos días berbartinv, tienes razón como lo he puesto no se ve claro habría que hacer el calculo de cabeza, hago los cambios oportunos y pongo el html otra vez, gracias por contestar tan rápido me sirve de mucha ayuda.

saludos.... :)

Código: [Seleccionar]
<html>
<head>
<title>Ejercicio CU01113E del Curso JavaScript de aprenderaprogramar.com</title> <meta charset="utf-8">

<script type="text/javascript">

function mostrarMensaje1(){

var bacterias = 3.55; var texto = 'bacterias en la probeta'; var numeroInfinito = Infinity;
alert('La variable bacterias vale: ' + bacterias);
bacterias = 3.55E5; alert('La variable bacterias vale (multiplicamos por 100000): ' + bacterias);
bacterias = 3.55E-5; alert('La variable bacterias ahora es un número muy pequeño: ' + bacterias);
alert('La variable bacterias ahora es (operación sin sentido): ' + bacterias*texto);
bacterias = 3.55e100000000000000000; alert('La variable bacterias ahora es demasiado grande: ' + bacterias);
bacterias = 3.55E-100000000000000000; alert('La variable bacterias es ahora demasiado pequeña: ' + bacterias);
alert('Un numero positivo dividido entre cero (indeterminación matemática) devuelve: ' + (4/0));
alert('Un numero negativo dividido entre cero (indeterminación matemática) devuelve: ' + (-4/0));
alert('Cero dividido entre cero devuelve: ' + (0/0));
alert('La variable numeroInfinito vale: ' + numeroInfinito);
var diezCentimos = 10;
var veinteCenimos = 20;
var treintaCentimos = 30;
alert('Esperamos 0.1 y lo obtenemos: ' + (veinteCenimos-diezCentimos)/100);
alert('Esperamos 0.1 (ahora sí lo obtenemos) y no lo obtenemos: ' + (treintaCentimos-veinteCenimos)/100);
}
</script>

</head>
<body>
<div>
<p>Aquí un párrafo de texto situado antes de la imagen, dentro de un div contenedor</p>
<img onclick="mostrarMensaje1()" src="http://i.imgur.com/afC0L.jpg" alt="Notepad++" title="Notepad++, un útil editor de texto">
<p style="background-color:yellow;" onclick="mostrarMensaje2()">Aquí otro párrafo de texto. JavaScript es un lenguaje utilizado para dotar de efectos dinámicos a las páginas web.
</p>
</div>
</body>
</html>
     


bermartinv

  • Avanzado
  • ****
  • APR2.COM
  • Mensajes: 298
    • Ver Perfil
Lo que te quería decir Pandemia, es que el resultado que se obtiene es distinto si se ponen paréntesis o no. Por eso muchas veces aunque hayas muchos paréntesis pero interesa separar las operaciones entre los paréntesis.
Haz las operaciones con paréntesis y sin ellos.

Pandemia

  • Avanzado
  • ****
  • APR2.COM
  • Mensajes: 255
    • Ver Perfil
Vaaaaaaaaaaaalllleee ok, ya lo he entendido, antes no lo había pensado asì, pero ya me ha quedado claro, es que ha veces soy un poco duro de mollera, gracias por la aclaración.

saludos

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".