MATLAB 哪位大佬帮我试试这个程序

MATLAB 哪位大佬帮我试试这个程序,第1张

帮你修改了一下,可以运行了

function daba

%靶的制作和打靶得分

n=10 %环的个数

cc=jet(n)

th=(0:360)*pi/180 %角度向量

figure %创建图形窗口

axis equal %使坐标间隔相等

hold on %保持图像cc='gcmyrbgcmy' %颜色字符(1)

for i=1:n %按环数循环(2)

    x=(n+1-i)*cos(th) %横坐标

    y=(n+1-i)*sin(th) %纵坐标

    fill(x,y,cc(i,:)) %填色(3)

end %结束循环

s=0 %总分清零

ht1=text(-n,n-1,'','FontSize',16) %取文本句柄(4)

ht2=text(-n,-n+1,'','FontSize',16) %取文本句柄(4)

for i=1:n %按次数循环

    [x,y]=ginput(1) %获取坐标(5)

    plot(x,y,'k.','MarkerSize',20) %画点

    set(ht1,'String',['次数:',num2str(i)])%设置次数字符串(6)

    r=sqrt(x^2+y^2) %求射击点靶心距离

    m=n-floor(r) %计分(7)

    if m>0 %如果分数大于零(8)

        text(x,y,num2str(m),'FontSize',16)%显示分数(9)

        s=s+m %累加分数

        set(ht2,'String',['总分:',num2str(s)])%设置总分字符串(10)

    end %结束条件

    % %[y,fs]=wavread('f:\1.wav')

    % %wavplay(y,fs)

end %结束循环

if s<85

    %[y,fs]=wavread('f:\2.wav')

    %wavplay(y,fs)

    text(5,10,'[太菜了,继续锻炼吧!]','FontSize',16)

end

if s>=85

    %[y,fs]=wavread('f:\3.wav')

    %wavplay(y,fs)

    text(5,10,'哇,好强啊!','FontSize',16)

end

clear %清除变量

n=10 %环的个数

th=(0:360)*pi/180%角度向量

h=figure %创建图形窗口

axis equal %使坐标间隔相等

hold on%保持图像

cc='gcmyrbgcmy' %颜色字符(1)

for i=1:n %按环数循环(2)

x=(n+1-i)*cos(th)%横坐标

y=(n+1-i)*sin(th)%纵坐标

fill(x,y,cc(i))%填色(3)

end

zdir=[0 0]

obj = get(gca,'children')

while 1

rotate(obj,zdir,1)

pause(0.1)

end

试试看rotate

给你一个湖南大学物电院周群益老师的模拟打靶的程序,可以参考啊!

%靶的制作和打靶得分

clear                                  %清除变量

n=10                                  %环的个数

th=(0:360)*pi/180                     %角度向量

figure                                 %创建图形窗口

axis equal                             %使坐标间隔相等

hold on                                %保持图像

cc='gcmyrbgcmy'                       %颜色字符(1)

for i=1:n                              %按环数循环(2)

x=(n+1-i)*cos(th)                 %横坐标

y=(n+1-i)*sin(th)                 %纵坐标

fill(x,y,cc(i))                    %填色(3)

end                                    %结束循环

s=0                                   %总分清零

ht1=text(-n,n-1,'','FontSize',16)     %取文本句柄(4)

ht2=text(-n,-n+1,'','FontSize',16)    %取文本句柄(4)

for i=1:n                              %按次数循环

[x,y]=ginput(1)                   %获取坐标(5)

plot(x,y,'k.','MarkerSize',20)     %画点

set(ht1,'String',['次数:',num2str(i)])%设置次数字符串(6)

r=sqrt(x^2+y^2)                   %求射击点靶心距离

m=n-floor(r)                      %计分(7)

if m>0                             %如果分数大于零(8)

text(x,y,num2str(m),'FontSize',16)%显示分数(9)

s=s+m                         %累加分数

set(ht2,'String',['总分:',num2str(s)])%设置总分字符串(10)

end                                %结束条件

end                                    %结束循环


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/11543853.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存