0% found this document useful (0 votes)
148 views3 pages

Subject: PRF192-PFC Workshop 05

The document outlines 4 problems for a workshop on using random number generation and menu functions in C programming. Problem 1 asks to simulate dice rolls until a total is reached, Problem 2 simulates picking balls from a basket until sums match a total, Problem 3 uses a menu to validate dates or print character codes, and Problem 4 also uses a menu to solve a quadratic equation or calculate bank deposit growth.

Uploaded by

Hiếu Chelsea
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
148 views3 pages

Subject: PRF192-PFC Workshop 05

The document outlines 4 problems for a workshop on using random number generation and menu functions in C programming. Problem 1 asks to simulate dice rolls until a total is reached, Problem 2 simulates picking balls from a basket until sums match a total, Problem 3 uses a menu to validate dates or print character codes, and Problem 4 also uses a menu to solve a quadratic equation or calculate bank deposit growth.

Uploaded by

Hiếu Chelsea
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 3

Subject: PRF192- PFC

Workshop 05
Objectives: Use functions in the library math.h for getting an integer at random
and stdio.h for formatting output

Grading: 4 problem, marks: 2, 2, 3, 3

Problem 1. Dice Throws ( 2 marks)

You are required to develop a program that will throw two dice until the top faces of the
two dice total to a specified number.

The output from your program looks something like: 

Dice Thrower
============
Total sought : 11
Result of throw 1 : 1 + 3
Result of throw 2 : 4 + 4
Result of throw 3 : 6 + 2
Result of throw 4 : 5 + 6
You got your total in 4 throws!

Algorithm should be as the following

/* Get a random integer between min and max randomly */


int intRandom(int min, int max)
{ /* Refer to the lecture to get algorithm for this task */
}
main()
Variable : int total, x,y, count
do
{ Accept total;
}
while (total<2 || total >12);
count =1;
do
{ x= intRandom(2,6);
y= intRandom(2,6);
Print out (“Result of throw %d “ %d + %d\n”, count, x, y)
count++;
}
while (x+y != total);
Problem 2. Ball Lottery ( 2 marks)

A basket contains ten balls.


Balls are numbered from 1 to 10.
User gets a pair of balls and he/she hopes that sum of numbers is equal to a known
expected total.
This problem is the same with the previous problem but the total is between 2 to 20.

The output from your program looks something like: 

Ball Lottery
============
Total sought : 11
Result of picks 1 and 2 : 1 + 3
Result of picks 3 and 4 : 4 + 5
Result of picks 5 and 6 : 6 + 3
Result of picks 7 and 8 : 5 + 6
You got your total in 8 picks!

The algorithm for this program is similar to those in the previous problem

Problem 3. Program using menu ( 3 marks)

Write a C program using the following simple menu:


1- Processing date data
2- Character data
3- Quit
Choose an operation:
- When user chooses 1: User will enter values of date, month, year then the
program will announce whether this date is valid or not.
- -When user chooses 2: User will enter two characters, then the program will print
out ASCII codes of characters between them using descending order. Examples:
Input: ca
Output:
c: 99, 63h
b: 98, 62h
a: 97, 61h

Problem 4. Program using menu ( 3 marks)


Write a C program using the following simple menu:
1- Quadratic equation ( phương trình bậc 2)
2- Bank deposit problem
3- Quit
Choose an operation:
- When user chooses 1: User will enter values describing a quadratic equation
then the program will print out its solution if it exists.
- When user chooses 2: User will enter his/her deposit ( a positive number), yearly
rate ( a positive number but less than or equal to 0.1), number of years ( positive
integer), then the program will print out his/her amount after this duration.

Validations
- Deposit, d >0
- Yearly rate, r: > 0.0 to <1.0
- Number of year, n>0
- Amount at the n(th) year: P = d(1+r)n , Use the function pow(x,y) in Math.h for xy

You might also like