日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > php >内容正文

php

PHP多选题怎么弄,php多选题评分算法求指导解决方法

發(fā)布時(shí)間:2025/4/16 php 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 PHP多选题怎么弄,php多选题评分算法求指导解决方法 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

php 多選題評(píng)分算法 求指導(dǎo)

多選題一題3分

原則是:少選給2分,多選不給分,選錯(cuò)不給分

假如:正確答案123

提交答案 123 得3分

提交答案 12,13,23,都可得2分

提交答案 1234,234,134,124 沒(méi)分

怎么實(shí)現(xiàn),還是有更好的方法

------解決方案--------------------

按你的描述,你的多選題不是用 checkbox 而是用 text 輸入的

并且備選答案不會(huì)多于9個(gè)

于是得分可寫(xiě)作

count(array_intersect(str_split($正確答案), str_split($提交答案));

就是:分別切割成數(shù)組,然后取交集

------解決方案--------------------

如果你是使用 checkbox

那么提交后得到的就是數(shù)組,與正確答案數(shù)組取交集就是了

------解決方案--------------------

$正確答案 = array(1, 2, 3);

$提交答案 = array(1, 2);

$得分 = count(array_intersect($正確答案, $提交答案));

echo $得分; //2

------解決方案--------------------

引用:$正確答案 = array(1, 2, 3);

$提交答案 = array(1, 2);

$得分 = count(array_intersect($正確答案, $提交答案));

echo $得分; //2

取交集和樓主的題目要求不符合吧,比如提交答案為數(shù)組array(1,2,4),那么交集也是(1,2),實(shí)際應(yīng)該得0分吧。

------解決方案--------------------

是的,不完全符合。

但是選 1,2,4 就不得分是不合常理的。除非 4 是反選項(xiàng),比如:都不是

如果是這樣的話,出題者就是在有意誤導(dǎo)答題者

如果非要這樣出題的話,可以這樣寫(xiě)$正確答案 = array(1, 2, 3);

$錯(cuò)誤答案 = array(4);

$提交答案 = array(1, 2, 4);

$得分 = array_intersect($錯(cuò)誤答案, $提交答案) ? 0 : count(array_intersect($正確答案, $提交答案));

echo $得分; //0

引用:引用:$正確答案 = array(1, 2, 3);

$提交答案 = array(1, 2);

$得分 = count(array_intersect($正確答案, $提交答案));

echo $得分; //2

取交集和樓主的題目要求不符合吧,比如提交答案為數(shù)組array(1,2,4),那么交集也是(1,2),實(shí)際應(yīng)該得0分吧。

……

------解決方案--------------------

交并差就可以了

答卷在前,答案在后

有差集,不給分

無(wú)交集,不給分(排除上一個(gè)后這個(gè)是考慮空白答卷的情況,如果確認(rèn)不會(huì)有白卷這句可以不用)

無(wú)差集,有交集,交集數(shù)量!=答卷,半分

無(wú)差集,有交集,交集數(shù)量=答卷,滿分(這個(gè)可以不寫(xiě)邏輯,直接用else也行,因?yàn)榕懦厦鎺追N情況剩下就是交集相等)

注意

1.上面要順序判斷,是 else if 不相容邏輯而不是 switch 可容邏輯,因?yàn)槭×艘恍┡袛鄺l件

2.答卷和答案都要確保無(wú)重復(fù)值,不然交集數(shù)量判斷會(huì)有問(wèn)題

------解決方案--------------------

可以用位運(yùn)算來(lái)計(jì)算

A:1 B:2 C:4 D:8

如何選擇AB 則為3

如何選擇ABCD 則為15

比如正確為4 則 看看選擇的結(jié)果為N跟4比

if(N==4) 3分

if 4&N==N 2分

其他 O分

------解決方案--------------------

引用:可以用位運(yùn)算來(lái)計(jì)算

A:1 B:2 C:4 D:8

如何選擇AB 則為3

如何選擇ABCD 則為15

比如正確為4 則 看看選擇的結(jié)果為N跟4比

if(N==4) 3分

if 4&N==N 2分

其他 O分

位運(yùn)算是不錯(cuò)的選擇,選擇肢<32個(gè)(因系統(tǒng)和php版本可能多至63),很方便

但更大就不太方便了

------解決方案--------------------

按照老大的思路,可以這樣做$correct = array(1, 2, 3);

$submit = array(1, 2);

$score = count(array_intersect($correct, $submit));

if($score < count($submit)){//如果多選了給0分

$score = 0;

}

echo $score; //2

------解決方案--------------------

樓主 #11 的貼圖與樓主 #2 的補(bǔ)充不符

