您好,欢迎访问三七文档
当前位置:首页 > 财经/贸易 > 资产评估/会计 > MATLAB基础习题第五章习题答案
第五章习题1.读取一副图像,如果是彩色图则转化为灰度图;对得到的灰度图做如下处理:(1)将灰度值大于200的像素值全部设置为200;(2)将灰度值小于100的像素值全部设置为100;(3)比较原图和经过步骤(1)和(2)处理后得到的图的差异答:%%原图的读入clc;clearall;closeall;I=imread('tulip.jpg');subplot(1,3,1);imshow(I);title('原图')%%灰度图的保存与显示I_gray=rgb2gray(I);imwrite(I_gray,'1_gray.bmp','bmp');subplot(1,3,2);imshow(I_gray);title('灰度图')%%变换后的灰度图I1=I_gray;I1(I_gray200)=200;I1(I_gray100)=100;subplot(1,3,3);imshow(I1);title('变换后的图')改变后,图像由彩色变成灰色,色彩较为单一,且变得不是那么清晰。2.将如下字符串中的大写字符转换为小写,小写转换为大写。Matlabisausefulsoft.ItiswellusedinmanyAreas.答:clc;clearall;closeall;a='Matlabisausefulsoft.ItiswellusedinmanyAreas.';b=double(a);c=find(a='a'&a='z');d=find(a='A'&a='Z');b(c)=b(c)-32;b(d)=b(d)+32;char(b)ans=mATLABISAUSEFULSOFT.iTISWELLUSEDINMANYaREAS.3.score.txt文件中记录了某个班级的同学的期末成绩,编写程序读取该文件的内容,实现如下功能:(1)统计90以上学生的人数,输出90分以上学生的名单。(2)统计不及格的学生的人数,输出其名单(及格分数为60分或以上)。(3)画出全体同学的分数分布的统计直方图。答:%%数据输入模块clc;clearall;closeall;ST=importdata('score.txt');s1=ST.data;s2=ST.textdata;%%%%统计90分以上的人数x=0;X=[];fori=1:20ifs1(i)90X=[X;s2(i+1,3)];x=x+1;endend%%%%统计60分一下的人y=0;Y=[];fori=1:20ifs1(i)60Y=[Y;s2(i+1,3)];y=y+1;endend%%%%显示模块disp('90分以上的人有:')disp(x)disp(X)disp('60分以下的人有:')disp(y)disp(Y)hist(s1')xlabel('分数');ylabel('人数');90分以上的人有:6'地方''供货''打分''统一''明天''不同'60分以下的人有:5'帮你''该行''回顾''如果''他人'4.编程实现剪刀石头布的游戏:(1)程序开始,屏幕自动提示用户输入剪刀、石头、布中的一种;(2)用户输入后,电脑随机的出“剪刀、石头、布”中的一种,并显示在屏幕上;(3)电脑给出游戏的胜负,然后提示用户是否继续玩该游戏:如果用户输入yes,则继续,若输入no则退出。答:%%%该模块实现石头剪刀布的功能,石头剪刀布由用户输入,电脑实际出,然后判断输赢,然后根据%用户判断是否继续,根据用户判断进行下一步的操作clc;clearall;closeall;n=1;whilen==1a=0;b='石头、剪刀、布';you=input('请选择,石头(1),剪刀(2),布(3):');whileyou~=1&you~=2&you~=3disp('输入错误,请重新输入:');you=input('请做出你的选择,石头(1),剪刀(2),布(3):');enddisp('您的选择是:');disp(b(2*you-1:2*you));compute=ceil(3*rand(1,1));disp('电脑的选择是:');disp(b(2*compute-1:2*compute));%%%%输赢判断模块%如果电脑与选手出的一样,则显示平手,否则根据石头剪刀布的规则来判断输赢ifyou==computedisp('平手');endswitch(you-compute)case{1,-2}disp('您输了');case{-1,2}disp('您赢了');end%%%是否继续判别模块n=input('是否继续玩该游戏?否(0),是(1)');whilen~=0&n~=1disp('您输入的不是正确数字,请正确输入');n=input('是否继续玩该游戏?否(0),是(1)');endend请选择,石头(1),剪刀(2),布(3):1您的选择是:石头电脑的选择是:、剪您赢了是否继续玩该游戏?否(0),是(1)1请选择,石头(1),剪刀(2),布(3):2您的选择是:、剪电脑的选择是:石头您输了是否继续玩该游戏?否(0),是(1)05.编写一个日程提醒程序实现如下功能:(1)如果当前时间为7-8点则提醒用户,该吃早饭了;(2)如果当前时间为9-11点则提醒用户,该学习了;(3)如果当前时间为12-14点则提醒用户,该午休了;(4)如果当前时间为14-17点则提醒用户,该锻炼了;答:%%程序为:remind.fig、remind.m6.求解六元线性方程组:(1)方程组的系数矩阵由用户通过键盘输入;(2)得到系数矩阵后给出方程的解;(3)程序要具有友好性答:%%%该模块实现的功能是:求解六元线性方程组,方程组的系数矩阵由用户通过键盘输入;得到系数矩阵后给出方程的解;clc;clearall;closeall;%%%方程输入模块x=inputdlg({'第一个方程系数','第二个','第三个','第四个','第五个','第六个'});A=cell2mat(x);y=inputdlg({'第一个方程等号右边数','第二个','第三个','第四个','第五个','第六个'});%%%方程计算模块B=cell2mat(y);result=A\B;%%%方程显示模块disp('六元方程组的解为:');x1=result(1)x2=result(2)x3=result(3)x4=result(4)x5=result(5)x6=result(6)
本文标题:MATLAB基础习题第五章习题答案
链接地址:https://www.777doc.com/doc-5951612 .html