Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.04.2022, 00:36   #411
sergey.serg-72
Форумчанин
 
Регистрация: 12.03.2019
Сообщений: 376
По умолчанию

Цитата:
Сообщение от BDA Посмотреть сообщение
Какие-то ошибки можно выявлять одновременно, но если рассматривать именно эти три, то я не вижу это возможным. Если строка неверной длины, то она уже не может быть верной S-записью. Если в строке есть неверные символы, то невозможно оценить правильность контрольной суммы, так как складывать нечего.
Да, это правильно, у меня тоже не получилось все сразу ошибки, оставил как есть, дополнительно кнопку чтоб контролку проверять отдельно, хотя ясно что контролка будет битая.
sergey.serg-72 вне форума Ответить с цитированием
Старый 17.04.2022, 00:41   #412
sergey.serg-72
Форумчанин
 
Регистрация: 12.03.2019
Сообщений: 376
По умолчанию

Цитата:
Сообщение от BDA Посмотреть сообщение
Ну да, дать возможность быстро сохранить результат в файл правильно. А насчет удобства - не хватает только вертикального скроллбара у мемо (можно включить), а больше блокнот ничего не предлагает.
Да этот момент оценен уже , не зря я всё же его сделал. В блокноте можно шрифт увеличить , что важно для тех, у кого со зрением беда... Можно конечно и по клику по программе шрифт изменить, но лучше запись в блокнот и разбираться детально в проблемных строках, удобно.


не хватает только вертикального скроллбара у мемо (можно включить), а больше блокнот ничего не предлагает.[/QUOTE] у меня он автоматом сам появляется + шрифт увеличить можно, удобно скопировать адрес повреждённой строки и найти её в общем файле, что тоже удобно.
А потом анализ солидней, как авто диагностика.
sergey.serg-72 вне форума Ответить с цитированием
Старый 17.04.2022, 00:44   #413
sergey.serg-72
Форумчанин
 
Регистрация: 12.03.2019
Сообщений: 376
По умолчанию

Цитата:
Сообщение от BDA Посмотреть сообщение
В поле длины хранится только длина данных, а нужно еще учесть длину двоеточия, поля длины, поля адреса, поля типа, поля контрольной суммы (всего 11 символов).
Блин а я о двоеточие и не подумал, вот у меня 10 и получалось, теперь ясно.
sergey.serg-72 вне форума Ответить с цитированием
Старый 17.04.2022, 00:53   #414
sergey.serg-72
Форумчанин
 
Регистрация: 12.03.2019
Сообщений: 376
По умолчанию

Цитата:
Сообщение от BDA Посмотреть сообщение
Ну какой куда. Это можно понять, когда начнете добавлять код. Понадобятся и дополнительные переменные.
С кодом я ни как не могу понять как проверять количество скажем строк с S9, или повторяющиеся S5,S4 и.т.д С переменными понятно что нужны, но опять либо стринг, либо интежер не понятно. Как не понятно построение проверки строк
Код:
if 2 * StrToInt('$' + st[i][1] + st[i][2]) + S9 > 2 then
begin
Lines.Add(Format('не допустимо повторение строки str ¹ %d: %s', [i + 1, st[i]]));
continue;
end;
Код:
if st[i][1]+st[i][2] = 'S9' > 2  then
begin
Lines.Add(Format('Повторение строки не  допустимо str № %d: %s', [i + 1, st[i]]));
continue;
end;
В общем считать не проблема, но не получается, весь мозг сломал, переменные и стринг и интежер пробовал, не то проверяет ....

Последний раз редактировалось sergey.serg-72; 17.04.2022 в 01:07.
sergey.serg-72 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужно создать "батник", вырезать из "2.txt" первых n строк и вставить их в "1.txt" temphard Помощь студентам 2 03.09.2013 16:03
Удаление первых n-строк из txt-файла Neksion Помощь студентам 2 10.07.2013 18:12
Создать чтение из файла и запись в файл txt на С++ skifre Фриланс 0 01.06.2012 16:16
поиск и выципление строк из txt файла D_e_n_n Помощь студентам 7 04.02.2011 05:39
C# Представление txt файла как массива строк asheb Помощь студентам 7 20.04.2010 12:51