yfei9999 发表于 2010-3-13 22:12:30

如何数植统计 。[已解決]

本帖最后由 yfei9999 于 2010-3-14 13:00 编辑

提个问题   我是个新手 感觉 比较难 请指点 一下
问题如下:
从000到999中随意输入一个数,没重复的按一次计算,重复的统计次数,随机输入多少次以后,按重复次数从多到少或从少到多排列,列出表格
比如输入:
012
023
123
235
678
023
023
678
.......
然后排列
023  3次
678  2次
012  1次
123  1次
235  1次
.......

水木子 发表于 2010-3-13 22:28:29

本帖最后由 水木子 于 2010-3-13 22:29 编辑

没明白LZ的意思,能再描述清楚些吗?

统计每组数值重复了多少次?

yfei9999 发表于 2010-3-13 22:32:14

回复 2# 水木子


    统计每组数值重复了多少次 就是这样

水木子 发表于 2010-3-13 22:37:54

回复 3# yfei9999
能否把你那个文本,“第一行123 第二行321 等三行123” 那个发上来看看!你这样举例有点难猜!

水木子 发表于 2010-3-13 23:38:14

本帖最后由 水木子 于 2010-3-13 23:41 编辑

不知道LZ是不是这意思?#include <Array.au3>
Local $Text

$sText = '第一行 123' & @CRLF & _
                '第二行 321' & @CRLF & _
                '等三行 123' & @CRLF & _
                '第四行 456' & @CRLF & _
                '第五行 123' & @CRLF & _
                '第六行 321' & @CRLF & _
                '等七行 123' & @CRLF & _
                '第八行 456' & @CRLF & _
                '第九行 123' & @CRLF & _
                '第十行 789'
               
MsgBox(0, '原字符串', $sText)

$sRe = StringRegExp($sText, '\d+', 3)
$var = _ArrayUnique($sRe)
For $i = 1 To $var
        $sReg = StringRegExp($sText, $var[$i], 3)
        $Text &= $var[$i] & '   出现了'& UBound($sReg) &'次' & @CRLF
Next

MsgBox(0, '统计结果', $Text)

yfei9999 发表于 2010-3-14 11:02:39

回复 5# 水木子


谢谢关注
不是这个意思
看看这回说明白了没有

bing614 发表于 2010-3-14 12:07:24

根据_ArrayUnique修改的#include <Array.au3>
#include <file.au3>
Local $aArray
_FileReadToArray(@ScriptDir & "\shuzhi.txt",$aArray)
$aNewArray = _ArrayUnique_test($aArray)
_ArrayDisplay($aNewArray)

Func _ArrayUnique_test($aArray)
        Local $vDelim = Chr(01), $sHold, $_NewArray
        For $iCC = 1 To UBound($aArray) - 1
                If Not StringInStr($vDelim & $sHold, $vDelim & $aArray[$iCC] & $vDelim) Then
                        $sHold &= $aArray[$iCC] & $vDelim
                        $_NewArray = $aArray[$iCC]
                        $_NewArray = 1
                        ReDim $_NewArray
                Else
                        $_item = _ArraySearch($_NewArray, $aArray[$iCC])
                        $_NewArray[$_item] += 1
                EndIf
        Next       
        ReDim $_NewArray
        Return $_NewArray
EndFunc

yfei9999 发表于 2010-3-14 12:34:11

回复 7# bing614


   以解决 就是 输出的 结果能不能 按次数大小 排列 一下 就 完美 了

bing614 发表于 2010-3-14 13:41:01

排序用 _ArraySort

lxz 发表于 2010-3-14 15:02:30

好久不见你啊.....

bing614 发表于 2010-3-14 17:05:47

:face (33):回复 10# lxz
页: [1]
查看完整版本: 如何数植统计 。[已解決]