Diferencia entre revisiones de «Usuario:ManuelRomero/NewPHP/B2T1/ejercicios»
De WikiEducator
(→Ejercicios tipo hola mundo) |
|||
Línea 52: | Línea 52: | ||
<hr /> | <hr /> | ||
{{MRM_Actividad|Title=Ejercicio 3 Fechas| | {{MRM_Actividad|Title=Ejercicio 3 Fechas| | ||
− | Haz un programa que obtenga de forma aleatoria dia (1-31)mes(1-12) y año(1-3000) y nos diga si la fecha es correcta o no y porqué}} | + | Haz un programa que obtenga de forma aleatoria dia (1-31)mes(1-12) y año(1-3000) y nos diga si la fecha es correcta o no y porqué |
+ | <plegable|hide|Posible solución| | ||
+ | <source lang=php> | ||
+ | <?php | ||
+ | |||
+ | /** | ||
+ | * | ||
+ | * @param entero $year año a analizar si es o no bisesto | ||
+ | * @return bool que indica si es bisesto | ||
+ | */ | ||
+ | function bisiesto($year) { | ||
+ | if ($year % 400 == 0) | ||
+ | $bisiesto = true; | ||
+ | elseif ($year % 4 == 0) { | ||
+ | if ($year % 100 != 0) | ||
+ | $bisiesto = true; | ||
+ | else | ||
+ | $bisiesto = false; | ||
+ | } else | ||
+ | $bisiesto = false; | ||
+ | |||
+ | return $bisiesto; | ||
+ | |||
+ | //return !($year%400)OR (!($year%4)AND ($year%100)); | ||
+ | } | ||
+ | |||
+ | $dia = rand(1, 32); | ||
+ | $mes = rand(1, 13); | ||
+ | $year = rand(1, 3000); | ||
+ | |||
+ | $dia = 32; | ||
+ | $mes = 13; | ||
+ | $year = 100; | ||
+ | |||
+ | $fecha = "$dia-$mes-$year"; | ||
+ | |||
+ | //Variable para establecer si la fecha es o no correcta | ||
+ | $msj = null; | ||
+ | |||
+ | if ($mes >= 13 || $mes < 1) | ||
+ | $msj = "Mes $mes incorrecto"; | ||
+ | else { | ||
+ | if ($mes == 1 || $mes == 3 || $mes == 5 || $mes == 7 || $mes == 8 || $mes == 10 || $mes == 12) { | ||
+ | if ($dia > 31) | ||
+ | $msj = "$dia no correcto en mes de 31 días"; | ||
+ | }else { | ||
+ | if ($mes == 2) { | ||
+ | if (bisiesto($year)) { | ||
+ | if ($dia > 29) | ||
+ | $msj = "$dia no correcto en año bisiesto"; | ||
+ | }else { | ||
+ | if ($dia > 28) | ||
+ | $msj = "$dia no correcto en año no bisiesto"; | ||
+ | } | ||
+ | }else | ||
+ | if ($dia > 30) | ||
+ | $msj = "$dia no correcto en mes de 30 días"; | ||
+ | } | ||
+ | } | ||
+ | ?> | ||
+ | |||
+ | |||
+ | <!doctype html> | ||
+ | <html lang="en"> | ||
+ | <head> | ||
+ | <meta charset="UTF-8"> | ||
+ | <title>Document</title> | ||
+ | </head> | ||
+ | <body> | ||
+ | <h2>Fecha <?= "$fecha <span style='color:red'>$msj</span>" ?> </h2> | ||
+ | |||
+ | </body> | ||
+ | </html> | ||
+ | </source> | ||
+ | |||
+ | |||
+ | }} | ||
<!-- | <!-- | ||
<font size=4 color=red>[[Usuario:ManuelRomero/NewPHP/Ejercicios/Ejercicio3 | Solución]]</font> | <font size=4 color=red>[[Usuario:ManuelRomero/NewPHP/Ejercicios/Ejercicio3 | Solución]]</font> |
Revisión de 19:55 1 oct 2019
Ejercicios tipo hola mundo
{{}}
Esto es una cadena multilínea y termina aquí Esto es una cadena multilínea y termina aquí
|
Tip: Los siguientes programas son algorítmicos básicos
Tip: Revisa la teoría, y confirma en este ejercicio que tienes claro la posibilidad de entremezclar código php y html y para el intérprete de php es todo como si fuera el mismo script
Ejercicios de sintaxis
|