当前位置:首页 > 人教版高中数学必修三 第一章 算法初步基本算法语句与Scilab平台操作
基本算法语句与Scilab平台操作
一、课标要求
基本算法语句:经历将具体问题的程序框图转化为程序语句的过程,理解几种基本算法语句——输入语句、输出语句、赋值语句、条件语句、循环语句,进一步体会算法的基本思想。 二、SCILAB平台简介
1. SCILAB是由INRIA(法国国立信息与自动化研究院)和ENPC (法国国立桥梁学院)开发的开放源码的科学计算自由软件,与MATLAB具有相同的前身,都来自80年代美国新墨西哥大学计算机科学系主任Cleve Moler编写的最早的MATLAB。目前的SCILAB出到4.0版,拥有非常丰富的绘图功能,同时也能处理矩阵、数值运算、信号处理、程序设计等。网络上也有不少人为它写了许多延伸函数库、丰富了它的功能。
2. 优势:(1)开源、免费,可合法使用;(2)简单易学;(3)功能性、通用性、拓展性;(4)可持续性发展。 三、基本算法语句 1. 赋值语句
格式:变量名=表达式 功能:给一个变量赋值
示例:a=3;b=4;c=5;s=(a+b+c)/2;
计数器:n=1;n=n+1;交换两个变量a,b的值 2. 输入语句
格式:变量名=input(\输入提示语\ 功能:给一个变量从键盘上输入变量值 示例:a=input(\;m=input(\; 3. 输出语句
格式:print(%io(2),输出内容) 功能:从屏幕上输出 示例:print(%io(2),a,b,c)
备注:(1)多个变量值倒序输出(2)disp语句也表示输出
第1页 共8页
4. 条件语句 格式:
if 表达式 语句序列1; else 语句序列2; end if 表达式 语句序列; end if 表达式 语句序列1; elseif 表达式 语句序列2; else 语句序列3; end 功能:根据给定条件是否满足决定所要执行的语句 示例:
if x>1 f=10; else f=0; end if x>1 f=10; end if x>1 f=10; elseif x<-1 f=-10; else f=0; end 5. 循环语句 格式:
for 循环变量=初值:步长:终值 循环体; end 功能:根据给定条件重复计算 示例:
S=0; for i=1:100 S=S+i; end end i=1;S=0; while i<=100 S=S+i;i=i+1; end while 表达式 循环体; 第2页 共8页
例1 任给一个实数,求它的绝对值。 解:算法 S1 输入一个实数x S2 如果x≥0,f(x)=x 否则,f(x)=-x S3 输出f(x) 程序语句 x=input(“x=”); if x>=0 y=x; else y=-x; end print(%io(2),y); 例2 火车托运行李的收费方法为:当行李的重量不大于20kg时,按每千克0.35元收费;当行李的重量超过20kg时,20kg的部分按每公斤0.35元收费,超出的部分则每公斤按0.65元收费.试编写程序.
解:算法 S1 输入实数x S2 如果0<x≤20,则 y=0.35x; 否则y=0.35×20 + 0.65(x-20); S4 输出y. 程序语句 x=input(\if (x>0 & x<=20) y=0.35*x; else y=0.35*20+0.65*(x-20); end print(%io(2),y); 例3 观察下列运行程序,说明程序的功能。
x=input(“x”); if (x>9 & x<100) a=floor(x/10); b=modulo(x,10); x=10*b+a;
?0.35x,0?x?20y???0.35?20?0.65(x?20),x?20第3页 共8页
end
print(%io(2),x);
例4 已知现在人口总数为10000,人口的增长率为0.1,预测第5年后人口的总数?
解:程序语句 P=10000;R=0.1;T=5; t=1; while t<=T I=P*R; P=P+I; t=t+1; end
print(%io(2),P);
例5 某玩具厂2006年的生产总值为200万元,如果计划今后每年的年增长率为5%。计算最早能在哪一年年生产总值超过300万元?写出算法程序。
解: 依题意,从2006年开始,经过x程序语句 年后生产总值为200(1+5%)x. n=2006; a=200; p=1.05; 因此可以把2006年的生产总值赋while a<=300 给a,然后对其进行累乘,用n作为计 a=a*p; 数变量,进行循环直到a的值超过300 n=n+1; 万元。 end disp(n); disp(a);
例6 计算
1?11111???...??23499100解:程序语句 S=0;p=-1; for i=1:100 p=(-1)*p; S=S+p/i;
第4页 共8页
共分享92篇相关文档