0% encontró este documento útil (0 votos)
41 vistas3 páginas

Gestor de Tareas en C: Código y Funciones

proyecto trata sobre la elaboracion de una fuente de voltaje DC simple
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
41 vistas3 páginas

Gestor de Tareas en C: Código y Funciones

proyecto trata sobre la elaboracion de una fuente de voltaje DC simple
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

#include <stdio.

h>
//univ:ronald alejandro quispe puma
// Definir la estructura para representar una tarea
typedef struct {//se utiliza para crear alias o nombres alternativos para tipos de
datos existentes, incluidas las estructuras.
char descripcion[100];
int completada; // 1 si está completada, 0 si no
float nota;
} Tarea;

// Función para agregar una tarea


void agregarTarea(Tarea tareas[], int *numTareas) {//no devueve ningun valor
printf("Ingrese la descripción de la tarea: ");
scanf(" %[^\n]", tareas[*numTareas].descripcion);
printf("Ingrese la nota de la tarea: ");
scanf("%f", &tareas[*numTareas].nota);
tareas[*numTareas].completada = 0; // Inicialmente no completada
(*numTareas)++;
printf("Tarea agregada con éxito.\n");
}

// Función para mostrar las tareas


void mostrarTareas(Tarea tareas[], int numTareas) {
if (numTareas == 0) {
printf("No hay tareas registradas.\n");
} else {
printf("Lista de tareas:\n");
for (int i = 0; i < numTareas; i++) {
printf("%d. %s - Nota: %.2f %s\n", i + 1, tareas[i].descripcion,
tareas[i].nota, tareas[i].completada ? "(Completada)" : "");
}
}
}

// Función para marcar una tarea como completada


void marcarTareaCompletada(Tarea tareas[], int numTareas) {
if (numTareas == 0) {
printf("No hay tareas para marcar como completadas.\n");
return;
}

mostrarTareas(tareas, numTareas);

int seleccion;
printf("Seleccione el número de la tarea que desea marcar como completada: ");
scanf("%d", &seleccion);

if (seleccion >= 1 && seleccion <= numTareas) {


tareas[seleccion - 1].completada = 1;
printf("Tarea marcada como completada.\n");
} else {
printf("Número de tarea no válido.\n");
}
}

// Función para ingresar manualmente las notas de las tareas


void ingresarNotasManualmente(Tarea tareas[], int numTareas) {
if (numTareas == 0) {
printf("No hay tareas para ingresar notas.\n");
return;
}

for (int i = 0; i < numTareas; i++) {


printf("Ingrese la nota para la tarea '%s': ", tareas[i].descripcion);
scanf("%f", &tareas[i].nota);
}

printf("Notas ingresadas con éxito.\n");


}

int main() {
Tarea tareas[50]; // Se asume que habrá como máximo 50 tareas
int numTareas = 0;
int opcion;

do {
printf("\nGestor de Tareas\n");
printf("1. Agregar Tarea\n");
printf("2. Mostrar Tareas\n");
printf("3. Marcar Tarea como Completada\n");
printf("4. Ingresar Notas Manualmente\n");
printf("0. Salir\n");
printf("Ingrese su opción: ");
scanf("%d", &opcion);

switch (opcion) {//expresion


case 1:
agregarTarea(tareas, &numTareas);
break;
case 2:
mostrarTareas(tareas, numTareas);
break;
case 3:
marcarTareaCompletada(tareas, numTareas);
break;
case 4:
ingresarNotasManualmente(tareas, numTareas);
break;
case 0:
printf("Saliendo del gestor de tareas.\n");
break;
default:
printf("Opción no válida. Por favor, ingrese una opción válida.\n");
}
} while (opcion != 0);

return 0;
}

También podría gustarte