Member 12782399 Ответов: 3

Нужна помощь в исправлении этого #C


Пожалуйста, кто-нибудь, исправьте это. спасибо
public static string Decrypt(string Text)
        {
            int num = 0;
            string text2;
            int num5 = 0;
            try
            {
                num = 1;
                int num2 = 2;
                string text = "";
                num2 = 3;
                long arg_25_0 = 1L;
                long num3 = Text.Length;
                checked
                {
                    for (long num4 = arg_25_0; num4 <= num3; num4 += 1L)
                    {
                        num2 = 4;
                        //text += Convert.ToString(Convert.ToChar(Strings.Asc(Strings.Mid(Text, (int)num4, 1)) - 1));
                        num2 = 5;
                    }
                    num2 = 6;
                    text2 = text;
                }
                int arg_6F_0 = num5 + 1;
                num5 = 0;
                num5 = num2;
            }
            }

[edit]добавлен блок кода-OriginalGriff [/edit]

Что я уже пробовал:

ничего особенного......................................................................

3 Ответов

Рейтинг:
2

Richard MacCutchan

Посмотрите на кодовую последовательность:

int num2 = 2;          // set num2
string text = "";
num2 = 3;          // set num2
long arg_25_0 = 1L;
long num3 = Text.Length;
checked
{
    for (long num4 = arg_25_0; num4 <= num3; num4 += 1L)
    {
        num2 = 4;          // set num2
        //text += Convert.ToString(Convert.ToChar(Strings.Asc(Strings.Mid(Text, (int)num4, 1)) - 1));
        num2 = 5;          // set num2
    }
num2 = 6;          // set num2
num5 = 0;
num5 = num2;

все эти жестко закодированные задания num2, делают невозможным понять, что должен делать код. Это действительно выглядит так, как будто вы написали это с закрытыми глазами.


Рейтинг:
2

Patrice T

Насколько я вижу, ваш код ничего не делает.

Цитата:
Пожалуйста, кто-нибудь, исправьте это. спасибо

Мы не можем !
Вы забыли сказать нам, что должен делать ваш код.
Вы забыли сказать нам, как код пошел не так.

Задавать вопросы-это навык[^]


Рейтинг:
0

OriginalGriff

Цитата:
Пожалуйста, кто-нибудь, исправьте это. спасибо

Мы не можем - мы понятия не имеем, что с ним не так!
Кроме того, мы не знаем, что он должен делать, что он на самом деле делает, или какое-либо представление о данных для ввода, с которыми мы могли бы проверить его, и тем более о подходящих выходных данных для сравнения, когда это будет сделано.

Так что все будет зависеть от тебя.
Поместите точку останова в первую строку функции и запустите код через отладчик. Затем посмотрите на свой код и на свои данные и определите, что должно произойти вручную. Затем по одному шагу в каждой строке проверяйте, что именно то, что вы ожидали, произошло. Когда это не так, тогда у вас есть проблема, и вы можете вернуться назад (или запустить ее снова и посмотреть более внимательно), чтобы выяснить, почему.

Извините, но мы не можем сделать это за вас-вам пора освоить новый (и очень, очень полезный) навык: отладку!

И, пожалуйста, посмотрите на этот код и хорошенько подумайте о том, как вас зовут. означать - почему у вас есть строки с такими близкими именами: text, Text, и text2 - наверняка для них есть более описательные названия? И num, num2, num3, ...
Что это за чертовщина arg_25_0 и arg_6F_0 ..- а ты даже не знаешь. использовать последнее!
Используйте имена, которые описывают то, для чего они существуют, а не просто "заполнители" - это делает ваш код намного проще для чтения и понимания (это называется " самодокументация")

Тогда есть ваш цикл...который вообще ничего не делает с практической точки зрения, учитывая, что единственный его "переменный" бит закомментирован.

Честно говоря, я думаю, что вам лучше вернуться к началу и начать все сначала...