| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3552 人关注过本帖, 1 人收藏
标题:求计算各科平均分,要求每班各科取从高到低的90%参与计算平均分,及平均分的 ...
只看楼主 加入收藏
分号
Rank: 1
等 级:新手上路
帖 子:156
专家分:0
注 册:2006-12-4
结帖率:77.78%
收藏(1)
已结贴  问题点数:20 回复次数:13 
求计算各科平均分,要求每班各科取从高到低的90%参与计算平均分,及平均分的各科班级名次分布。
求计算各科平均分,要求每班各科取从高到低的90%参与计算平均分,及平均分的各科班级名次分布。

[此贴子已经被作者于2019-11-11 16:55编辑过]

搜索更多相关主题的帖子: 要求 计算 平均分 分布 
2019-11-11 16:54
分号
Rank: 1
等 级:新手上路
帖 子:156
专家分:0
注 册:2006-12-4
收藏
得分:0 
数据表.rar (39.22 KB)
2019-11-11 16:54
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:20 
程序代码:
CLOSE DATABASES 
SELECT DISTINCT 班级 FROM 学校 INTO CURSOR bj
SELECT 学校
nRows = AFIELDS(abj)
LOCAL akm[nRows - 3]
* 生成科目数组
FOR i = 4 TO nrows
    akm[i - 3] = abj[i, 1]
ENDFOR
* 创建平均分名次临时表
cStr = "班级 C(2)"
FOR i = 1 TO ALEN(akm)
    cStr = cStr + "," + akm[i] + "均分 N(6, 2)," + akm[i] + "名次 N(2)"
ENDFOR
CREATE CURSOR jfmc (&cStr)
* 统计各科平均分
SELECT bj
SCAN
    INSERT INTO jfmc (班级) VALUES (bj.班级)
    FOR i = 1 TO ALEN(akm)
        SELECT TOP 90 PERCENT 班级, &akm[i] FROM 学校 WHERE 班级 == bj.班级 ORDER BY &akm[i] DESC INTO CURSOR tt
        CALCULATE AVG(&akm[i]) TO nAvg
        REPLACE (akm[i] + "均分") WITH nAvg IN jfmc
    ENDFOR 
ENDSCAN 
* 统计各科平均分名次
SELECT jfmc
FOR i = 1 TO ALEN(akm)
    cjf = akm[i] + "均分"
    INDEX ON 1000 - &cjf TAG cj
    nmc = 1
    njf = 0
    nrs = 1
    SCAN
        IF &cjf != njf
            nmc = nrs
        ENDIF 
        REPLACE (akm[i]  + "名次") WITH nmc
        njf = &cjf
        nrs = nrs + 1
    ENDSCAN
ENDFOR
SET ORDER TO  
GO TOP 
BROWSE 

结果
图片附件: 游客没有浏览图片的权限,请 登录注册

坚守VFP最后的阵地
2019-11-11 20:13
schtg
Rank: 12Rank: 12Rank: 12
来 自:Usa
等 级:贵宾
威 望:67
帖 子:1730
专家分:3324
注 册:2012-2-29
收藏
得分:0 
我手动计算了一下,不知道我哪里错啦,平均分和排序有差别,请自己核对一下。
重新核对了一下,应该正确啦。
图片附件: 游客没有浏览图片的权限,请 登录注册


[此贴子已经被作者于2019-11-11 21:12编辑过]

2019-11-11 20:40
分号
Rank: 1
等 级:新手上路
帖 子:156
专家分:0
注 册:2006-12-4
收藏
得分:0 
如果要是截取各班最少人数,统一减少2人,计算平均分呢?还是按照各科的平均。
2019-11-11 21:21
分号
Rank: 1
等 级:新手上路
帖 子:156
专家分:0
注 册:2006-12-4
收藏
得分:0 
首先0分先剔除掉。
2019-11-11 21:22
分号
Rank: 1
等 级:新手上路
帖 子:156
专家分:0
注 册:2006-12-4
收藏
得分:0 
理科.rar (129.38 KB)
按照班级最少人数减2,统计所有班级各科平均分及平均分名次?
2019-11-11 21:54
分号
Rank: 1
等 级:新手上路
帖 子:156
专家分:0
注 册:2006-12-4
收藏
得分:0 
谢谢sdta,完全符合我想要的结果。另请问下按照班级最少人数减2,统计所有班级各科平均分及平均分名次,程序该如何修改?谢谢
2019-11-11 22:05
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
回复 8楼 分号
不明白楼主的意思

坚守VFP最后的阵地
2019-11-11 22:08
分号
Rank: 1
等 级:新手上路
帖 子:156
专家分:0
注 册:2006-12-4
收藏
得分:0 
把所有班级的班级人数统计出来后,按照最少的班级人数-2,统计所有班级所有科目的平均分及平均分名次
2019-11-11 22:18
快速回复:求计算各科平均分,要求每班各科取从高到低的90%参与计算平均分,及平 ...
数据加载中...
 
   



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

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