Autor Tema: Funciones javascript parámetros argumentos y tipos valor y return CU01122E  (Leído 2500 veces)

Pandemia

  • Avanzado
  • ****
  • APR2.COM
  • Mensajes: 255
    • Ver Perfil
Buenas amigos aquí dejo una posible solución al ejercicio CU01122E del curso básico de programación web con JavaScript.

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]
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Curso JavaScript de aprenderaprogramar.com</title>

<script type="text/javascript">

function obtenerImporteConImpuestos(importeSinImpuestos,tipo){
var importe;
importe = ('El importe sin impuestos es: ' + importeSinImpuestos + '\n\n');

if(tipo==1){
alert(importe + 'El importe con impuestos es: '+ impuestosTipo1(importeSinImpuestos));
} else if (tipo==2) {
alert (importe + 'El importe con impuestos es: '+ impuestosTipo2(importeSinImpuestos));
}else if(tipo==3){
alert(importe + 'El importe con impuestos es: '+ impuestosTipo3(importeSinImpuestos));
}


function impuestosTipo1(importeSinImpuestos){
var importeConIpuestos;
importeConIpuestos = importeSinImpuestos * 1.21;
return importeConIpuestos;
}

function impuestosTipo2(importeSinImpuestos){
var importeConIpuestos;
importeConIpuestos = importeSinImpuestos * 110/100;
return importeConIpuestos;
}

function impuestosTipo3(importeSinImpuestos){
var importeConIpuestos;
importeConIpuestos = importeSinImpuestos * 1.05;
return importeConIpuestos;
}

}

function obtenerImporteConImpuestos2(importeSinImpuestos){

var resultado = [];
resultado = [undefined, (importeSinImpuestos * 1.21), (importeSinImpuestos * 110/100), (importeSinImpuestos * 1.05)];

alert('Para precio sin impuestos ' + importeSinImpuestos + ' de tipo de producto 1, el importe es ' + resultado[1]);
alert('Para precio sin impuestos ' + importeSinImpuestos + ' de tipo de producto 2, el importe es ' + resultado[2]);
alert('Para precio sin impuestos ' + importeSinImpuestos + ' de tipo de producto 3, el importe es ' + resultado[3]);

}



</script>

<style type="text/css">

<style type="text/css">

.boton_1{
text-decoration: none;
padding: 3px;
padding-left: 10px;
padding-right: 10px;
font-family: helvetica;
font-weight: 300;
font-size: 25px;
font-style: italic;
color: #006505;
background-color: #82b085;
border-radius: 15px;
border: 3px double #006505;
}
.boton_1:hover{
opacity: 0.6;
text-decoration: none;
}

</style>

</head>
<body>

<div> <a onclick="obtenerImporteConImpuestos(100,1)" class="boton_1"> Click para TIPO IVA 21% <a> </div>
<div> <a onclick="obtenerImporteConImpuestos(100,2)" class="boton_1"> Click para TIPO IVA 10% <a> <div>
<div> <a onclick="obtenerImporteConImpuestos(100,3)" class="boton_1"> Click para TIPO IVA 5% <a> </div>
<div><a onclick="obtenerImporteConImpuestos2(100)" class="boton_1"> Click devuelve ARRAY <a></div>

</body>
</html>

Saludos y gracias de antemano..... :D
« Última modificación: 16 de Enero 2017, 19:28 por Ogramar »

pedro,,

  • Moderador Global
  • Experto
  • *******
  • APR2.COM
  • Mensajes: 1292
    • Ver Perfil
Re:CU01122E Funciones javascript parámetros argumentos y tipos valor y return
« Respuesta #1 en: 26 de Diciembre 2016, 20:46 »
Hola Pandemia.

Tu ejercicio hace lo que pedía el enunciado.

En el ejercicio uno, podrías ahorrar código, puesto que no es necesario crear tantas funciones, creas tres funciones más dentro de la función obtenerImporteConImpuestos(), cuando con solo añadir la operación a la línea del alert te valdría. También, ya que escribiste esas tres funciones, podrías haber hecho solo una que recibiese el tipo y te ahorrarías dos funciones, ya que todas hacen la misma operación, pero con distinto tipo.

Algo así:

Código: [Seleccionar]
function impuestosSegunTipo(importeSinImpuestos, tipo){
                var importeConIpuestos;
                importeConIpuestos = importeSinImpuestos * tipo;
                return importeConIpuestos;
            }

Saludos. ;D

Pandemia

  • Avanzado
  • ****
  • APR2.COM
  • Mensajes: 255
    • Ver Perfil
Re:CU01122E Funciones javascript parámetros argumentos y tipos valor y return
« Respuesta #2 en: 27 de Diciembre 2016, 20:35 »
Buenas Pedro tienes razón visto así el mio es muy extenso lo podría haber hecho con menos líneas de código, de todas maneras ya me lo parecía a mi que se podría hacer con menos código pero sobre papel lo construí así.

Gracias por la corrección.

Saludos.... :)
« Última modificación: 16 de Enero 2017, 19:27 por Ogramar »

 

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