实验3MATLAB程序设计
MATLAB实验三 选择结构程序设计
MATLAB实验报告
学院:光电学院
班级:073-1
姓名:***
学号:************
实验三 选择结构程序设计
1. 求分段函数的值。
y=⎪⎩⎪⎨⎧--≠≠<≤+--≠<-+其他
及且且,13250,653x 0,6222x x x x x x x x x x
用if 语句实现,分别输出x=-5.0,-3.0,1.0,2.0,2.5,3.0,5.0时的值。
程序设计:
x=[-5.0,-3.0,1.0,2.0,2.5,3.0,5.0]
if x<0&x~=-3
y=x.*x+x-6;
elseif x>=0&x<5&x~=2&x~=3
y=x.*x-5*x+6;
else y=x.*x-x-1
end
y
运行结果:
x =
-5.0000 -3.0000 1.0000 2.0000 2.5000 3.0000 5.0000
y =
29.0000 11.0000 -1.0000 1.0000 2.7500 5.0000 19.0000
y =
29.0000 11.0000 -1.0000 1.0000 2.7500 5.0000 19.0000
2.输入一个百分制成绩,要求输出成绩等级A 、B 、C 、D 、E 。其中90分~100分为A ,80分~89分为B ,70分~79分为C ,60分~69分为D ,60分一下为E 。
要求:
(1)分别用if 语句和switch 语句实现。
用switch 语句实现
程序设计:
score=input('请输入百分制成绩:');
switch fix(score/10)
实验三Matlab程序设计基本方法
MATLAB 实验报告
学生姓名:王朝 学号:1314080213 专业班级:电子信息科学与技术二班
实验类型:□ 验证 □
√ 综合 □ 设计 □ 创新 实验日期: 实验成绩: 一.实验名称
实验3 MATLAB 语言的程序设计
二 实验目的:
1、熟悉MATLAB 程序编辑与设计环境
2、掌握各种编程语句语法规则及程序设计方法
3、函数文件的编写和设计
4、了解和熟悉跨空间变量传递和赋值
三、实验内容:
练习A
1、熟悉MATLAB 程序编辑与设计环境
2、用for 循环语句实现求1~100的和。
3、用for 循环语句实现编写一个求n 阶乘的函数文件。
4、Fibonacci 数组的元素满足Fibonacci 规则: 且 ,现要求该数组中第一个大于10000的元素。 练习B
思考题
),2,1( =k 12+++=k k k a a a 121==a a
4、已知一维数组A=[2,4,5,8,10],B=[4,6,9,3,4],用for循环语句实现∑
=
+ -
n
i
i
n
i
B
A
1
1
。
求和函数可用sum()。.
5、利用for循环求1!+2!+3!+ … +5!的值。. 四.实验环境
PC微机
MATLAB系统
五.实验内容和步骤
1、熟悉MATLAB 程序编辑与设计环境
2、用for 循环语句实现求1~100 的和
3、用for 循环语句实现编写一个求n阶乘的函数文件
4、找到一个n!>10100的值(利用上题的n 阶乘函数文件)第一种使用while循环如下
第二种使用for循环如下
5、编写一个乘法表(9 ×9 )
六.实验总结
1,通过本次实验,我熟悉了熟悉MATLAB 程序编辑与设计环境,掌握了一些基本的编程语句语法规则及程序设计方法,发现matlab 的编程语句语法规则及程序设计方法和C++有很多的相似的地方,由于以前学过C++,所以感觉学起来很比较的简单,比如说for循环结构,while循环结构,if-else-and分支结构和swith-else结构等等。2,通过这次实验,我学会了M文件的编辑和调用,感觉M文件的建立很有用,比如内容4就是用了内容4建立起来的M文件!
实验3 MATLAB程序设计
实验3 MATLAB程序设计
实验3 MATLAB程序设计
一、实验目的
本实验的主要目的是通过实际的编程练习,掌握和熟悉MATLAB 程序设计的基本知识和技巧。通过本实验的学习,能够灵活使用MATLAB进行程序设计,解决实际问题。
二、实验内容
1. MATLAB语言基础
在本部分,我们将介绍MATLAB语言的基本语法和常用函数的使用方法。
1.1. 变量定义和赋值
在MATLAB中,可以通过简单的语法来定义和赋值变量。例如,`a = 10;`表示将值10赋给变量a。,MATLAB也支持定义矩阵和向量。
1.2. 数学运算
MATLAB提供了丰富的数学运算函数,如加法、减法、乘法、除法等等。通过这些函数,我们能够进行各种数学运算。
1.3. 条件语句和循环语句
条件语句和循环语句在程序设计中非常重要。在MATLAB中,我们可以使用if-else语句来进行条件判断,使用for循环和while 循环来实现循环操作。
2. MATLAB绘图功能
MATLAB的绘图功能非常强大,可以用于绘制各种图形,如曲线图、散点图、柱状图等等。
2.1. 绘制曲线图
在MATLAB中,通过`plot`函数可以绘制曲线图。我们可以指定要绘制的曲线的x和y坐标,并可以设置其他参数,如线型、颜色等。
2.2. 绘制散点图
通过`scatter`函数可以绘制散点图。散点图用于展示数据的分布情况,非常直观。
2.3. 绘制柱状图
通过`bar`函数可以绘制柱状图。柱状图用于比较不同类别或不间点的数据。
3. MATLAB文件操作
在实际的程序设计过程中,常常需要读取和写入文件。MATLAB 提供了相关的文件操作函数,方便我们进行文件的读写操作。
matlab实验三答案详解
实验三选择结构程序设计实验内容
1.程序代码
function f(x)
if x<0&x~=-3
y=x*x+x-6;
elseif x>0&x<5&x~=2&x~=3
y=x*x-5.*x+6;
else
y=x*x-x-1
end
y
运行结果
>> f(-7)
y =
36
>> f(2.5)
y =
-0.2500
>> f(90)
y =
8009
2.程序代码
score=input('分数=');
if score<=100&score>=0
switch fix(score/10)
case{9,10}
grade='A';
case{8}
grade='B';
case{7}
grade='C';
case{6}
grade='D';
otherwise
grade='E';
end
grade
else
disp('输入有误,请输入正确的百分制成绩');
end
运行结果
>> 分数=56
grade =
E
>> f
分数=345
输入有误,请输入正确的百分制成绩
3.程序代码
time=input('工作时间=');
switch time
case{time>120}
wage=(time-120)*(1+15/100)*84+120*84;
case{time<60}
wage=time*84-700;
otherwise
wage=time*84
end
运行结果
>> f
工作时间=150
wage =
12600
>> f
工作时间=50
wage =
matlab实验报告(实验3)
开课学院及实验室:机电学院2012年11 月30日
(1)、利用逐个输入法、冒号生成法以及定数线性采样法创建以下一维数组:
X1=[1,2,3,4,5,6,7,8,9,10]
(2)、利用冒号生成法创建以下数组:X2=(1,2,3,4,9,8,7,6,5)
(3)、利用定数对数生成法创建一个第一个元素为10,最后一个元素为100,元素个数为51的
一维数组X3。
2、一维数组子数组的寻访和赋值
以冒号生成法创建一个第一个元素为0,步长为0.1,最后一个元素为2的一维数组X4,并写
出寻访或赋值的以下指令:
a、寻访X4的第6个元素;
b、同时寻访X4的第2、5、7
个元素;
c、寻访前3个元素组成的子数组;
d、寻访除前3个元素外的全部的其他元素;
e、由后三个元素倒排构成的子数组;
f、由大于0.5的元素构成的子数组;
g、把第三个元素重新赋值为0;
把当前x数组的第一、四个元素都赋值为1。
3、二维数组的创建,子数组的寻访和赋值
创建一个M文件(文件名为myMatrix.m),定义一个二维数组A,第一行为11至15、30至26共10个元素,第二行为1~10共10个元素。然后运行改M文件,生成数组AM,并按以下方式寻访该数组:
(1)寻访A的第一行;
(2)寻访A的第三列;
(3)同时寻访A的第三列和第五列;
(4)把A的各列按自左至右的次序,首尾相接生成一个“一维长列”;
(5)把A的第1行第1列、第2行第2列以及第1行第5列的元素重新赋值为10、20、30;(6)把A的第二行赋值为11~20。
4、标准数组的生成和数组操作函数
实验三MATLAB程序设计
2014秋2012级《MATLAB程序设计》实验报告班级:软件C121姓名:冯杨腾学号:125692
实验三 MATLAB程序设计
一、实验目的
1、掌握建立和执行M文件的方法。
2、掌握选择结构、多分支选择结构程序的编程方法。
3、掌握多种循环结构程序的编程方法。
4、掌握定义函数文件和调用函数文件的方法。
二、实验内容
1、MATLAB M文件的创建与使用。
(1)建立自己工作目录,如D:\MATLAB。在File菜单中,单击
Set Path菜单项,在弹出对话框中建立目标文件夹,:单击Add Folder按钮,将自己的工作目录D:\MATLAB添加到搜索目录
之中,按Save按钮保存,如图1。
图1 工作目录设置
(2)在M文件编辑器中编制命令行文件。在File菜单中,单击
New—>M-File,弹出M文件编辑器,如图2:
图2 编辑器
在编辑器中输入如下命令程序:
%求小于2000且为2的整数次幂的正整数。
f(1)=2;
k=1;
while f(k)<1000
f(k+1)=f(k)*2;
k=k+1;
end
f,k
调试后,将其以test1.m形式保存在D:\MATLAB中。
(3)命令行程序运行。进入命令窗口,键入test1,观察运行结果:
f =
Columns 1 through 9
2 4 8 16 32 64 128 256
512
Column 10
1024
k =
10
(4)按上述步骤,在在编辑器中输入如下函数文件:
function f=tt(n)
%求小于任何正整数且为2的整数次幂的正整数。 %c=n(n)
实验三(2)MATLAB程序设计并且附有答案
实验三(2)、MATLAB程序设计
一、实验目的
1、掌握建立和执行M文件的方法
2、掌握利用for语句和while语句实现选择结构的方法
二、实验内容及步骤
1、分别使用for循环语句和while循环语句找出最小的n值,
使得n!>10100,并求出n!。要求显示的结果为
n=70
n!=+100>1e100
或
70!=+100>1e100
用IF语句执行如下:
s=1;
for n=1:100
s=s*n;
if(s>10^100)
break;
end
end
str1=['n=',num2str(n)];
str2=['n!=',num2str(s)];
disp(str1)
disp(str2)
用WHILE语句执行如下:
n=1;
s=1;
while(s<=10^100)
s=s*n;
n=n+1;
end
str1=['n=',num2str(n-1)];
str2=['n!=',num2str(s)];
disp(str1)
disp(str2)
2、已知 f1=1,n=1
f2=0,n=2
f3=1,n=3
f n=f n-1-2f n-2+f n-3,n>3
求f1 ~ f50中:
1)最大值和最小值及它们的位置,各数之和(最大值给变量MAX,其位置给变量x,最小值给变量MIN,其位置给变量y,各数之和给变量SUM)。
2)正数、零、负数的个数(依次赋值给变量positive,zero,negative)。
clear;
f(1)=1;
f(2)=0;
f(3)=1;
for n=4:50
f(n)=f(n-1)-2*f(n-2)+f(n-3);
实验3 MATLAB程序设计
实验3 MATLAB程序设计
电子信息工程系实验报告
课程名称: MATLAB语言成绩:实验工程名称:实验3 MATLAB程序设计实验时间:2022-4-6 指导教师〔签名〕: 1. 实验目的学习函数的编制,掌握MATLAB的编程应用。通过不同的程序结构和不同的实际编程问题,掌握MATLAB 的编程方法。 2.实验环境
硬件:PC机,根本配置CPU PII以上,内存4G以上;软件:Matlab 版本7.1 3.实验原理
MATLAB是一个专门的数学软件,特别是对矩阵进行操作,可以方便快捷的进
行矩阵运算,从而简化了人们的脑力,同时能更加准确地计算结果。
4.实验内容及结果分析
4.4编写一个程序,计算出坐标系中用户指定两点(X1,Y1)和(X2,Y2)之间的
距
离。要求有输入、输出及其相关提示。编写程序如下: clc; clear;
X1=input('please input X1=');
Y1=input('Y1='); X2=input('X2=');
Y2=input('Y2=');
s=sqrt((X1-X2) +(Y1-Y2) );
fprintf('两点距离'); disp(s)
4.5双曲余弦的定义如下:,
编写一个程序,计算出用户指定的x 的值对应的双曲余弦值。用这个程序计
算双曲余弦值的假设干值,并和MATLAB 中的内建函数cosh(x)得到的值比拟看看是否完全相同。并用MATLAB 打印出这个函数的图象。编写程序如下:
clc; clear;
x=input('please input x='); coshx=(exp(x)+exp(-x))/2; disp(coshx) x=1, cosh=1.5431 x=2,cosh=3.7622 x=3,cosh=10.0677
实验三MATLAB的程序设计
桂林电子科技大学
数学与计算科学学院实验报告
M函数文件:
function lx12(a,b,c)
x=[-5:5/1000:5];
y=a.*x.^2+b.*x+c;
plot(x,y)
运行函数:
lx12(1,1,1)
f x的函
2. 编程实现:输入x的值,计算函数()
-
(0.7),(0.5),(1.5)
f f f
M函数文件:
3 MATLAB程序设计
变量
与C语言的区别,变量不需要事先定义; 变量命名以字母开头,区分大小写; 常量:
pi eps:浮点运算的相对精度,2-52 NaN inf i(j) realmin:最小的正实数,2-1022 realmax:最大的正实数,21023
变量
不能把函数名用作变量名,否则在没有从内存 中清除该变量的情况下不能调用该函数,要测 试变量名是否已用作函数名,可键入 which – all functionname 不能用MATLAB预留的关键字作变量名,可用 iskeyword列出所有关键字,如'break' 'case‘ 'catch' 'continue' 'else‘ 'elseif’ 'end' 'for' 'function' 'global' 'if' 'otherwise’ 'persistent' 'return' 'switch' 'try' 'while'
程序调试
dbstatus:显示断点信息,格式: dbstatus 列出所有的断点; n=dbstatus 通过一个M×1的结构体n返回断点 信息。 dbstep (nlines):执行当前M文件的下一行/ 下n行可执行语句; dbstep in:当执行到下一个可执行语句时,如果 其中包含对另一个函数的调用,此命令将从被调 用的函数文件的第一个可执行语句执行;
实验3 MATLAB程序设计
实验3 MATLAB程序设计实验3 MATLAB程序设计
实验目的
1. 学习使用MATLAB进行程序的设计与实现;
2. 掌握MATLAB函数的编写与调用方法;
3. 掌握MATLAB的编程基础知识。
实验内容
编写一个MATLAB程序,实现以下功能:
1. 输入一个正整数n;
2. 判断该正整数是否为素数;
3. 如果是素数,输出该数;
4. 如果不是素数,
输出该数的所有质因数;
输出该数的最大质因数;
输出该数的因数个数。
实验步骤
3. 编写一个函数`isPrime`,用于判断一个数字是否为素数。函数定义如下:
matlab
function result = isPrime(n)
result = 1; % 假设n是素数
if n <= 1
result = 0; % 排除小于等于1的数字
return;
end
for i = 2:sqrt(n)
if mod(n, i) == 0
result = 0; % n可以被i整除,所以n不是素数
break;
end
end
end
4. 在主函数中,调用`isPrime`函数判断输入的数字是否为素数,并输出结果;
5. 如果输入的数字不是素数,编写一个函数`primeFactors`,用于计算数字的所有质因数,并输出结果。函数定义如下:matlab
function primeFactors(n)
factors = ; % 存储质因数的数组
for i = 2:n
while mod(n, i) == 0
factors = [factors i]; % i是n的质因数
n = n / i;
matlab 实验教程 实验三
实验三
实验目的:
1.学习使用M文件编写程序,以及函数文件的编写。
2.学习在MATLAB中使用符号数学工具箱。
3.学习在MATLAB中用数值法和符号法解方程。
4.学习在MATLAB中的矩阵分解方法。
实验内容:
1.M文件的编写
(1)将实验一中的任一个练习编写成M文件,并根据command窗口中的提示调试改错。
要求将Page 30的例2-4-5编写成M文件
实验具体步骤:
新建New M-File,在M文件中输入以下语句:
%构成hilbert矩阵
clear,close all
format rat
n=input('n=');
for i=1:n
for j=1:n
h(i,j)=1/(i+j-1);
end
end
h
保存文件并运行此文件。
命令窗口显示如下:
n=3
h =
1 1/
2 1/3
1/2 1/3 1/4
1/3 1/4 1/5
(2) 编写一个函数文件(注意:函数名称和文件名)
参见课本Page49
实验具体步骤:
新建New M-File ,在M 文件中输入以下语句: function y=mean(x)
%对于向量,mean(x)返回该向量x 中各元素的平均值
%对于矩阵,mean(x)是一个包含各列元素平均值的行向量
[m,n]=size(x);
if m==1 m=n;end %处理单行向量
y=sum(x)/m
保存文件,必须以mean.m 保存此文件。
调用mean 函数,查看结果。
命令窗口显示如下:
>> x=[1 2 3;4 5 6;7 8 9;]
x =
1 2 3
4 5 6
7 8 9
>> mean(x);
matlab 实验三 matlab程序设计与优化
matlab 实验三 matlab程序设计与优化
Matlab是一种高级的计算机编程语言,广泛应用于科学、工程、金融和其他领域。在Matlab实验三中,我们将学习Matlab程序设计与优化。本文将介绍Matlab实验三的内容和要求,并提供一些有用的技巧和建议,帮助读者更好地完成实验。
实验三的主要内容包括:
1. Matlab程序设计基础
2. Matlab程序优化技巧
3. Matlab代码调试方法
4. Matlab性能分析工具
5. 实例分析与练习题
下面我们将逐个介绍这些内容。
1. Matlab程序设计基础
在本节中,我们将学习如何使用Matlab编写简单的程序。以下是一
些重要的概念和技巧:
1)变量和数据类型:在Matlab中,变量可以存储不同类型的数据,如数字、字符串、逻辑值等。常见的数据类型包括double、char、logical等。
2)运算符:Matlab支持各种数学运算符,包括加减乘除、幂运算等。此外,还有逻辑运算符(如and、or)和比较运算符(如==、~=)。
3)控制结构:控制结构可以控制程序执行流程。常见的控制结构包括if语句、for循环和while循环。
4)函数:函数是一种可重复使用的代码块,可以接受输入参数并返回输出结果。Matlab中有很多内置函数,也可以编写自己的函数。
2. Matlab程序优化技巧
在本节中,我们将学习如何优化Matlab程序以提高其性能。以下是
一些重要的技巧:
1)向量化:向量化是一种将循环操作转换为矩阵操作的技术。这样可
以减少程序执行时间,并且使代码更简洁。
实验3 MATLAB程序设计
实验3 MATLAB程序设计
实验3 MATLAB程序设计
一、实验目的
通过编写MATLAB程序,掌握基本的程序设计能力,提高对于MATLAB语言的熟悉度。
二、实验内容
本次实验包含以下三个部分:
1. 编写一个程序,计算前n项的斐波那契数列。
2. 编写一个程序,求解一个二次方程的根。
3. 编写一个程序,实现两个矩阵的相乘。
三、实验步骤
1. 斐波那契数列
编写一个程序,计算前n项的斐波那契数列。斐波那契数列的前两个数为0和1,之后的每一项都是前两项的和。
matlab
function fibonacci(n)
fib = zeros(1, n);
fib(1) = 0;
fib(2) = 1;
for i = 3:n
fib(i) = fib(i-1) + fib(i-2);
end
disp(fib);
end
2. 二次方程的根
编写一个程序,求解一个二次方程的根。用户输入三个系数a、b 和c,程序返回求解得到的根。
matlab
function [x1, x2] = quadraticEquation(a, b, c)
delta = b^2 4ac;
if delta < 0
fprintf('该方程无实数根\
');
elseif delta == 0
x1 = -b / (2a);
x2 = x1;
fprintf('该方程有一个重根:x = %.2f\
', x1);
else
x1 = (-b + sqrt(delta)) / (2a);
x2 = (-b sqrt(delta)) / (2a);
fprintf('该方程有两个根:x1 = %.2f, x2 = %.2f\ ', x1, x2);
实验3MATLAB程序设计
实验3MATLAB程序设计
实验目的:
学习使用MATLAB进行程序设计,掌握MATLAB中的函数、循环和条件语句的使用。
实验内容:
设计一个MATLAB程序,实现以下功能:
1.根据给定的身高和体重计算BMI指数;
2.根据BMI指数判断体重状况,分为偏瘦、正常、超重和肥胖四种情况;
3.将计算得到的BMI指数和体重状况进行输出。
实验步骤:
1.首先,创建一个新的MATLAB脚本文件,命名为"BMI.m";
2. 定义两个变量,height表示身高(单位:米),weight表示体重(单位:千克);
3.根据给定的身高和体重计算BMI指数,使用公式:
BMI = weight / (height^2);
4. 利用MATLAB中的条件语句,判断BMI指数对应的体重状况,将结果存储在一个字符串变量status中,例如:
当BMI < 18.5时,status = '偏瘦';
当18.5 <= BMI < 24时,status = '正常';
当24 <= BMI < 28时,status = '超重';
当BMI >= 28时,status = '肥胖';
5. 输出计算得到的BMI指数和体重状况,使用MATLAB中的disp函数,例如:
disp(['BMI指数为:', num2str(BMI)]);
disp(['体重状况为:', status]);
6.保存并运行脚本文件,输入身高和体重,观察输出结果。
实验注意事项:
1.身高应为正数,体重应为非负数;
2.在计算BMI指数时,注意身高的单位应与体重的单位相匹配;
实验三MATLAB的程序设计
桂林电子科技大学
数学与计算科学学院实验报告
图像:
(2)M 函数文件:
function lx12(a,b,c)
x=[-5:5/1000:5];
y=a.*x.^2+b.*x+c;
plot(x,y)
运行函数:
lx12(1,1,1)
图像:
2. 编程实现:输入x 的值,计算函数()f x 的函数值,其中21,0()1,11,1x x f x x x x ⎧+<⎪=≤<⎨⎪≥⎩
,并计算
(0.7),(0.5),(1.5)f f f -
M 函数文件:
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1,编写M 函数实现求一个数是否为素数,再编写一主程序(脚本文件),要求通过键盘输入一个整数,然后调用判断素数函数,从而确定它是否素数。
x=input('请输入一个整数x:');
if myprime(x)
disp('您输入的整数x是一个素数。')
else
disp('您输入的数x不是一个素数。')
end
function y=myprime(x)
y=1;
for i=2:fix(sqrt(x))
if mod(x,i)==0
y=0;
end
end
2,编写M 函数统计一数值中零的个数,然后编写脚本文件,实现统计从1—2007 中零的总个数。
function num=number0(a) %统计十进制数值中0的个数
sa=num2str(a);%将数值装化为字符串
num=length(find(sa=='0'));% ));%求取字符串中'0’的个数
y=0;
for a=1:2006
num=number0(a);
y=num+y;
end
disp(y)
504
3,编写程序计算x∈[-3,3],字长0.01:并画出曲线x = -3:0.01:3;
y=zeros(size(x));
for i = 1:length(x)
if -3<= x(i)& x(i)<=-1
y(i)=(-x(i).^2-4*x(i)-3)/
2;
elseif -1<= x(i) &
x(i)<=1
y(i)=-x(i).^2+1;
elseif 1<=x(:,i)<=3
y(i)=(-x(i).^2+4*x(i)-3)/2; end
end
plot(x,y) -3-2-10123
4 ch= menu('please choose a number','1','2','3','4')
switch ch
case 1
a=10-20*rand(1);
case 2
a=5-10*rand(1);
case 3
a=1-2*rand(1);
case 4
a=randn(1);
end
disp(a)
5编写良好的用户界面程序,完成输入全班学生某学期6门课程(任意指定)的成绩,并按学分数分别为2、3、2、4、2、5,进行加权平均,计算出每个学生的加权平均。
a=input('请依次输入语言,数学,英语,物理,化学,生物成绩;如:[68 72 65 68 35 79]:');
w=[2 3 2 4 2.5 1];
sum=0;w1=0;
for e=1:6
w1=w1+w(e);
end
for j=1:6
sum=sum+a(j).*w(j);
end
y=sum./w1;
disp(y)
6、企业发放的奖金按个人完成的利润提成。分段提成比例K1为:当I≤10万元时K1=10%;当10<I≤20万元时,K1=5%;当20<I≤40万元时,K1=2%;当I>40万元时,I=1%。
function y=lirun(x)
if x<=10
y=x*0.1;
elseif x>10&&x<=20
y=(x-10)*0.05+10*0.1;
elseif x>20&&x<=40
y=(x-20)*0.02+10*0.05+10*0.1;
elseif x>40
y=(x-40)*0.01+10*0.02+10*0.05+10*0.1;
End
X=25;
Y=lirun(x)
9、有一分数序列2/1,3/2,5/3,8/5,13/8,21/13……求前15项的和。
d=0 ;
a(1)=2;
b(1)=1;
a(2)=3;
b(2)=2;
c(1)=a(1)./b(1);
c(2)=a(2)./b(2);
for i=3:15
a(i)=a(i-2)+a(i-1);
b(i)=b(i-2)+b(i-1);
c(i)=a(i)./b(i);
end
for j=1:15
d=d+c(j);
end
disp(d)
24.5701
10、有n个人围成一圈,按列号编号。从第一个人开始报数,数到m时该人退出,并且下一个人从1开始报数,求出出圈人的顺序。
function y=shaixuan(a,b)
n=a;
x=[1:n];
i=0;m=0;j=1;
while(n>0)
i=i+1;m=m+1;
if(m==b)
k(j)=x(i);j=j+1;n=n-1;
for(v=i:n)
x(v)=x(v+1);
end
m=0;i=i-1;
end
if(i==n)
i=0;
end
end
y=k;
y=shaixuan(20,7)
y =
7 14 1 9 17 5 15 4 16 8 20 13 11 10 12 19 6 18 20 3