Assignment 1
(The turn in date for this assignment has already passed. If you have not turned anything in yet, don't give up, you can
still get most of the credit for it)
Part 1
Write a program that can calculate factorials of numbers between1 and 500, with perfect accuracy. Note that none of
the C or C++ basic types (int, long int, long long int, float, double, or long double, are capable of doing the job. You
will need to implement large numbers as arrays of digits (or something similar) and provide functions to perform the
mutliplication operation). For your convenience, you may write a program that is accepted as correct (or correct with a
"presentation error") for problem number 623 by the University of Valladolid (is
Spain)'s Automatic Grading System, and just send your registration number to the grader.
Part 2
Implement the other common arithmetic operations (addition, subtraction, multiplication, together with input and output,
but don't worry about negative numbers) on arbitrarily large integers, as a useful library of functions. For extra credit
also implement Division and/or negative numbers. For tons of extra credit, try to implement similar functions for
floating-point numbers.