Exercises - For - While Loop
Exercises - For - While Loop
1:
Background
Publishers and bookstores use a number system called the International Standard Book Number (ISBN)
system to identify books. At the start of publication, each book is assigned a unique ISBN. An ISBN,
once assigned, can never be re-used.
An ISBN consists of exactly 10 digits. The rightmost digit is the check digit. The check digit is
validated modulo 11.
multiply each digit from the first to the ninth by a weight from 10 to 2 respectively (the first
digit by 10, the second by 9,..., the ninth by 2).
the sum of the products plus the check digit should be divisible without remainder by 11.
if there is a remainder, the whole number is not a valid ISBN.
ISBN 0003194876
|
check digit is 6
add first set of alternates to themselves
0 0 0 3 1 9 4 8 7
10 9 8 7 6 5 4 3 2
0 0 0 21 6 45 16 24 14 = 126
add check digit 6
total 132
divide by 11 12
remainder 0
Therefore this ISBN is valid
Specifications
Design a program that validates an ISBN. Your program keeps accepting a whole number and
determining if that whole number is a valid ISBN. Your program terminates when the user enters 0 as
the whole number.
ISBN Validator
==============
ISBN (0 to quit): 0003194876
This is a valid ISBN.
ISBN (0 to quit): 0003194875
This is not a valid ISBN.
ISBN (0 to quit): 0
Have a Nice Day!
The data type long only guarantees room for 9 digits. The data type long long guarantees room for an
integer with well over 12 digits (at least 64 bits of precision). The conversion specifier for a long long
integer is %lld.
Exercise 3.2:
write a program which input x real (double type) number, then calculate e x approximately by the
formula:
x x2 xn
ex ~ S = 1+ + + ... +
1! 2! n!
xn
here n is the first integer for which | | epsi is satisfied.
n!