| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 9050 人关注过本帖, 1 人收藏
标题:求助按科目成绩等级录取学生
取消只看楼主 加入收藏
chychychy
Rank: 2
等 级:论坛游民
帖 子:215
专家分:91
注 册:2015-4-18
结帖率:100%
收藏(1)
已结贴  问题点数:20 回复次数:39 
求助按科目成绩等级录取学生
录取资格库.rar (161.73 KB)

有学生考试成绩库,物理(wl)、化学(hx)、思想品德(zz)、历史(ls)、地理(dl)、生物(sw)、体育(ty)科目成绩用等级大写字母ABCDE表示,对应字段分别为wldj、hxdj、zzdj、lisdj、dldj、swdj、tydj
录取要求如图,要将符合成绩等级要求的学生在指标生字段(zbs)分别写入“31”“32”“34”
在统招生字段(tzs)分别写入“31”“32”“34”
图片附件: 游客没有浏览图片的权限,请 登录注册


[此贴子已经被作者于2019-6-20 08:41编辑过]

搜索更多相关主题的帖子: 目录 成绩 等级 学生 字段 
2019-06-19 11:53
chychychy
Rank: 2
等 级:论坛游民
帖 子:215
专家分:91
注 册:2015-4-18
收藏
得分:0 
个人不成熟想法,感觉太啰嗦,不简洁,怕有落漏,请简化高效
REPL ALL ZBS WITH ''&&&情况所有指标生(zbs)字段记录
Repl all bj WITH ''for zy2=='31'&&&清空A学校的标记字段(bj),此字段为我新增加,原始数据是没有的。
repl all bj with 'f' for wldj='E' OR hxdj='E' or zzdj='E' or lsdj='E' or dldj='E' or swdj='E' or tydj='E' 排除1.所有为E的
Repl all bj WITH 'f' FOR wldj='D' or hxdj='D' &&& 排除2.物理或化学为D
Repl all bj WITH 'f' FOR wldj='C' and hxdj='C' &&&&排除2.物理、化学同为c
repl all bj with 'f' for zzdj='D' or lsdj='D' or dldj='D' or swdj='D' &&&排除3.政史地生中任何一个为d
repl all bj with 'f' for zzdj='C' and lsdj='C' and dldj='C' and swdj='C' &&&排除3.政史地生中同为c,4个C的

Repl all zbs with '31' FOR(bj!='f') and zy2=='31' and 科目合计=7 &&&将志愿为A学校且标记不为f的替换


[此贴子已经被作者于2019-6-19 16:22编辑过]

2019-06-19 11:57
chychychy
Rank: 2
等 级:论坛游民
帖 子:215
专家分:91
注 册:2015-4-18
收藏
得分:0 
回复 3楼 xuminxz
可能是说的不够明白,学生志愿已填报完毕,录取分两步 第一步看物理、化学、政治、历史、地理、生物、体育是否符合等级要求,要筛选出合格和不合格的来。第二步等级符合要求的看语文+数学+英语总分,由高到低录取。关键第一步等级筛选比较复杂,如何简洁高效,需求助。
比如C学校指标生要求,排除的选项较多,第一要求3C1D和2C1D;需排除除所有为e,物理、化学、生物、地理2个d,排除政治历史体育2个D,以
我的方法交笨不简洁,如
&&&repl all bj1 with '' for zy2='34'
&&&repl all bj1 with 'f' for e>=1 and  zy2='34'
&&&repl all bj1 with 'f' for (wldj='D' and hxdj='D') or (wldj='D' and swdj='D') or (wldj='D' and dldj='D') or (hxdj='D' and swdj='D') or (hxdj='D' and dldj='D') or (swdj='D' and dldj='D')
&&&太长了不简洁还没写上排除政治历史体育2个D的代码呢,A学校指标生2B2C2D就更复杂了,有无简洁高效的方法和代码


[此贴子已经被作者于2019-6-19 14:35编辑过]

