求用MATLAB编程的小游戏代码!! 5
- 你的回答被采纳后将获得:
- 系统奖励15(财富值+成长值)+难题奖励10(财富值+成长值)+提问者悬赏5(财富值+成长值)
1个回答
展开全部
模拟打靶的小游戏
%靶的制作和打靶得分
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 %结束循环
%靶的制作和打靶得分
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 %结束循环
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询