-2

У меня есть строка

string = "Hello";

Задача такова:

  1. Надо преобразовать каждую букву в код ASCII(пример: H - 72, e - 101 и т.д.)

  2. Полученные цифры перевести в двоичную систему счисления(пример: 72 - это 0b1001000)

  3. Записать двоичный код в массив. Причём, индексы букв и их двоичные представления должны быть одинаковы(если H - первая буква, то и её двоичное представление должно быть первым в массиве).
Nazar Mazuryk
  • 113
  • 1
  • 1
  • 10
  • 1
    Где ваши наработки? За вас делать задание никто не будет – Nikita Oct 05 '17 at 20:51
  • Задавайте конкретный вопрос. Ваше задание за вас никто делать не будет. – tym32167 Oct 05 '17 at 20:51
  • 1
    ASCII-коды (0-127) во всех кодировках идентичны, т.е. содержат одни и те же символы. Для кодов 128+ размещение символов зависит от выбранной кодировки, но они и не входят в ASCII. Так что для перевода в числа достаточно явно привести char к int, например так: int code = (int)'H' в code будет значение 72. Дальше думайте сами, или приведите код вашей попытки и/или объясните что именно не получилось. – rdorn Oct 05 '17 at 21:03
  • 1
    @Nikita сделали задание – Alex78191 Oct 05 '17 at 21:40
  • Мне кажется, у вас какая-то путаница в понятиях. У чисел нет системы счисления. Подумайте об этом. – VladD Oct 06 '17 at 21:58

1 Answers1

3

держи код, может быть он тебе жизненно необходим, в BinaryArray все как и просил

string s = "Hello!";
var ASCIIBytes = Encoding.ASCII.GetBytes(s);
var BinaryArray = new string[s.Length];
for(int i = 0; i < s.Length; i++) {
   BinaryArray[i] = Convert.ToString(ASCIIBytes[i], 2);
}