vb。 随机产生15个不重复的英文字母。我已经写这么多了 不知道怎么写“不重复”阿!

vb。 随机产生15个不重复的英文字母。我已经写这么多了 不知道怎么写“不重复”阿!,第1张

Public Shared Function GetRndString As String

Dim lngNum As Integer = 15

Dim i,f As Long

Dim Temp As String

Dim intLength As Integer

Const STRINGSOURCE = "ABCDEFGHIJKLMNOPQRSTUVWXYZ" '大写模式,如果要小写模式,请自行改为小写模式 abcdefghijklmnopqrstuvwxyz

intLength = Len(STRINGSOURCE) - 1

Randomize()

Dim cs As String = Nothing

For i = 1 To lngNum

CF:

Temp = Mid(STRINGSOURCE, Int(Rnd() intLength + 1), 1)

For f = 1 To csLength ‘检测是否有重复字符

If Mid(cs,f,1) = Temp Then

Goto CF ’如果有重复字符,重新执行随机抽取字符

End If

Next

cs = cs & Temp

Next

Return cs

End Function

调用时:

Private Sub Button1_Click(ByVal sender As SystemObject, ByVal e As SystemEventArgs) Handles Button1Click

TextBox1Text = GetRndString()

End Sub

手写的,已经测试。

BIAS0:= (C-MA(C,2))/MA(C,2)100;

BIAS1 := (C-MA(C,12))/MA(C,12)100;

BIAS2 := (C-MA(C,26))/MA(C,26)100;

BIAS3 := (C-MA(C,48))/MA(C,48)100;

HXL:=V/CAPITAL100;

D1:=INDEXC;

D2:=MA(D1,56);

DR2:=D1/D2<094;

E1:=(C-HHV(C,12))/HHV(C,12)10;

E2:=(C-REF(C,26))/REF(C,26)10;

#include<iostream>

#include<string>

//#include<cstring> 使用c++的string头文件足矣

using namespace std;

//string delete_repeats(string a, int n) 不需要字符串长度参数n, 可以使用stringsize()或者stringlength()获得

string delete_repeats(string a)

{

string b; //定义一个空字符串

int n = asize(); //获取字符串a的长度

//int c = 0;不需要这样做

for (int i = 0; i < n; i++)

{

for (int j = i + 1; j < n; j++)

{

if (a[i] == a[j])

{

a[j] = 0;

}

}

}

for (int k = 0; k < n; k++)

{

//if (a[k] == 0)

//c = c + 1;

//else

//b[k] = a[k + c]; //此处的字符串b[k]由于有的a[k]为0, 有的非0, 使得b[k]断断续续, 而且a[k+c]下标会溢出

if (a[k] != 0) //string类重载了+运算符, 可以使用b = b + a[k]将a[k]字符复制到字符串b的末尾

b += a[k];

}

/

当然也可以用如下方式获取字符串b, 用c表示字符串b的有效字符

for (int k = 0; k < n; k ++)

if (a[k] != 0)//有效

b[c ++] = a[k];

b[c] = '\0'; //标记字符串结尾

/

return b;

}

int main()

{

string str;

cin >> str;

//cout << delete_repeats(str, 127);

cout << delete_repeats(str);

return 0;

}

public class Egg{

    public static void main(String[] args){

        String word = "abcefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";

        String tmp = "";

        for(int i = 0; i < 10; i++){

            int rand = (int)(Mathrandom()  wordlength());

            char c = wordcharAt(rand);

            if(!tmpcontains(c+"")){

                tmp += c;

            }else{

                i--;

            }

        }

        Systemoutprintln(tmp);

    }

}

26个字母任意3个组合,理论上可以产生262626=17576个组合。

可以用公式先将所有组合产生出来放在A列。

然后在B列用公式随机抽取A列中的组合。

A1公式:

=CHAR(97+INT(MOD(ROW()-1,17576)/676))&CHAR(97+INT(MOD(ROW()-1,676)/26))&CHAR(97+MOD(ROW()-1,26))

将公式向下复制到17576行。

然后用复制、选择性粘贴、数值,将A列公式结果固定下来。

B2公式:

=INDEX(A:A,SMALL(IF(COUNTIF(B$1:B1,A$1:A$17576),65536,ROW($1:$17576)),1+INT(RAND()(17577-ROW()))))

公式以CTRL+SHIFT+ENTER三键结束。

将公式向下复制。你要多少个就复制多少行。

按F9可以随机改变选取的组合,保证没有重复。

你实际上就是想要一个随机排序的 全英文字母而已,

换个思路,

首先我们将

B1输入 公式 =RAND()1000+row()/100000

向下填充,至B26

A1输入 公式 =CHAR(64+RANK(B1,$B$1:$B$26))

向下填充到A26就可以了

ython 一句话输出26个英文字母 (2011-10-19 15:29:10)转载▼

标签: 杂谈 分类: python

chr(i) # return i character

ord(c) # return integer

cmp(x,y) # 比较x,y大小, 小于-1 等于0 大小1

>>> chr(97)

'a'

>>> ord('a')

97

>>> cmp(5,6)

-1

>>> cmp(6,5)

1

>>> cmp(6,6)

0

>>> [chr(i) for i in range(97,123)]

['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z']

>>>

以上就是关于vb。 随机产生15个不重复的英文字母。我已经写这么多了 不知道怎么写“不重复”阿!全部的内容,包括:vb。 随机产生15个不重复的英文字母。我已经写这么多了 不知道怎么写“不重复”阿!、如何用BAT批处理 生成a-z 26字母 4位不重复、求c++大神解答,删除字符串中重复字母程序 如下等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10109084.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存