COMP281 Assignment 1 –
• The following 5 problems will be available as Assignment 1 on the online judging
system available at http://intranet.csc.liv.ac.uk/JudgeOnline/
• You need to write a valid C program that solves each of these problems – it must
read the input, as specified in the problem description then print the solution to the given
problem for that input.
o Input is read from the standard input, in the same way that you read input from the keyboard
as shown in lectures (e.g., using scanf). Output is also printed to the standard output, as
you have seen (e.g., using printf).
o When you are satisfied that your programs work correctly, you must submit them through the
departmental submission system, as described below.
o You must also include a brief report describing your solutions to the problems. This should
be maximum one side of A4 paper (although there is no penalty for a longer report) and
should give a description of how each of your solutions works. This should include
describing the algorithm used to reach the solution, describing your use of any C language
features (that were not discussed in lectures) and identifying any resources that you have used
to help you solve the problems.
o This assignment is worth 30% of the total mark for COMP281
o 50% of the marks will be awarded for programs that correctly solve the problem for all test
cases. All problems are weighted equally and each counts for 20% of this total.
o 40% of the marks will be awarded depending on the style, comments and efficiency of the
solution. All problems are weighted equally and each counts for 20% of this total.
o 10% of the marks will be awarded for the quality and depth of the accompanying report
o See separate marking guidelines for more details.
o Name each of your c files according to the problem number; i.e.,
1014.c,1017.c,1025.c,1060.c and 1030.c. Place all five of your C files and your
report (in .pdf format) into a single zip file.
o All question have also been/will also be posted on www.csc.liv.ac.uk/JudgeOnline
o Before you submit your solutions, please first test them using the online judge. You
are required to include the “Result” and the “RunID” in your C code as comments.
The OJ provides a RunID. RunIDs are not problem IDs.
! Example: the problem is 10xx. The solution has been accepted by the OJ,
and the runID is 2033. You add to your code: /* 2033 Accepted */
! Result is one of the following: Accepted, Wrong Answer, Presentation Error,
Time Limit Exceeded, Memory Limit Exceeded, Output Limit Exceeded,
Runtime Error, Compile Error
o Submit this zip file using the departmental submission system at
Only the file submitted through this link will be marked
• The deadline for this assignment 20/02/2015, 5:00pm • Penalties for late submission apply in accordance with departmental policy as
set out in the student handbook, which can be found at:
Title: Area and circumference of circles
In this exercise you have to compute the area and circumference of a series of circles and output their sum.
Specifically, the program will take two radii of two circles as input (r1 <= r2, both integers) and will output the sum of
the areas and the circumferences of all circles starting with r1 and increasing at each step the radius by ‘1’ until radius
r2 has been reached. As an example, suppose ‘r2-r1 = 2’ then the program has to compute the sum of the areas and
circumferences of three circles with radii r1,r1+1,r2
Remember that the area of a circle equals Pi*r^2 and the circumference equals 2Pi*r.
Set Pi to 3.14
Two integers r1 and r2 with r1<=r2
two floats, sum_of_areas and sum_of_circumferences.
Title: Product of integers in columns
In this exercise you have to write a program that can compute the product of the numbers (integers in this case) in a
series of columns.
The first number of the input, N, describes the number of columns that will follow, then N columns follow. The first
row will contain the first integer of each column. This number M will indicate how many numbers will follow in the
respective column. Note that this means that not each column needs to be of the same length.
N numbers that represent the product of each column.
3 2 3 4
1 1 1 2
2 3 2 2
3 4 3
6 3 8 24
Title: Largest common factor and smallest common multiple
Input two positive integers. Compute their largest common factor and smallest common multiple.
Input two positive integers.
largest common factor and smallest common multiple.
Title: Sort even integers
From the input of 10 numbers, sort only the even integers into ascending order.
Print the list with all odd numbers (including 0) in their corresponding place in the input and the even numbers sorted
into ascending order.
10 integers separated by spaces. (All integers are at most 32 bits)
An evenly sorted list (even numbers in ascending order, odd numbers unchanged)
5 3 4 2 1 6 8 7 10 9
1 3 2 4 5 6 8 7 10 9
Sample Input 2:
11 16 14 12 10 8 6 4 2 1
Sample Output 2:
11 2 4 6 8 10 12 14 16 1
Title: Precise Division
For 8/13, the 5-th digit after the decimal point is 8.
Given three positive integers a, b, and n (all at most 60000), you are asked to compute a/b and print out the n-th digit
after the decimal point.
a b n (three positive integers)
The n-th digit after the decimal point of a/b
8 13 5
COMP281 Assignment 1 – C Programming
COMP281 Assignment 1 –