Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
21 / 21 / 3
Регистрация: 11.01.2011
Сообщений: 72
.NET 4.x

Объяснить необъяснимое

12.08.2011, 17:19. Показов 1267. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Нужен уверенный комментарий по поводу нижеописанного кода на паскале ( хочу понять что сдесь происходит и адаптировать его под СИ-Шарп) Буду презнателен за хороший совет!!
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
Program K_S;
Var
  ST: String;
 
function KSUM(var S: String): String;
var
  i, l: Integer;
  KS: Word;
  SS: String;
begin
  KS:=65535;
  for i:=2 to Length(S) do
  begin
    KS := KS xor Ord(S[i]);
    for l:=1 to 8 do
     if (KS div 2)*2<>KS then KS := (KS div 2) xor 40961
     else KS := (KS div 2);
  end;
  Str(KS, SS); { Преобразование KS в текстовый вид }
  KSUM := SS;
end;
 
Begin
 ST := ':1;0;';        { Пример исходной строки без контр.суммы }
 ST := ST+KSUM(ST)+#13;
 Writeln(ST);
End.
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
12.08.2011, 17:19
Ответы с готовыми решениями:

Необъяснимое поведение
Форма 1 public partial class FormSettings : Form { public FormSettings() { ...

Необъяснимое падение позиций
Прошу помочь разобраться со следующей ситуацией. Сайт СДЛ, возраст около 2 лет, по многим интересующим запросам был в ТОП-10, ТОП-20....

Необъяснимое поведение таймеров
Имеем TYM1 и TIM2. DMA работающий с TYM1 должен слать данные со скоростью не менее 25Мгц (хотим раскачаться до 50Мгц). Добиваться...

1
Злой няш
 Аватар для I2um1
2136 / 1505 / 565
Регистрация: 05.04.2010
Сообщений: 2,881
12.08.2011, 17:34
Лучший ответ Сообщение было отмечено doker1r как решение

Решение

Адаптировал под C#:
Код программы...
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
using System;
 
namespace ConsoleApplicationTest
{
    class Program
    {
        static string KSUM(string S)
        {
            int KS = 65535;
            for (int i = 1; i < S.Length; i++)
            {
                KS ^= S[i];
                for (int l = 1; l < 8; l++)
                    if ((KS % 2) * 2 != KS)
                        KS = (KS % 2) ^ 40961;
                    else
                        KS = (KS % 2);
            }
            return KS.ToString();
        }
        static void Main(string[] args)
        {
            string ST = ":1;0;";
            ST = ST + KSUM(ST) + (char)13;
            Console.WriteLine(ST);
        }
    }
}


По поводу того, что здесь происходит: как я понял, это извращенный способ получить контрольную сумму.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
12.08.2011, 17:34
Помогаю со студенческими работами здесь

Необъяснимое поведение CSS
На десятках страниц сайта вполне нормально работает меню, но когда я из этого же макета страницы решил добавить новую, то возникло явление,...

Объясните необъяснимое поведение отладчика
Ситуация такая, есть какой-то флаг, сначала он равен false, я хочу по клику мышки в обработчике менять этот флаг без операторов сравнения....

Старый кассетный магнитофон и необъяснимое явление...
Доброго времени. У меня был старый касетный магнитофон, Союз 220М, который валялся в разобранном виде, а на компьютер не было хорошего...

Мистика или необъяснимое поведение материнки
Всем приветы. Ситуация такая. Внезапно выключился комп (адских нагрузок не испытывал) Первым делом проверил бп, работает. Откинул питание...

Необъяснимое исчезновение программ и драйверов на ноутбуке Acer Extensa 2519
Неделю назад я поставил винду на ноутбук, а сегодня с ним произошло необъяснимое. Программы с рабочего стола исчезли почти все, за...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru