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: KOFFERO en 20 de Enero 2020, 05:32

Título: PHP ejercicios resueltos Condicionales if else if condicional ternario CU00817B
Publicado por: KOFFERO en 20 de Enero 2020, 05:32
Solución propuesta para el ejercicio CU00817B del tutorial pdf de programación web con PHP de aprenderaprogramar

Citar
EJERCICIO 1

Ejecuta este código y responde:

a) ¿Qué resultado se obtiene por pantalla?

b) Modifica el código sustituyendo el operador ternario por if else para que el resultado obtenido sea el mismo.

Código
Código: [Seleccionar]
<?php$haceFrio = 15;$respuesta ="";$temperatura = ($haceFrio<20) ? $respuesta = "Hace frio" : $respuesta = "No hace frio";echo $respuesta;?>


Código cambiado con la condicional IF:

Código: [Seleccionar]
<?php $haceFrio = 15;if ($haceFrio < 20) {	echo "Hace Frio";} else {	echo "No hace Frio";} ?>

Citar
EJERCICIO 2

Define las variables $tipo, $grosor, $diametro y $marca. Establece que el tipo sea “Rueda de camión”, el grosor 0.33, el diámetro 1.25 y la marca “Kimashuki”. Crea el código PHP donde a través de condicionales if realices la siguiente comprobación: si el diámetro es superior a 1.4 debe mostrarse por pantalla el mensaje “La rueda es para un vehículo grande”. Si es menor o igual a 1.4 debe mostrarse por pantalla el mensaje “La rueda es para un vehículo pequeño”. En otro caso, debe mostrarse “No existe un tamaño de rueda válido”.

Código
Código: [Seleccionar]
<?php $tipo = "Rueda de camión";$grosor = 0.33;$diametro = 1.25;$marca = "Kimasshuki";if ($diametro > 1.4) {	echo "La rueda es para un vehiculo grande";} else if ($diametro < 1.4) {	echo "La rueda es para vehiculo pequeño";} else {	echo "No existe un tamaño de rueda valido";} ?>
Título: Re:PHP ejercicios resueltos Condicionales if else if condicional ternario CU00817B
Publicado por: Ogramar en 14 de Agosto 2020, 20:01
Buenas, para quien revise este ejercicio hago algún comentario. En el ejercicio 1, el código planteado no hace exactamente lo mismo que el código original, en el sentido de que en el código original cuando la variable $haceFrio toma un valor menor que 20, se asigna a la variable $respuesta el contenido "Hace frio", y en caso contrario "No hace frío".

En el código planteado no se usa la variable $respuesta, con lo cual el código no es exactamente equivalente. Sin embargo el resultado que se obtiene sí es el mismo al menos en este caso; si el código fuera más extenso podría afectar en otros lugares. Para hacer el código equivalente debería haberse incluido esa variable.

En el ejercicio 2 hay un pequeño fallo. El enunciado dice <<Si el diámetro es menor o igual a 1.4 debe mostrarse por pantalla el mensaje “La rueda es para un vehículo pequeño”.>>

Pero el código escrito incluye if ($diametro < 1.4) cuando debería ser if ($diametro <= 1.4)

Esto es a lo que se llama "cierre de intervalos" y es importante tener cuidado en nuestros programas para hacer un correcto cierre de intervalos, ya que no hacerlo bien puede suponer malfuncionamientos en nuestros programas, como ocurriría en este caso si introducimos un diámetro de 1.4

Puede verse una respuesta correcta para este ejercicio en https://aprenderaprogramar.com/foros/index.php?topic=6570.0

Salu2