![]() |
1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!
![]() |
Тёмный Эльф |
![]() ![]()
Сообщение
#1
|
![]() Влюблённый псих ![]() ![]() ![]() Группа: Пользователи Сообщений: 185 Пол: Женский Реальное имя: Лейла Репутация: ![]() ![]() ![]() |
Если подсчитать контрольную сумму одного и того же текстового файла разными способами, разве результат не должен получиться одинаковым? По-моему, должен.
И мне кажется, что самый верный результат у первой проги, там она просчитывает контрольную сумму по формуле C = T%(M+1); А остальные две проги написаны по алгоритму CRC16 (я взяла их из разных источников) и они тоже дают разный результат! Хотя казалось бы, они идентичны. Например, в текстовом файле записано "This is" первая прога выдает: 148 вторая: 57134 а третья вообще: -23314 Почему так? ![]() #include <stdio.h> ======================= #include <stdio.h> =============================== #include <stdio.h> |
![]() ![]() |
xds |
![]()
Сообщение
#2
|
![]() N337 ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 737 Пол: Мужской Репутация: ![]() ![]() ![]() |
А чем отличается CRC-16 от CRC-8? Цитата Вроде в процедуре должен быть и перевод в двоичную систему счисления, и деление на полином. А здесь все в две строчки Всё уже и так в двоичной системе ![]() Цитата непонятно, что здесь значит char in. Эта функция должна вызываться в цикле для каждого символа данных и "накапливать" CRC в переменной, адрес которой передан вторым параметром:#include <stdio.h> Цитата Я компилировала в Turbo C++ . Рабочие. Только результат бредовый! Компилируется только в режиме С++ (хотя программа больше похожа на C). Если это C++, то что за "fgets" и "printf", и где же "f.getline()" и "cout"? ![]() -------------------- The idiots are winning.
|
Тёмный Эльф |
![]()
Сообщение
#3
|
![]() Влюблённый псих ![]() ![]() ![]() Группа: Пользователи Сообщений: 185 Пол: Женский Реальное имя: Лейла Репутация: ![]() ![]() ![]() |
Спасибо, xds, ты все доступно объяснил.
![]() 1000 0100 0010 0001 Почему в обеих прогах (одна по модулю 256, другая по методу CRC-8) результат контрольной суммы разный? Мне казалось, что неважно каким методом считать, но ответ должен быть одинаковым, или я не права? по модулую 256: #include <stdio.h> CRC-8: #include <stdio.h> Сообщение отредактировано: Тёмный Эльф - 8.05.2007 17:07 |
![]() ![]() |
![]() |
Текстовая версия | 26.07.2025 1:16 |