溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Ruby中寫(xiě)一個(gè)判斷成績(jī)分類的腳本

發(fā)布時(shí)間:2020-05-22 06:53:44 來(lái)源:網(wǎng)絡(luò) 閱讀:5793 作者:撫琴煮酒 欄目:編程語(yǔ)言

需求為:從鍵盤(pán)輸入分?jǐn)?shù),以此來(lái)判斷,0-59為不及格,打印“您沒(méi)有及格,請(qǐng)下次努力!”,60-79為及格,打印“您的成績(jī)及格,請(qǐng)更加努力!”,80-100為成績(jī)良,打印“您的成績(jī)?yōu)閮?yōu)秀,請(qǐng)?jiān)俳釉賲?”,如果輸入為0-100以外的分?jǐn)?shù),請(qǐng)打印“您的成績(jī)?yōu)閮?yōu)秀,請(qǐng)?jiān)俳釉賲?”

如果采用ruby方式,代碼比較精簡(jiǎn),如下所示:

#!/usr/bin/ruby
print "請(qǐng)輸入您的分?jǐn)?shù): "
grade = gets.to_i
#grade = name.to_i
case grade
 when 0..60
  puts "您沒(méi)有及格,請(qǐng)下次努力!"
 when 61..79
 puts "您的成績(jī)及格了,請(qǐng)更加努力!" 
 when 80..100
 puts "您的成績(jī)?yōu)閮?yōu)秀,請(qǐng)?jiān)俳釉賲?"
 else 
  puts "您輸入的數(shù)值有誤,請(qǐng)輸入一個(gè)0-100之間的值!!"
 end

SHELL中如果用if多支選擇的方法,代碼為:

#!/bin/bash
read -p "Please input your score:" Score
if [ $Score -ge 0 -a $Score -le 59 ];then 
    echo "您沒(méi)有及格,請(qǐng)下次努力!"
elif [ $Score -ge 60 -a $Score -le 79 ];then 
    echo "您的成績(jī)及格,請(qǐng)更加努力!"
elif [ $Score -ge 80 -a $Score -le 100 ];then
    echo "您的成績(jī)?yōu)閮?yōu)秀,請(qǐng)?jiān)俳釉賲?"
else
    echo "您輸入的成績(jī)超出合理值,請(qǐng)重新輸入!"
fi

SHELL中如果用case的方法就比較麻煩了,代碼為:

#!/bin/bash
read -p "請(qǐng)輸入你考試的分?jǐn)?shù):" score
case "$score" in
[0-9])
    echo "您沒(méi)有及格,請(qǐng)下次努力!"
;;
[1-5][0-9])
     echo "您沒(méi)有及格,請(qǐng)下次努力!"
 ;;
[6-7][0-9])
     echo "您的成績(jī)及格,請(qǐng)更加努力!"
 ;;
[8-9][0-9])
     echo "您的成績(jī)?yōu)閮?yōu)秀,請(qǐng)?jiān)俳釉賲?"
 ;;
100)
     echo "您的成績(jī)?yōu)閮?yōu)秀,請(qǐng)?jiān)俳釉賲?"
 ;;
*)
     echo "您輸入的成績(jī)超出合理值,請(qǐng)重新輸入!"
 ;;
esac


向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI