public Crypt(string str) { bukva = str.ToCharArray(); flow = new string[bukva.Length]; int[] rand = new int[1000]; for (int i = 0; i < rand.Length; i++) { rand[i] = i; } GSCH slovar = new GSCH(rand, 1024); key = new string[code.Length]; for (int i = 0; i < code.Length; i++) { slovar = new GSCH(slovar.gs, 1024); key[i] = slovar.gs[slovar.gs.Length - 1].ToString("X"); for (int p = 0; p < key.Length; p++) { if (key[i] == key[p] && p != i) { slovar = new GSCH(slovar.gs, 1024); key[i] = slovar.gs[slovar.gs.Length - 1].ToString("X"); p = 0; } } for (int h = 0; h < bukva.Length; h++) { for (int j = 0; j < key.Length; j++) { if (bukva[h] == code[j]) { flow[h] = key[j]; break; } } } } }
private void button1_Click(object sender, EventArgs e) { double s = 2; //2 для возведения в степень int a = Decimal.ToInt32(Diapazon_1.Value); //Диапазон int b = Decimal.ToInt32(Diapazon_2.Value); //Диапазон int n = 0; //Степень 2 double c = 0; //Сама степень while (n < b) //Нахождение необходимой степени 2 для ГПСЧ { n = (int)Math.Pow(s, c); c++; } int[] massiv = new int[b - a]; //Создание массива с числами int q = a; for (int l = 0; l < massiv.Length; l++) //Заполнение массива { massiv[l] = q; q++; } GSCH vihod = new GSCH(massiv, n); Vivod.Text = "Результат работы генератора:" + vihod.gs[^ 1];