Enum Days Manager

Enum Days Manager

Medium C Variables 32 views
Explanation Complexity

Problem Statement

Make a list of 7 days of the week. Input the number (0-6) from the user and print the corresponding day name. Error message on invalid number. Show the internally integer values ​​of the enum.

Input Format

An integer number entered by the user (0–6).

Output Format

Day name corresponding to the number
OR
Error message for invalid input
Also show integer values of enum days.

Example

3
Day: Thursday

Enum values:
SUNDAY = 0
MONDAY = 1
TUESDAY = 2
WEDNESDAY = 3
THURSDAY = 4
FRIDAY = 5
SATURDAY = 6

Constraints

Valid input range: 0 to 6

Concept Explanation

An enum assigns automatic integer values starting from 0.
Each day name is mapped to a number.

Step-by-Step Explanation

1.Create an enum Day with 7 values:

• SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY

2.By default, enum values start from 0 and increase by 1.

3.Take a number input from the user.

4.Check if the number is between 0 and 6:

• If not, print error message.

5.If valid:

• Use the number to select the enum value.

6.Print the corresponding day name.

7.Print all enum names with their integer values.

Concept Explanation

An enum assigns automatic integer values starting from 0.
Each day name is mapped to a number.

Step-by-Step Explanation

1.Create an enum Day with 7 values:

• SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY

2.By default, enum values start from 0 and increase by 1.

3.Take a number input from the user.

4.Check if the number is between 0 and 6:

• If not, print error message.

5.If valid:

• Use the number to select the enum value.

6.Print the corresponding day name.

7.Print all enum names with their integer values.

Input / Output Format

Input Format
An integer number entered by the user (0–6).
Output Format
Day name corresponding to the number
OR
Error message for invalid input
Also show integer values of enum days.
Constraints
Valid input range: 0 to 6

Examples

Input:
3
Output:
Day: Thursday Enum values: SUNDAY = 0 MONDAY = 1 TUESDAY = 2 WEDNESDAY = 3 THURSDAY = 4 FRIDAY = 5 SATURDAY = 6

Example Solution (Public)

C
#include <stdio.h>

enum Day {
    Sunday = 0,
    Monday,
    Tuesday,
    Wednesday,
    Thursday,
    Friday,
    Saturday
};

int main() {
    int choice;

    /* Display enum values */
    printf("Days of the Week (Enum Values):n");
    printf("Sunday    = %dn", Sunday);
    printf("Monday    = %dn", Monday);
    printf("Tuesday   = %dn", Tuesday);
    printf("Wednesday = %dn", Wednesday);
    printf("Thursday  = %dn", Thursday);
    printf("Friday    = %dn", Friday);
    printf("Saturday  = %dnn", Saturday);

    /* User input */
    printf("Enter a number (0-6): ");
    scanf("%d", &choice);

    /* Validate input */
    if (choice < 0 || choice > 6) {
        printf("Error: Invalid number! Please enter between 0 and 6.n");
        return 0;
    }

    /* Convert number to enum */
    enum Day today = choice;

    /* Print corresponding day */
    printf("Day selected: ");
    switch (today) {
        case Sunday:    printf("Sundayn"); break;
        case Monday:    printf("Mondayn"); break;
        case Tuesday:   printf("Tuesdayn"); break;
        case Wednesday: printf("Wednesdayn"); break;
        case Thursday:  printf("Thursdayn"); break;
        case Friday:    printf("Fridayn"); break;
        case Saturday:  printf("Saturdayn"); break;
    }

    return 0;
}

Official Solution Code

#include <stdio.h>

enum Day {
    Sunday = 0,
    Monday,
    Tuesday,
    Wednesday,
    Thursday,
    Friday,
    Saturday
};

int main() {
    int choice;

    /* Display enum values */
    printf("Days of the Week (Enum Values):n");
    printf("Sunday    = %dn", Sunday);
    printf("Monday    = %dn", Monday);
    printf("Tuesday   = %dn", Tuesday);
    printf("Wednesday = %dn", Wednesday);
    printf("Thursday  = %dn", Thursday);
    printf("Friday    = %dn", Friday);
    printf("Saturday  = %dnn", Saturday);

    /* User input */
    printf("Enter a number (0-6): ");
    scanf("%d", &choice);

    /* Validate input */
    if (choice < 0 || choice > 6) {
        printf("Error: Invalid number! Please enter between 0 and 6.n");
        return 0;
    }

    /* Convert number to enum */
    enum Day today = choice;

    /* Print corresponding day */
    printf("Day selected: ");
    switch (today) {
        case Sunday:    printf("Sundayn"); break;
        case Monday:    printf("Mondayn"); break;
        case Tuesday:   printf("Tuesdayn"); break;
        case Wednesday: printf("Wednesdayn"); break;
        case Thursday:  printf("Thursdayn"); break;
        case Friday:    printf("Fridayn"); break;
        case Saturday:  printf("Saturdayn"); break;
    }

    return 0;
}
Please login to submit solutions.
Editor
Output

                                        
Please login to submit solutions.