Autor Tema: JavaScript ejemplo función simple paso parámetros y return Ejercicio CU01122E#  (Leído 5152 veces)

pedro,,

  • Moderador Global
  • Experto
  • *******
  • APR2.COM
  • Mensajes: 1292
    • Ver Perfil
Sigo con JavaScript... Respuesta al ejercicio CU01122E del tutorial:

Citar
EJERCICIOS
1. Crea un script donde declares una función obtenerImporteConImpuestos que reciba dos parámetros: el importe sin impuestos (numérico) y el tipo de producto (numérico entero). La función debe mostrar por pantalla el importe sin impuestos más el 21% si el tipo de producto es 1, ó el importe sin impuestos más el 10% si el tipo de producto es 2, ó el importe sin impuestos más el 5% si el tipo de producto es 3.
Ejemplo: obtenerImporteConImpuestos(100, 1) debe mostrar: Para un importe sin impuestos de 100 y tipo de producto 1 el resultado de importe con impuestos es 121. obtenerImporteConImpuestos(100, 2) debe mostrar: Para un importe sin impuestos de 100 y tipo de producto 2 el resultado de importe con impuestos es 110.
2. Crea un script donde declares una función obtenerImporteConImpuestos2 que reciba un parámetro: el importe sin impuestos (numérico). La función debe devolver un array con valor undefined para el índice 0, el importe sin impuestos más el 21% para el índice 1, el importe sin impuestos más el 10% para el índice 2, ó el importe sin impuestos más el 5% para el índice 3. Invoca la función haciendo que se muestre el contenido del array por pantalla.
obtenerImporteConImpuestos(100) debe devolver: resultado[0] = undefined, resultado[1] = 121, resultado[2] = 110, resultado[3] = 105. Por pantalla se debe mostrar: Para precio sin impuestos 100 si el producto es tipo 1 el importe es 121, si el producto es tipo 2 el importe es 110 y si el producto es tipo 3 el importe es 105.


Código: [Seleccionar]
<html>
<head>
<title>Curso JavaScript aprenderaprogramar.com</title> <meta charset="utf-8">
<script type="text/javascript">
function pideDatos(){
var importeSinImpuestos, tipoProducto, importeConImpuestos;
var tipoProducto2 = new Array();
alert('Empieza la primera parte del ejercicio CU01122E.')
importeSinImpuestos = prompt('Introduzca el importe sin impuestos: ');
tipoProducto = prompt('Introduzca el tipo de producto(1 o 2): ');
importeSinImpuestos = Number(importeSinImpuestos);
tipoProducto = Number(tipoProducto);
if (tipoProducto==1 || tipoProducto==2){
importeConImpuestos = obtenerImporteConImpuestos(importeSinImpuestos, tipoProducto);
alert('El importe con impuesto es: ' + importeConImpuestos);
}else{
alert('El tipo de producto es erroneo.');
}
alert('Empieza la segunda parte del ejercicio CU01122E.')
tipoProducto2 = obtenerImporteConImpuestos2(importeSinImpuestos)
alert('Para el tipo de producto 0 el valor es ' + tipoProducto2[0]);
alert('Para precio sin impuestos ' + importeSinImpuestos + ' de tipo de producto 1, el importe es ' + tipoProducto2[1]);
alert('Para precio sin impuestos ' + importeSinImpuestos + ' de tipo de producto 2, el importe es ' + tipoProducto2[2]);
alert('Para precio sin impuestos ' + importeSinImpuestos + ' de tipo de producto 3, el importe es ' + tipoProducto2[3]);
}
function obtenerImporteConImpuestos(importeSinImpuestos, tipoProducto) {
var importeConImpuestos;
switch(tipoProducto){
case 1:
impuesto = 1.21;
break;
case 2:
impuesto = 1.05;
break;
}
return importeConImpuestos = (importeSinImpuestos*impuesto);
}
function obtenerImporteConImpuestos2(importeSinImpuestos){
var resultado=[];
resultado =[undefined, (importeSinImpuestos*1.21), (importeSinImpuestos*1.10), (importeSinImpuestos*1.05)]
return resultado;
}
</script>
</head>
<body>
<div>
<img onclick="pideDatos()" src="http://i.imgur.com/0rendoU.png" alt="Ejercicio CU01122E" title="Ejercicio CU01122E">
</div>
</body>
</html>