既然是用 checkbox 提交的,提交答案就不會(huì)是 array( [0] => 12 ) 形式

而是 array( [控件名] => array( [0] => 1 [2] => 2) ) 這種形式

否則是需要拆分成數(shù)組后才能使用數(shù)組函數(shù)的

------解決方案--------------------

貼出你的表單片段,我給你詳細(xì)解釋

------解決方案--------------------

對(duì)呀,你的 name="answer66[]"

所以提交后(假定全部選中) $_POST['answer66'] 是 array(1, 2, 3, 4) 這樣的數(shù)組

此時(shí)你同樣需要把答案處理成 array(1, 2, 3) 這樣的數(shù)組,才能應(yīng)用數(shù)組函數(shù)

對(duì)于這一點(diǎn),我 #1 的回復(fù)已經(jīng)說(shuō)了

------解決方案--------------------

function fen($a,$b){ //$a答案 $b正確答案

if($a==$b){

return 3;

}

foreach ($a as $value){

if(!in_array($value, $b)){

return 0;

}

}

return 2;

}

只想到個(gè)笨方法

------解決方案--------------------

多選和少選都不給分

就用差集為空

本條技術(shù)文章來(lái)源于互聯(lián)網(wǎng),如果無(wú)意侵犯您的權(quán)益請(qǐng)點(diǎn)擊此處反饋版權(quán)投訴

本文系統(tǒng)來(lái)源:php中文網(wǎng)

總結(jié)

以上是生活随笔為你收集整理的PHP多选题怎么弄,php多选题评分算法求指导解决方法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 日韩性生活大片 | 黄色小网站在线观看 | 久久国产精品毛片 | 免费婷婷 | 97爱爱视频| 精品一区二区三区蜜臀 | aaaaaav| www久久久久 | 国产偷v国产偷v亚洲高清 | 少女忠诚电影高清免费 | 国产在线播放一区二区三区 | jizz内谢中国亚洲jizz | 玉足调教丨vk24分钟 | 91网站在线免费观看 | 狠狠干网站 | 国产精品午夜影院 | xxx精品 | 久久久国产精品 | 韩国日本中文字幕 | 亚洲欧美国产一区二区 | 国产人妻精品一区二区三 | 久久精品一区二区三区四区 | 日韩在线网址 | 人人干人人玩 | 国产乱淫av | 法国少妇愉情理伦片 | 美国美女群体交乱 | 国产成人精品网站 | 91传媒视频在线观看 | 精品久久久久久久久久岛国gif | 国产人妻大战黑人20p | 在线成人| 亚洲国产精品视频在线观看 | 亚洲黄色免费看 | 91蝌蚪在线观看 | 亚洲最新中文字幕 | 精品一区二区三区四区五区六区 | 九色精品| 人妻视频一区 | 樱桃国产成人精品视频 | 黄色污污视频软件 | 成长快手短视频在线观看 | 久久入口 | 欧美激情va永久在线播放 | 欧美日比视频 | 精品少妇一二三区 | 久久久久久美女 | 国产在线播放一区二区 | 久草福利| 熟妇人妻系列aⅴ无码专区友真希 | 午夜成人鲁丝片午夜精品 | 精品国产av鲁一鲁一区 | 99er久久| 国产精品九一 | 一级免费黄色 | 手机看片91 | 午夜三级视频 | 色婷婷久久综合中文久久蜜桃av | 免费av免费观看 | 中国一级特黄视频 | 日本福利一区 | 丰满人妻翻云覆雨呻吟视频 | 亚洲v国产v欧美v久久久久久 | 国产精品伦一区二区三级视频 | 97人人射| 美女试爆场恐怖电影在线观看 | 寡妇激情做爰呻吟 | 一二三不卡视频 | 蜜桃精品在线 | 亚洲精品大片www | 亚洲一区二区久久久 | 久久婷婷五月综合色吧 | 欧美aa在线观看 | 大胸喷奶水www视频妖精网站 | 中文在线观看视频 | 亚洲国产成人精品激情在线 | 国产亚洲欧美在线 | 亚洲在线视频免费观看 | 狼人综合视频 | 狠狠干亚洲色图 | 九色91在线 | 久久综合中文 | 国内黄色一级片 | 欧美brazzers| 欧美韩一区 | 日本少妇久久 | 奇米综合网 | 中文字幕2018 | 米奇狠狠干 | 欧美日韩爱爱 | 亚洲免费影院 | 福利小视频在线播放 | 国产在线一二三区 | 日韩午夜精品视频 | 一区黄色 | 少妇被又大又粗又爽毛片久久黑人 | 人人爽夜夜爽 | 日本a网| 少妇吹潮|