0% found this document useful (0 votes)
5 views

Lab2

Uploaded by

dotuananh1625
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views

Lab2

Uploaded by

dotuananh1625
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 6

Subject: PRF192- PFC

Workshop 02
Objectives:
Practicing skills at analyzing and implementing simple programs

Contents: 5 programs

Program 1 2 3 4 5
Mark 2 2 2 2 2

Program 1 ( 2 marks)

Write a program that allows user inputting a simple expression containing one of four
operators +, -, *, / then the result is printed out to the monitor. Input format: num1
operator num2,
An example of user interface
Enter an expression (+ - * /): 4*5
Result: 20

Sample Analysis

Content Implementation
Nouns Expression, double num1, num2
format num1 operator char op
num2 double result

result
Verbs Begin
Accept num1, op, num2 scanf( “%lf%c%lf”, &num1, &op, &num2)
Calculate result switch (op)
Print out result { case ‘+’ : result = num1 + num2;
End print out result;
break;
case ‘-’ : result = num1 - num2;
print out result;
break;
case ‘*’ : result = num1 * num2;
print out result;
break;
case ‘/’ : if ( num2==0)
print out “Divide by 0

else
{ result = num1 /
num2;
print out result;
}
break;
default: print out “Op is not
supported”
}

Implement this program.

Program 2 ( 2 marks) – Yearly Personal Income Tax

Suppose that:
In Viet Nam, each people has to pay for his/her yearly personal income tax as the
following description:

Rules:

Tax-free income:
Personal pending amount (tiền nuôi bản thân) pa= 9 000 000$/month
Alimony (tiền cấp dưỡng) for each his/her dependent pd= 3 600
000$/month/dependent
With n dependents, Yearly tax-free income: tf = 12*(pa + n*pd)

Taxable income (thu nhập chịu thuế)


ti = income – tf
( If ti<=0 then income tax = 0)
Based on taxable income, the employee has to pay his/her income tax with levels
pre-defined in the following table:

Leve Taxable Income Income tax


l
1 Less than or equal to 5%
5.000.000
2 From 5.000.001 to 10%
10.000.000
3 From 10.000.001 to 15%
18.000.000
4 Over 18.000.000 20%

Write a program which will compute income tax of a people using the following
interface:

Case 1:

Your income of this year: 240000000


Number of dependent:4
Tax-free income: 280800000
Taxable income: 0
Income tax: 0

Case 2:

Your income of this year: 440000000


Number of dependent:4
Tax-free income: 280800000
Taxable income:: 159200000
Income tax: 30190000
Program 3 (2 mark)

Objectives Practice loops statement


Related knowledge None
Problem Write a C program that will carry out some times: accept two
integers, swap these values, print them out to the monitor.
The program will terminate when the value of 0 is inputted.
Analysis Suggested algorithm (logical order of verbs)
Nouns: Begin
2 integers  int x, Do {
y; Accept x, y;
int t= x; /* t: temporary variable */
x= y;
y= t;
Print out x, y;
}
While ( x!=0 and y!=0);
End

Program 4: (2 marks)

Related knowledge Use the function getchar() –stdio.h, to input a character,


the function toupper(ch) to convert a character to
uppercase - ctype.h
ASCII code of the ENTER key: ‘\n’
Problem Write a C program that will:
- permit user inputting a string of characters. The
input operation will terminate if the ENTER key is
stroked.
- print out the number of vowels, number of
consonants, and number of others to the monitor.
Analysis Suggested algorithm (logical order of verbs)
Nouns: Begin
inputted character Do {
 char ch Accept ch; /* ch= getchar(); */
Number of vowels Convert ch to its uppercase /* ch= toupper(ch); */
 int nVowels =0; If ( ch>=’A’ and ch <=’Z’) {
Number of consonants switch (ch) {
 int consonants =0; case ‘A’ :
Number of other case ‘E’ :
characters  int case ‘I’ :
nOthers =0; case ‘O’ :
case ‘U’ : nVowels ++; break;
default: nConsonants++;
}
}
else nOthers = nOthers++;
}
While ( ch != ‘\n’);
Print out nVowels;
Print out nConsonants;
Print out nOthers;
End

Program 5: (2 marks)
Write a C program that asks the user to enter the height of a triangle (an integer greater
than 1 if wrong enter again) and then prints right triangle, equilateral triangle with the
specified height. The triangle should be made of symbol (*) and should look something
like this:

Input n: 5

*
* *
* * *
* * * *
* * * * *

*
* *
* * *
* * * *
* * * * *

You might also like