博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Ruby中写一个判断成绩分类的脚本
阅读量:5912 次
发布时间:2019-06-19

本文共 1180 字,大约阅读时间需要 3 分钟。

需求为:从键盘输入分数,以此来判断,0-59为不及格,打印“您没有及格,请下次努力!”,60-79为及格,打印“您的成绩及格,请更加努力!”,80-100为成绩良,打印“您的成绩为优秀,请再接再厉!”,如果输入为0-100以外的分数,请打印“您的成绩为优秀,请再接再厉!”

如果采用ruby方式,代码比较精简,如下所示:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
#!/usr/bin/ruby
print 
"请输入您的分数: "
grade = gets.to_i
#grade = name.to_i
case 
grade
 
when 0..60
  
puts 
"您没有及格,请下次努力!"
 
when 61..79
 
puts 
"您的成绩及格了,请更加努力!" 
 
when 80..100
 
puts 
"您的成绩为优秀,请再接再厉!"
 
else 
  
puts 
"您输入的数值有误,请输入一个0-100之间的值!!"
 
end

SHELL中如果用if多支选择的方法,代码为:

1
2
3
4
5
6
7
8
9
10
11
#!/bin/bash
read 
-p 
"Please input your score:" 
Score
if 
[ $Score -
ge 
0 -a $Score -
le 
59 ];
then 
    
echo 
"您没有及格,请下次努力!"
elif 
[ $Score -
ge 
60 -a $Score -
le 
79 ];
then 
    
echo 
"您的成绩及格,请更加努力!"
elif 
[ $Score -
ge 
80 -a $Score -
le 
100 ];
then
    
echo 
"您的成绩为优秀,请再接再厉!"
else
    
echo 
"您输入的成绩超出合理值,请重新输入!"
fi

SHELL中如果用case的方法就比较麻烦了,代码为:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#!/bin/bash
read 
-p 
"请输入你考试的分数:" 
score
case 
"$score" 
in
[0-9])
    
echo 
"您没有及格,请下次努力!"
;;
[1-5][0-9])
     
echo 
"您没有及格,请下次努力!"
 
;;
[6-7][0-9])
     
echo 
"您的成绩及格,请更加努力!"
 
;;
[8-9][0-9])
     
echo 
"您的成绩为优秀,请再接再厉!"
 
;;
100)
     
echo 
"您的成绩为优秀,请再接再厉!"
 
;;
*)
     
echo 
"您输入的成绩超出合理值,请重新输入!"
 
;;
esac
本文转自 抚琴煮酒 51CTO博客,原文链接:http://blog.51cto.com/yuhongchun/1588063,如需转载请自行联系原作者
你可能感兴趣的文章
挖掘数据金矿 领军协同创新 曙光荣膺“2016大数据创新应用领袖企业”称号
查看>>
oschina程序开发
查看>>
《从零开始学Swift》学习笔记(Day 40)——析构函数
查看>>
SVN Hooks的介绍及使用
查看>>
axios 拦截 , 页面跳转, token 验证(自己摸索了一天搞出来的)
查看>>
如何将经纬度利用Google Map API显示C# VS2005 Sample Code
查看>>
开发人员可以提高效率的chrome插件推荐
查看>>
性能测试分享:性能测试工具开发的案例分享(下)
查看>>
linux sar命令详解
查看>>
通过Gearman实现MySQL到Redis的数据复制
查看>>
eclipse 自动为getter和setter添加注释
查看>>
kafka 监控之Mx4jLoader
查看>>
XBImageFilters
查看>>
Hadoop之HDFS的常用命令
查看>>
分布式系统架构解决方案之Dubbo(三)--Dubbo管理端 和 Dubbo综合案例
查看>>
The function getUserId must be used with...解决办法
查看>>
Class yii\base\View
查看>>
我的友情链接
查看>>
我的友情链接
查看>>
使用Unirest发送Json的格式数据
查看>>