Saludos.
« Última modificación: 07 de Febrero 2016, 11:58 por Ogramar »

César Krall

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2078
  • No vales por lo que dices, sino por lo que haces
    • Ver Perfil
    • aprenderaprogramar.com
Hola Pedro!

Parece que tienes una pequeña errata en los porcentajes, tanto para la primera parte como para la segunda tendríamos para producto 1 el 21%, para producto 2 el 10 % y para producto 3 el 5%, sin embargo en la primera parte en el switch no tienes 1.21, 1.10 y 1.05 sino que solo tienes 1.21 y 1.05

Saludos!
Responsable de departamento de producción aprenderaprogramar.com

pedro,,

  • Moderador Global
  • Experto
  • *******
  • APR2.COM
  • Mensajes: 1292
    • Ver Perfil
No se por qué, pero di por hecho que en la primera parte del ejercicio solo se pedían dos tipos de producto.   :-[

Aquí dejo el código corregido:

Código: [Seleccionar]
<html>
<head>
<title>Curso JavaScript aprenderaprogramar.com</title> <meta charset="utf-8">
<script type="text/javascript">
function pideDatos(){
var importeSinImpuestos, tipoProducto, importeConImpuestos;
var tipoProducto2 = new Array();
alert('Empieza la primera parte del ejercicio CU01122E.')
importeSinImpuestos = prompt('Introduzca el importe sin impuestos: ');
tipoProducto = prompt('Introduzca el tipo de producto(1, 2 o 3): ');
importeSinImpuestos = Number(importeSinImpuestos);
tipoProducto = Number(tipoProducto);
if (tipoProducto==1 || tipoProducto==2 || tipoProducto==3){
importeConImpuestos = obtenerImporteConImpuestos(importeSinImpuestos, tipoProducto);
alert('El importe con impuesto es: ' + importeConImpuestos);
}else{
alert('El tipo de producto es erroneo. \nNo se puede calcular el importe con impuesto.');
}
alert('Empieza la segunda parte del ejercicio CU01122E.')
tipoProducto2 = obtenerImporteConImpuestos2(importeSinImpuestos)
alert('Para el tipo de producto 0 el valor es ' + tipoProducto2[0]);
alert('Para precio sin impuestos ' + importeSinImpuestos + ' de tipo de producto 1(21%), el importe es ' + tipoProducto2[1]);
alert('Para precio sin impuestos ' + importeSinImpuestos + ' de tipo de producto 2(10%), el importe es ' + tipoProducto2[2]);
alert('Para precio sin impuestos ' + importeSinImpuestos + ' de tipo de producto 3(5%), el importe es ' + tipoProducto2[3]);
}
function obtenerImporteConImpuestos(importeSinImpuestos, tipoProducto) {
var importeConImpuestos;
switch(tipoProducto){
case 1:
impuesto = 1.21;
break;
case 2:
impuesto = 1.10;
break;
case 3:
impuesto = 1.05;
break;
}
return importeConImpuestos = (importeSinImpuestos*impuesto);
}
function obtenerImporteConImpuestos2(importeSinImpuestos){
var resultado=[];
resultado =[undefined, (importeSinImpuestos*1.21), (importeSinImpuestos*1.10), (importeSinImpuestos*1.05)]
return resultado;
}
</script>
</head>
<body>
<div>
<img onclick="pideDatos()" src="pulsaAqui.png" alt="Ejercicio CU01122E" title="Ejercicio CU01122E">
</div>
</body>
</html>

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".