Diferencia entre revisiones de «Plantilla:ManuelRomero/PHP/funciones/practica»

De WikiEducator
Saltar a: navegación, buscar
(Pautas para resolver el ejercicio:)
 
Línea 47: Línea 47:
  
  
 +
function contarTareasCompletadas(string $t1, string $t2, string $t3): int
 +
{
 +
 
 +
}
 +
 +
function crearTareas(&$tarea_1, &$tarea_2, &$tarea_3)
 +
{
 +
 +
}
 +
 +
function asigarEstado(): string
 +
{
 +
}
 +
 +
function asigarEstilo($estado)
 +
{
 +
}
 +
 +
 +
// Variables simples para las tareas
 +
 +
//Declaramos 3 tareas
 +
crearTareas($tarea_1, $tarea_2, $tarea_3);
 +
 +
//Establecemso el estado de las tareas (de cada una)
 +
$tarea_1_estado = asigarEstado();
 +
$tarea_2_estado = asigarEstado();
 +
$tarea_3_estado = asigarEstado();
 +
 +
//Contamos las tareas
 +
$completadas = contarTareasCompletadas($tarea_1_estado, $tarea_2_estado, $tarea_3_estado);
 +
$pendientes = $tareas_total - $completadas;
 +
 +
//Asignamos estilo a las tareas
 +
$tarea_1_estilo = asigarEstilo($tarea_1_estado);
 +
$tarea_2_estilo = asigarEstilo($tarea_2_estado);
 +
$tarea_3_estilo = asigarEstilo($tarea_3_estado);
 +
 +
 +
?>
 +
 +
<!DOCTYPE html>
 +
<html lang="es">
 +
<head>
 +
    <meta charset="UTF-8">
 +
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
 +
    <title>Gestor de Tareas - Funciones</title>
 +
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet">
 +
</head>
 +
<body class="bg-light">
 +
<div class="container py-5">
 +
    <h1 class="text-center mb-4">Gestor de Tareas</h1>
 +
 +
    <!-- Introducción -->
 +
    <div class="mb-4">
 +
        <p>En esta página trabajaremos con funciones para calcular estadísticas de tareas.
 +
            Actualmente, hay tres tareas predefinidas.</p>
 +
    </div>
 +
 +
    <!-- Tareas con variables simples -->
 +
    <div class="card mb-4">
 +
        <div class="card-body">
 +
            <h2 class="card-title">Tareas Iniciales</h2>
 +
            <ul class="list-group">
 +
                <li class="list-group-item  "><span
 +
                            class="fw-bold fs-4">Tarea 1:</span>
 +
                    <span class="badge ">estado tarea 1</span>
 +
                </li>
 +
                <li class="list-group-item  "><span
 +
                            class="fw-bold fs-4">Tarea 2:</span>
 +
                    <span class="badge ">estado tarea 2</span>
 +
                </li>
 +
                <li class="list-group-item  "><span
 +
                            class="fw-bold fs-4">Tarea 3:</span>
 +
                    <span class="badge ">estado tarea 3</span>
 +
                </li>
 +
 +
            </ul>
 +
        </div>
 +
    </div>
 +
 +
    <!-- Estadísticas -->
 +
    <div class="card">
 +
        <div class="card-body">
 +
            <h2 class="card-title">Estadísticas de Tareas</h2>
 +
            <ul class="list-group">
 +
                <li class="list-group-item">Total de tareas:
 +
                    <strong> Total de tareas</strong></li>
 +
                <li class="list-group-item">Tareas completadas:
 +
                    <strong>total de tareas completadas</strong></li>
 +
                <li class="list-group-item">Tareas pendientes:
 +
                    <strong>Total tareas pendientes</strong></li>
 +
            </ul>
 +
        </div>
 +
        <!-- Gráfica de estadísticas -->
 +
        <!-- podemosintentar meter un gráfico de js -->
  
 
</body>
 
</body>

Última revisión de 00:01 5 dic 2024

Estadísticas de Tareas con Funciones

Descripción del problema
  • Queremos construir una aplicación básica que nos permita analizar el estado de tres tareas predefinidas.
  • Cada tarea puede estar en estado "pendiente" o "completada".
  • Utilizaremos una función para calcular estadísticas de estas tareas y mostrar los resultados en una página web.

Objetivos del ejercicio:

  • Crear una página web en PHP que muestre tres tareas predefinidas con su estado.
  • Implementar una función llamada contarTareas que reciba como parámetros los estados de las tres tareas.
  • Usar la función para calcular y devolver:
    • El número total de tareas.
    • El número de tareas completadas.
    • El número de tareas pendientes.
Mostrar las estadísticas calculadas en la página web de forma clara y ordenada.

Requisitos específicos:

Las tareas deben ser representadas como variables simples, no arrays. Ejemplo:

 $tarea1_estado = 'pendiente'; 
 $tarea2_estado = 'completada';
 $tarea3_estado = 'pendiente';
  1. La función contarTareas debe:
    1. Calcular las estadísticas a partir de los estados proporcionados.
    2. Modificar directamente las variables total, completadas y pendientes usando parámetros por referencia.
    3. Ejemplo de firma de la función:
 
 function contarTareas($t1, $t2, $t3, &$total, &$completadas, &$pendientes)
  1. Mostrar las estadísticas en una lista dentro de la página web:
    1. Ejemplo de salida:
* Total de tareas: 3
* Tareas completadas: 1
* Tareas pendientes: 2

Pautas para resolver el ejercicio:

  • Crea las variables para almacenar los estados de las tres tareas.
  • Escribe la función contarTareas siguiendo la estructura solicitada.
  • Llama a la función desde tu código principal, pasando los estados de las tareas y las variables de estadísticas.
  • Usa HTML con Bootstrap para estructurar la página:
  • Una sección que liste las tareas y su estado.
  • Una sección separada para mostrar las estadísticas calculadas.
  • Prueba diferentes combinaciones de estados para verificar que las estadísticas se calculan correctamente.