.版本 2.子程序 加密, 文本型, 公开
.参数 加密文本, 文本型
.参数 密码, 文本型, 可空
.局部变量 a, 文本型
.局部变量 b, 文本型, , "0"
.局部变量 c, 整数型
.局部变量 b1, 文本型, , "0"
.局部变量 b2, 文本型, , "0"
.局部变量 t, 文本型
.局部变量 t1, 文本型, , "0"
.局部变量 t2, 整数型数组清零 (t1)
t = “180544521121451257481548416576168765184122222888445634662652890890878953478966345785467345797634698056063478906934764576345709345734856430349530453497634785456057868789674564589063475640896609134737846734680576745789067890236837879115789078934578957893789578934765634563453465345344765453435347653475789034256689430689534695603457892578934789578976578923656476563468959634656345634656993468954656463425765765634564566456568934378905378902589256895468968945689456897894578957897894578978978984578989634676763476548958903458908871518674165165651153818857001569134备用”
.计次循环首 (取文本长度 (t), t2)
    加入成员 (t1, 取文本中间 (t, t2, 1))
.计次循环尾 ()a = “”
c = 1
数组清零 (b)
数组清零 (b1).如果 (密码 ≠ “”)
    .如果 (取绝对值 (取文本长度 (密码)) % 2 ≠ 1)
        a = 加密文本 + “*” + 密码 + “ ”
    .否则
        a = 加密文本 + “*” + 密码
    .如果结束.否则
    a = 加密文本
.如果结束.计次循环首 (取文本长度 (a), c)
    加入成员 (b, 取文本中间 (a, c, 1))
.计次循环尾 ()
.如果 (取数组成员数 (b) ≤ 3)
    c = 取数组成员数 (b)
    .计次循环首 (取数组成员数 (b), )
        加入成员 (b1, b [c])
        c = c - 1
    .计次循环尾 ()
    c = 1
    a = “”
    .计次循环首 (取数组成员数 (b1), c)
        a = a + b1 [c]
    .计次循环尾 ()
    返回 (a)
.否则.如果结束.如果 (取绝对值 (取数组成员数 (b)) % 2 = 1)
    c = 1
    .计次循环首 ((取数组成员数 (b) - 1) ÷ 2, )
        加入成员 (b1, b [c])
        置随机数种子 ()
        加入成员 (b1, t1 [取随机数 (1, 取数组成员数 (t1))])
        c = c + 2
    .计次循环尾 ()
    c = 2
    .计次循环首 ((取数组成员数 (b) - 1) ÷ 2, )
        加入成员 (b1, b [c])
        置随机数种子 ()
        加入成员 (b1, t1 [取随机数 (1, 取数组成员数 (t1))])
        c = c + 2
    .计次循环尾 ()
    加入成员 (b1, b [取数组成员数 (b)])
.否则
    c = 1
    .计次循环首 (取数组成员数 (b) ÷ 2, )
        加入成员 (b1, b [c])
        置随机数种子 ()
        加入成员 (b1, t1 [取随机数 (1, 取数组成员数 (t1))])
        c = c + 2
    .计次循环尾 ()
    c = 2
    .计次循环首 (取数组成员数 (b) ÷ 2, )
        加入成员 (b1, b [c])
        置随机数种子 ()
        加入成员 (b1, t1 [取随机数 (1, 取数组成员数 (t1))])
        c = c + 2
    .计次循环尾 ()
.如果结束
a = “”
c = 1
.计次循环首 (取数组成员数 (b1), c)
    a = a + b1 [c]
.计次循环尾 ()返回 (a)

解决方案 »

  1.   

    很抱歉,csdn论坛没有这个代码块,这段代码要复制到易语言的IDE才能看得很清晰,希望热心的朋友帮帮忙。
      

  2.   

    "for" 几个字节   "几次循环首"几个字节  抛开中英文 语言差异不说  单是从语言的简单上来说既不可取
    要是先出C#再出VB 你选哪个?
      

  3.   

    大哥们,我发这个帖子不是想讨论易语言,我只是希望有人能帮助新手。
    有人还在说什么中英文切换,看来好多人根本没见过易语言。
    也怪我把问题问复杂了,很抱歉。我初学c#,有些方法不知道怎么用,大家说说这些方法c#要怎么写,其它我自己慢慢摸索,谢谢:
    1、取绝对值():本命令是把数值的符号都换成正号,零的绝对值是零。先把数值编辑框的内容转换到数值型,将转换后的数值编辑框的内容取其绝对值,再把返回的数值转换到文本型,放入到取绝对值标签的标题中。2‘数组的操作:
    比如 
    string [] c;
    string s="1234567890"怎么让c[0]=s的第n位?并且返回文本。希望有人能回复我上面的问题,不要讨论其它了,谢谢。
      

  4.   

    Math是System命名空间的一个专门处理数学计算的一个类string s="-32";
    int n=int.Parse(s);//将字符串转换为整数
    n=Math.Abs(n);//取绝对值
    s=n.ToString();//转换为字符串
      

  5.   

    最下面那个问题你要说清楚些,不明白你要什么string s = "12345";
    string[] items=new string[s.Length];
    i=0;
     foreach (char c in s)
    {
     items[i]=c.ToString();
     i++;
    }
    或者你是要这个?
    char[] chars=s.ToCharArray();????????还是要这个?
    s="123";
    s=s.SubString(0,2);// s="12"s=s.SubString(1);//s="23"