实验29 Mathcad编程举例(1) Mathcad程序示意图 程序名 di=ls←0 赋值语句 d=|(s←0s1←02←0) for ke1. 10 fork∈1.100 s<s+k if mod(k, 3)=0v mod(k, =0 s←s+ k if mod(k,3=0 s输出结果 s1←s1+ k if mor(k,刀=0 s2←s2+ k if mod k,21) 7 程序编辑层次线 s+ s1-s2 1编写程序计算1—100之中可被3和7整除的整数之和 解求解程序为: S← 0 s<S+k if mod(k, 3)=0 v mod(k, 7)=0 div=2208 d:=|(s←0s←0s2←0 ←s+ k if mod(k,3)=0 sl←sl+ k if mod(k,7)=0 od(k,21)=0 s+sl-s2 d=2208 2我国1990年人口为12亿3千万,假如以后按千分之12的增长率增长,问需要经 过多少年将达到15亿,届时全国人口数是多少?编写程序求解。 解求解程序为:以增长率r为自变量 speed(:=k←0 while p < 1.5.10 Years""Populatin 令r=0.012可以得到
实验29 Mathcad 编程举例(1) 1 编写程序计算1-100之中可被3和7整除的整数之和. 解 求解程序为: div s ¬ 0 s ¬ s + k if mod(k, 3) = 0 Ú mod(k, 7) = 0 for kÎ 1.. 100 s := div = 2208 d (s ¬ 0 s1 ¬ 0 s2 ¬ 0 ) s ¬ s + k if mod(k, 3) = 0 s1 ¬ s1 + k if mod(k,7) = 0 s2 ¬ s2 + k if mod(k,21) = 0 for kÎ 1.. 100 s + s1 - s2 := d = 2208 2 我国1990年人口为12亿3千万, 假如以后按千分之12的增长率增长, 问需要经 过多少年将达到15亿 , 届时全国人口数是多少?编写程序求解。 解 求解程序为: 以增长率r为自变量 speed(r) k ¬ 0 p 1.23 109 ¬ × p ¬ p×(1 + r) k ¬ k + 1 p 1.5 109 while < × "Years" k "Populatin" p æ ç è ö ÷ ø := 令 r = 0.012 可以得到:
Y speed(0.012)= 经过17年人口将达到1507亿 171506516262011 3编写程序输出菲波那契( Fibonacci)数列的第n项 解求解程序为 F(n) lifn≤l otherwise for ke2.n tmp←h+g g←tmp F(14)=610第14项 g 前15项 0123456789101112131415 23581321345589144233377610987 4设X为如下形式的一个分组的次数分布表,求加权平均,标准差以及变异系数,比如 X的第一列为某工厂各等级工资标准值,第2列为对应各级别工资的人数,求该厂职 工的工资总额,平均工资,标准差,变异系数等 W(X):=|(sf←0s←0s2←0) 435.512 fork∈0.n 535.558 X:=585.5125 635.586 ←s+(x2) 725.510 "工资总额”"平均工资”"工资标准差”"变异系数 "工资总额”"平均工资”"工资标准差”“变异系数 216422 594.57 这个程序如利用向量运算将可以使得程序结构更加简洁
speed(0.012) "Years" 17 "Populatin" 1506516262.011 æ ç è ö ÷ ø = 经过17年人口将达到15.07亿. 3 编写程序输出菲波那契 (Fibonacci) 数列的第n项 解 求解程序为: F(n) g ¬ 1 if n £ 1 h ¬ 1 g ¬ 1 tmp ¬ h + g h ¬ g g ¬ tmp for kÎ 2.. n otherwise g := F(14) = 610 第14项 k := 1.. 15 fibk := F(k) 前15项 fibT 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0 0 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 = 4 设X为如下形式的一个分组的次数分布表,求加权平均, 标准差以及变异系数, 比如 X的第一列为某工厂各等级工资标准值, 第2列为对应各级别工资的人数, 求该厂职 工的工资总额, 平均工资, 标准差, 变异系数等. W(X) (sf ¬ 0 s ¬ 0 s2 ¬ 0 ) n ¬ rows(X) - 1 s s X á0ñ ( ) k X á1ñ ( ) k ¬ + × s2 s2 X á0ñ ( ) k é ë ù û 2 X á1ñ ( ) k ¬ + × sf sf X 1 á ñ ( ) k ¬ + for kÎ 0.. n m s sf ¬ s s2 sf m 2 ¬ - "工资总额" s "平均工资" m "工资标准差" s "变异系数" s m ×100 æ ç ç è ö ÷ ÷ ø := X 435.5 485.5 535.5 585.5 635.5 685.5 725.5 12 25 58 125 86 48 10 æ ç ç ç ç ç ç ç ç è ö ÷ ÷ ÷ ÷ ÷ ÷ ÷ ÷ ø := W(X) "工资总额" 216422 "平均工资" 594.57 "工资标准差" 64.75 "变异系数" 10.89 æ ç è ö ÷ ø = 这个程序如利用向量运算,将可以使得程序结构更加简洁:
WI()=Is+-x0 x1> (x0)(x sf∈yx "工资总额”"平均工资”"工资标准差”"变异系数 ::-()2m 工资总额”"平均工资”"工资标准差”"变异系数” WI(X) 216422 4192.53 10.89
W1(X) s X 0 á ñ X 1 á ñ ¬ × s2 X á0ñ ( ) 2 X á1ñ ¬ ×( ) sf X á1ñ ¬ å "工资总额" s "平均工资" s sf "工资标准差" s2 sf s sf æ ç è ö ÷ ø 2 - "变异系数" s2×sf s 2 - s ×100 é ê ê ê ë ù ú ú ú û := W1(X) "工资总额" 216422 "平均工资" 594.57 "工资标准差" 4192.53 "变异系数" 10.89 æ ç è ö ÷ ø =