Завершите eval_strfrac (s, base), чтобы он возвращал свое значение с плавающей точкой

В первые дни компьютеров, когда межсистемная связь телефонной линии не была особенно надежной, использовался грязный метод проверки целостности данных: «бит четности». В этом методе каждый переданный байт должен иметь 7 бит данных, а восьмое - 1 или 0, чтобы заставить общее количество 1 бит в байте быть четным.

Следовательно, 0x01 будет передаваться как 0x81; 0x02 будет 0x82; 0x03 останется 0x03 и т. Д.

Чтобы продолжить эту систему, когда был задан набор символов ASCII, назначены символы только 00-7F. (Сегодня все символы, заданные в диапазоне 80-FF, являются нестандартными)

Многие маршрутизаторы дня поставили проверку на четность и перевод байт в аппаратное обеспечение, вынудив компьютеры, подключенные к ним, работать строго с 7-битные данные. Это силовые вложения электронной почты (и все другие данные, поэтому протоколы HTTP и SMTP основаны на тексте), которые должны быть преобразованы в текстовый формат.

Мало кто из маршрутизаторов выжил в 90-е годы. Я серьезно сомневаюсь, что любой из них используется сегодня.

0
задан Rae Wallace 15 January 2019 в 19:34
поделиться

1 ответ

В цикле while yo = (postlist[i])*((float(base))**-(float(i + 1))) вычисляет значение одной цифры. Тогда yo += yo удваивает его. Вместо этого вы должны добавлять значения цифр к сумме накопления.

Через две строки return float(whole) + float(yo) возвращается из функции внутри цикла, поэтому выполняется только одна итерация цикла. Возвращение должно быть после и вне цикла (без отступа от кода внутри цикла).

0
ответ дан Eric Postpischil 15 January 2019 в 19:34
поделиться
Другие вопросы по тегам:

Похожие вопросы: