Я пытаюсь написать приложение для преобразования разных систем счисления. В приведенном ниже коде я проверяю, что остальное - «0» или «1». Если это так, программа должна добавить «0» или «1» к моей строке результата binaer. Это не работает, и я понятия не имею, почему.

public void dezinbin(int dez) {
    var binaer = "";        // erstellt den leeren Ausgabestrang
    var platzhalter = dez;                  //Platzhalter für dez, da des nicht verändert werden kann

    for (var i = 0; i<16; i++){
        var binarrest = platzhalter % 2;  //teilt dez durch 2 und speichert den rest in binaerrest
        platzhalter = platzhalter / 2;          //verringert die dez-Eingabe um die hälfte
        if (binarrest == 0) //hängt den binaerrest jeweils an den Anfang des Ausgabestrings
        {
            binaer.Insert(0, "0");
        }
        else 
        {
            binaer.Insert(0, "1");
        }
                    }
    this.bin = binaer;   //gibt den Ausgabestring zurück
}
-1
Fabian 8 Сен 2016 в 18:17

2 ответа

Правильно ли я понимаю, что вы хотите добавить «0» или «1» к строковому бинару?

Если вы хотите добавить в конец, попробуйте

    binaer +=  "1"

Если вы хотите поставить его впереди, то попробуйте

    binaer = "1" + binaer;
1
anil 8 Сен 2016 в 15:27

Попробуйте использовать binaer + = "0"; вместо binaer.Insert (0, «0»);

И так далее и тому подобное.

0
Farhan Ahmed 8 Сен 2016 в 15:31