Menu

Sign in to track your progress and unlock all features.

Theme style

Log in
01. Validate integer inputE02. Safe divide with a default valueE03. Parse a float or return NoneE

Problem No 1

Validate integer input

Easy

6 minute session

Summary

Safely parse and validate integers from user input strings.

Problem statement

Many programs accept text input and need to interpret integers safely. Implement a function validate_integer(s, min_value=None, max_value=None) that tries to convert the input s to an int. If conversion succeeds and the value is within the optional min_value and max_value (inclusive) constraints, return the int. For any invalid input (non-integer strings, floats like '3.0', values out of range), return None. The function should tolerate leading/trailing whitespace and plus/minus signs.

Task

Write a function that converts input to an integer only when valid and optionally enforces min/max bounds.

Examples

Valid integer string

Input

validate_integer('42')

Output

42

Explanation

The string '42' converts to integer 42 and no bounds are set.

Whitespace and sign

Input

validate_integer(' -7 ')

Output

-7

Explanation

Leading/trailing whitespace and a minus sign are handled; returns -7.

Input format

A single call validate_integer(s, min_value=None, max_value=None) where s is typically a string.

Output format

Return an int when the input is a valid integer within bounds, otherwise return None.

Constraints

Do not accept strings that represent floats ('3.0') or scientific formats that aren't integer-valued. Use safe parsing and avoid raising exceptions to the caller.

Samples

Sample input 0

validate_integer('10', min_value=0, max_value=20)

Sample output 0

10

Explanation 0

10 is within the range 0..20 so returned as int.

Code editor
Loading editor…

AI assistant

Ask me anything!

Need help? I can explain the core idea behind this problem, review your current code, and give targeted hints. Use “Teach Theory” for the concept, “Get AI hint” for a quick scaffold nudge, or ask a specific question below.

Chat history is temporary and will not be saved.

03:42 PM

Free preview includes 1 Teach Theory response and 1 AI hint on each of the first 3 lessons in this module.