2019-06-19 14:28
chychychy
Rank: 2
等 级:论坛游民
帖 子:215
专家分:91
注 册:2015-4-18
收藏
得分:0 
回复 6楼 xuminxz
统招生的2B2C2D太复杂了,这样排除怕有落漏,if语句的用的不是很好,能否写一段完整的参考一下,谢谢
2019-06-19 15:49
chychychy
Rank: 2
等 级:论坛游民
帖 子:215
专家分:91
注 册:2015-4-18
收藏
得分:0 
回复 8楼 wangzhiyi
谢谢关注,数学和逻辑的确重要,学生报名分为指标生和统招生两类,zy2为指标生,zy3 为统招生。
我测试了一下你写的代码(精简了还算错误,如下),只执行了第一分支,没有写入所有的符合条件的‘f’。关键是C学校的指标生和A学校的统招生排除法也不好解决。
REPL ALL ZBS WITH ' '
GO TOP
SCAN
   
      DO CASE
         CASE  wldj='E' OR hxdj='E' or zzdj='E' or lsdj='E' or dldj='E' or swdj='E' or tydj='E' &&排除1.所有为E的
               repl bj with 'f'
         CASE wldj='D' or hxdj='D'
               repl bj with 'f'
         CASE wldj='C' and hxdj='C'         
               repl bj with 'f'
         CASE zzdj='D' or lsdj='D' or dldj='D' or swdj='D'         
               repl bj with 'f'
         CASE zzdj='C' and lsdj='C' and dldj='C' and swdj='C'         
               repl bj with 'f'
      ENDCASE
      Repl zbs with '31' FOR(bj!='f')         
      
   
ENDSCAN

[此贴子已经被作者于2019-6-19 20:40编辑过]

2019-06-19 20:32
chychychy
Rank: 2
等 级:论坛游民
帖 子:215
专家分:91
注 册:2015-4-18
收藏
得分:0 
回复 12楼 schtg
怎么说呢,意思就是就是将分别报三个学校指标生(zy2)符合等级要求的学生,在zbs字段打上标记。
2019-06-20 08:03
chychychy
Rank: 2
等 级:论坛游民
帖 子:215
专家分:91
注 册:2015-4-18
收藏
得分:0 
回复 12楼 schtg
贴错图了,你说的是对的
2019-06-20 08:28
chychychy
Rank: 2
等 级:论坛游民
帖 子:215
专家分:91
注 册:2015-4-18
收藏
得分:0 
回复 11楼 sdta
谢谢,学习了,判断部分准确不会落漏,等级排序部分高明,排了序就能比较大小(但此处没大看明白,也是今后可能更改的,请注释一下,教会如何导出需要的组合并排序,新手,见笑了)。有几处不合适(A学校指标生4348合适,A学校统招是4133),是我造成的。A指标生要看zy2字段为31的,将符合等级要求在zbs字段的打上标记,A学校统招生要看zy3字段为31的将符合等级要求的在tzs字段打上标记,新上传完整数据。
录取资格库(上传完整去掉单位姓名).rar (363.05 KB)
,比如如何实现下图结果,谢谢指教。
图片附件: 游客没有浏览图片的权限,请 登录注册


[此贴子已经被作者于2019-6-20 14:54编辑过]

2019-06-20 09:22
chychychy
Rank: 2
等 级:论坛游民
帖 子:215
专家分:91
注 册:2015-4-18
收藏
得分:0 
回复 9楼 schtg
谢谢,没一行行看代码,你的这个结果和我的不很对应,正确的结果A学校指标生4348,统招生4133。我上传了新的数据库,请查看一下。

[此贴子已经被作者于2019-6-20 09:55编辑过]

2019-06-20 09:54
chychychy
Rank: 2
等 级:论坛游民
帖 子:215
专家分:91
注 册:2015-4-18
收藏
得分:0 
回复 15楼 wangzhiyi
du case 语句应该是执行完第一case若符合条件就跳出了,剩下的case没有执行,好像是。
2019-06-20 09:57
快速回复:求助按科目成绩等级录取学生
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017828 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved