| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1701 人关注过本帖
标题:这个命令怎么写3 9 17 19 48 50 2:4
只看楼主 加入收藏
五年半
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2016-6-8
结帖率:50%
收藏
 问题点数:0 回复次数:8 
这个命令怎么写3 9 17 19 48 50 2:4
这个命令怎么写
由很多组数据,每组6个数,求每一组数据中大于22的数的个数比(比值)小于22的数的个数,比值显示在单独的1列中
如:
3 9 17 19 48 50 2:4
3 9 17 19 48 50是一组数据,其中大于22的数有两个,小于22的数由4个,比值就是2:4,显示在最后一个数(50)的后一列中。


谢谢!非常感谢!
2016-06-08 09:36
tztjy
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2016-6-2
收藏
得分:0 
可以把表中的记录先存到数组中,然后在数组中求
2016-06-08 10:02
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9811
专家分:27017
注 册:2012-2-5
收藏
得分:0 
数据是如何保存的,不同的保存方法,代码是不同的。

坚守VFP最后的阵地
2016-06-08 12:09
aaaaaa
Rank: 8Rank: 8
等 级:贵宾
威 望:21
帖 子:796
专家分:937
注 册:2012-9-4
收藏
得分:0 
Clear
lcStr = "3 9 17 19 48 50"
Dimension gaArr(6)
gaArr(1) =  3
gaArr(2) =  9
gaArr(3) = 17
gaArr(4) = 19
gaArr(5) = 48
gaArr(6) = 50
lcMin = 0
lcMax = 0
For I = 1 To 6
    If gaArr(I) < 22
        lcMin = lcMin + 1
    Else
        lcMax = lcMax + 1
    Endif
Endfor
lcStr = lcStr + " " + Transform(lcMin) + "/" + Transform(lcMax)
? lcStr

民工子弟学校22班团小组长阳光模特队长冲锋篮球队前锋小苹果合唱队领唱蓝天舞蹈队编舞
2016-06-09 07:52
aaaaaa
Rank: 8Rank: 8
等 级:贵宾
威 望:21
帖 子:796
专家分:937
注 册:2012-9-4
收藏
得分:0 
大于22的数的个数,小于22的数的个数,那么等于22的数的个数算哪边?

出题不太慎密。

民工子弟学校22班团小组长阳光模特队长冲锋篮球队前锋小苹果合唱队领唱蓝天舞蹈队编舞
2016-06-09 08:18
mywisdom88
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:191
帖 子:3146
专家分:8408
注 册:2015-3-25
收藏
得分:0 
以下是引用aaaaaa在2016-6-9 07:52:57的发言:

Clear
lcStr = "3 9 17 19 48 50"
Dimension gaArr(6)
gaArr(1) =  3
gaArr(2) =  9
gaArr(3) = 17
gaArr(4) = 19
gaArr(5) = 48
gaArr(6) = 50
lcMin = 0
lcMax = 0
For I = 1 To 6
    If gaArr(I) < 22
        lcMin = lcMin + 1
    Else
        lcMax = lcMax + 1
    Endif
Endfor
lcStr = lcStr + " " + Transform(lcMin) + "/" + Transform(lcMax)
? lcStr
可以行。
2016-06-09 10:07
五年半
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2016-6-8
收藏
得分:0 
回复 4楼 aaaaaa
输入你的代码。提示:找不到变量"LCSTR"。
这是怎么回事?
2016-06-13 00:11
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10559
专家分:42996
注 册:2014-5-20
收藏
得分:0 
回复 楼主 五年半
没有实测数据,只能猜测一下,是不是这样子:
图片附件: 游客没有浏览图片的权限,请 登录注册

程序代码:
    * 测试数据
n = 100
LOCAL a[6]
CREATE CURSOR tt (f1 I, f2 I, f3 I, f4 I, f5 I, f6 I, >22/<22 C(10))
RAND(-1)
FOR i = 1 TO 100
    FOR j = 1 TO 6
        a[j] = INT((n-1)*RAND()+1)
    ENDFOR
    INSERT INTO tt VALUES (a[1], a[2], a[3], a[4], a[5], a[6], "")
ENDFOR
    
    * 统计数据
REPLACE22/<22 WITH 统计() ALL 
GO TOP 
BROWSE
RETURN

FUNCTION 统计()
    LOCAL i, >22, <22, fn
    >22 = 022 = 0
    FOR i = 1 TO 6
        fn = EVALUATE("f"+TRANSFORM(i))
        IF fn > 2222 =22 + 1
        ELSE
            IF fn < 2222 =22 + 1
            ENDIF
        ENDIF
    ENDFOR
    RETURN  "   "+TRANSFORM(>22)+":"+TRANSFORM(<22)
ENDFUNC
2016-06-13 08:18
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9811
专家分:27017
注 册:2012-2-5
收藏
得分:0 
INT(lnNum / 22) = 0 来判断

坚守VFP最后的阵地
2021-03-20 21:15
快速回复:这个命令怎么写3 9 17 19 48 50 2:4
数据加载中...
 
   



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

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