inc1 – Increment (easy version)

Write a program that reads a single number and prints its increment, i.e. its value added to one.

Your program should read from the standard input and print to the standard output. The standard input and output devices are usually the keyboard and screen of a command line session. Here are a few example sessions:

``````\$ ./inc1
2
3

\$ ./inc1
123
124
``````

Input and Output

The input contains a single line with one integer x where

0 ≤ x ≤ 100 000.

The output should contain a line with a single integer y where y = x + 1 and should be terminated by a line break.

Example input 1

``````2
``````

Example output 1

``````3
``````

Example input 2

``````123
``````

Example output 2

``````124
``````

The `inc` function

Your program should be implemented using an `inc` function that receives one integer as argument and returns an integer. Please refer to the information for the chosen language:

• C prototype: `int inc(int x);`
• Haskell type: `inc :: Int -> Int`
• Python definition: `def inc(x):`
• C++ prototype: `int inc(int x);`
• C# definition: `public static int Inc(int x)` inside a class `Program`
• Java definition: `public static int inc(int x)` inside a public class `Inc`
• JavaScript definition: `function inc(x)`
• Lua definition: `function inc(x)`
• Ruby definition: `def inc(x)`
• Racket definition: `(define (inc x) ...)`
• Scheme definition: `(define (inc x) ...)`

The `inc` function should not print anything. It should just perform the computation and return an integer. The function and input/output processing must exist in the same program. Create a single submission with the function and main program. If you’re confused, try earning a partial score first.

Specifically for this exercise when using Python, JavaScript, Lua or Ruby, avoid using `sys.exit()`, `process.exit()`, `os.exit()` or `exit`, as your program is appended with some extra assertions in one of the test sets.

Scoring

• 2/12: produces the correct sum for the above examples in an incorrect format
• 4/12: produces the correct sum for the above examples in the correct format
• 8/12: produces the correct sum for other examples
• 12/12: implements the `inc` function

Hints

1. Automated judge: Keep in mind that when your program is submitted it will not be run by a human but instead by an automated judge. Instructions should be followed exactly or the judge will not give you a full score.

Your program should not print messages like `Please type a number:` or `The increment is 10.` Instead, just print the resulting number followed by a line break as in the example output.

2. Exit immediately: Your program should print the addition result then exit immediately. Do not use `system("pause")`, `sleep(1)` or anything of sorts.

3. Redirecting input: On most systems (Windows / Linux / OS X), it is possible to redirect the standard input and output of your program to files, like so:

``````\$ ./inc1 <inputfile.txt >outputfile.txt
``````

If you create a plain text file with the “example input”, the above command should produce a plain text file with the “example output”.

4. Windows users: On Windows, you should not use `./` to run a program in the current directory, do instead:

`````` C:\> inc1.exe
41
42
``````
5. Easier exercises: If you have difficulty with this exercise, try the hello and repeat1 exercises first.

6. Beware of the data types. Users of Python and dinamically-typed languages beware. The `inc` function will be tested with proper integer values as its argument and not with integers encoded in strings. For example, it will be tested as `inc(123)` but never as `inc("123")`.

7. Further information. Sections 4.4. Functions and 4.5. Operators of the Computer Science by Example book

try first: repeat1

try also: triple1