Informática · FCA UNAM

Diseño de algoritmos · 5 nov 2026

Relacionado
Objetivo

Elabora un programa que solicite al usuario ingresar un número de acuerdo con su turno: 1 para el turno de la mañana, 2 para el turno de la tarde y 3 para el turno de la noche. Imprime “buenos días”, “buenas tardes” o “buenas noches” de acuerdo con el turno. En otro caso, imprime “Turno no válido”.

Diagrama de flujo

flowchart TB
    A(["Inicio"]) --> C[/"Escribir: #quot;Ingrese un número de acuerdo a su turno:
    1 = Mañana
    2 = Tarde
    3 = Noche: #quot;"/] --> D[/Leer: turno/] --> E{turno == 1}
    E -->|Si| G@{ shape: doc, label: "Escribir: #34;Buenos días#34;" } --> H(["Fin"])
    E -->|No| J{turno == 2}
    J -->|Si| F@{ shape: doc, label: "Escribir: #34;Buenas tardes#34;" } --> H
    J -->|No| K{turno == 3}
    K -->|Si| I@{ shape: doc, label: "Escribir: #34;Buenas noches#34;" } --> H
    K -->|No| L@{ shape: doc, label: "Escribir: #34;Turno no válido#34;" } --> H
    linkStyle default stroke:#9ca3af,stroke-width:2px

Pseudocódigo

Inicio
    Escribir "Ingrese un número de acuerdo a su turno:"
    Escribir "1 = Mañana"
    Escribir "2 = Tarde"
    Escribir "3 = Noche"
    Leer turno
    Si turno == 1 Entonces
        Escribir "Buenos días"
    Sino Si turno == 2 Entonces
        Escribir "Buenas tardes"
    Sino Si turno == 3 Entonces
        Escribir "Buenas noches"
    Sino
        Escribir "Turno no válido"
    FinSi
Fin

Código

#include <stdio.h>
#include <locale.h>

int main() {
    int turno;

    setlocale(LC_ALL, "es_ES.UTF-8");

    printf("Ingrese un número de acuerdo a su turno:\n");
    printf(" 1 = Mañana\n");
    printf(" 2 = Tarde\n");
    printf(" 3 = Noche\n");
    scanf("%d", &turno);

    if (turno == 1) {
        printf("Buenos días\n");
    }
    else if (turno == 2) {
        printf("Buenas tardes\n");
    }
    else if (turno == 3) {
        printf("Buenas noches\n");
    }
    else {
        printf("Turno no válido\n");
    }

    return 0;
}

ejemplo