課程名稱︰計算機程式
課程性質︰群組必修
課程教師︰諶玉真
開課學院:工學院
開課系所︰化工系
考試日期(年月日)︰2010/11/04
考試時限(分鐘):110分鐘
是否需發放獎勵金:是
(如未明確表示,則不予發放)
試題 :
1.Letter grades are sometimes assigned to numeric scores by using the grading
scheme commonly called grading on the curve. In the scheme, a letter grade is
assigned to a numeric score, according to the following table:
x=Numeric Score Letter Grade
--------------------------------------------------------------
x < xm-(3/2)σ F
xm-(3/2)σ≦ x < xm-(1/2)σ D
xm-(1/2)σ≦ x < xm+(1/2)σ C
xm+(1/2)σ≦ x < xm+(3/2)σ B
xm+(3/2)σ≦ x A
where xm is the mean score and σ is the standard deviation. Read a list of
real numbers representing numeric scores, calculate their mean and standard
deviation, and then find and display the letter grade corresponding to each
numeric score.
n
variance = σ^2 = (1/n)Σ(xi-xm)^2
i=1
n
standard deviation = σ =√((1/n)Σ(xi-xm)^2)
i=1
The list of scores is 50, 61, 64, 69, 74, 77, 80, 83, 95
2.Write a program that reads triples of real numbers and assigns the
appropriate value of true or false to the following logical variables:
Triangle: True if the real numbers can represent the lengths of the sides of
a triangle and false otherwise(the sum of any two of the numbers
must be greater than the third)
Equilateral: True if Triangle is true and the triangle is equilateral(the
three sides are equal)
Isosceles: True if Triangle is true and the triangle is isosceles(at least
two sides are equal)
Scalene: True if Triangle is true and the triangle is scalene(no two sides
are equal)
The output from your program should have a format like the following:
Enter 3 lengths:
2,3,3
Triangle is: T
Equilateral is: F
Isosceles is: T
Scalene is: F
3.In some situations, an exponential function
y = b*e^(m*x)
gives a better fit to a set of data points than does a straight line. One
common method to determine the constants a and b is to take logarithms
ln(y) = ln(b) + m*x
and then use the method of least squares to find values of the constants m and
ln(b). Write a program that uses this method to fit an exponential curve to a
set of data points. Run it for the values in the following table, which gives
the barometric pressure readings, in millimeters of mercury, at various
altitudes.
Test for yourself what is the value of pressure if altitude = 1750m and 2200m.
Altitude(x) Barometric Pressure(y)
(meters) (millimeters)
--------------------------------------------------------
0 760
500 714
1000 673
1500 631
2000 594
2500 563
Hint:for y'=b'+ m*x
_ _
slope = m = ((Σ(xi*yi'))-(Σxi)y')/((Σxi^2)-(Σxi)x)
_ _
intercept = b'= y'-m*x
Note the difference between y and y'(=ln(y)), also b and b'(=ln(b)) in this
problem.
4.A variable z may be represented by the series
z = 1+1/(1*1!)+1/(2*2!)+1/(3*3!)+...+1/(n*n!)
when n! represents the factorial of n (for example 5!=5*4*3*2*1). Write a
program that computes the value of z to use a DO WHILE loop. The program should
continue to add terms until the value of 1/(n*n!) becomes less than err where
err can be any value such as 0.0005 or 0.00005. Print the final value of z.
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.112.164.201