Skip to content

luc033.c

Problem Statement

Write a program to find the range of a set of numbers entered through the keyboard. Range is the difference between the smallest and biggest number in the list.

Metadata

Property Detail
Author Amit Dutta (amitdutta4255@gmail.com)
License MIT
Difficulty Beginner (index: 2 / 10)

Concepts

Beta Feature

This concept detection system is still in beta and may occasionally show incorrect or incomplete results.

  • Array
  • Iteration

Actions

Raw View on GitHub

You can print or save this file by opening Raw and using your browser.

Source Code

#include <stdio.h>
int main()
{
    int choice = 1, set_of_numbers[30], num, index = -1;
    while (choice == 1)
    {
        printf("\nEnter the number (Type any character and press Enter to finish.) : ");
        choice = scanf("%d", &num); // Checking whether the user has input any characters
        if (choice != 1)
        {
            // If the user inputs any characters, then choice = 0, it means he doesn't want to give any more input;
            choice = 0;
            printf("\nCharacter received. Stopping input...\n");
            break;
        }
        index++;
        set_of_numbers[index] = num;
    }
    int max = set_of_numbers[0], min = set_of_numbers[0];
    while (index >= 0)
    {
        if (max < set_of_numbers[index])
            max = set_of_numbers[index];
        if (min > set_of_numbers[index])
            min = set_of_numbers[index];
        index--;
    }
    int range = max - min;
    printf("\nBiggest number in the set  : %d", max);
    printf("\nSmallest number in the set : %d", min);
    printf("\nRange : %d", range);
    return 0;
}

Explanation

Explain with AI

Copy the prompt below and paste it into any AI assistant.

    You are explaining a C programming code to a beginner.

    STRICT RULES:

    - Only use the given code. Do NOT assume anything not present.

    - Do NOT add extra examples.

    - Keep explanation clear and short.

    - If something is unclear, say "Not clear from code".

    - Follow the exact format below. Do NOT change headings.

    FORMAT:

    [START]

    ## What it does

    (Explain the overall purpose in 1-2 sentences)

    ## Step-by-step

    (Explain how the code works in steps, simple language)

    ## Key Concepts

    (List concepts like loop, condition, function, etc.)

    ## Notes

    (Mention any limitations, errors, or assumptions)

    [END]

    CODE (luc033.c):

    #include <stdio.h>
    int main()
    {
        int choice = 1, set_of_numbers[30], num, index = -1;
        while (choice == 1)
        {
            printf("\nEnter the number (Type any character and press Enter to finish.) : ");
            choice = scanf("%d", &num); // Checking whether the user has input any characters
            if (choice != 1)
            {
                // If the user inputs any characters, then choice = 0, it means he doesn't want to give any more input;
                choice = 0;
                printf("\nCharacter received. Stopping input...\n");
                break;
            }
            index++;
            set_of_numbers[index] = num;
        }
        int max = set_of_numbers[0], min = set_of_numbers[0];
        while (index >= 0)
        {
            if (max < set_of_numbers[index])
                max = set_of_numbers[index];
            if (min > set_of_numbers[index])
                min = set_of_numbers[index];
            index--;
        }
        int range = max - min;
        printf("\nBiggest number in the set  : %d", max);
        printf("\nSmallest number in the set : %d", min);
        printf("\nRange : %d", range);
        return 0;
    }