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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 01.06.2012, 19:19   #1
Silverstone
Пользователь
 
Регистрация: 13.12.2011
Сообщений: 75
По умолчанию Delphi. Проверка введенного кода

Позиционная система кодирования информации. Необходимо провести проверку кода на изменение. Типа ввели признаки, они классифицируются и выводятся в Memo.
Если в Memo изменили полученный код, то должна выйти "ошибка, код не совпадает".

Может кто проверку эту помочь сделать?
У меня не получается провести проверку ( стоит на Button3)
Вложения
Тип файла: rar 6.rar (252.1 Кб, 7 просмотров)
Silverstone вне форума Ответить с цитированием
Старый 01.06.2012, 21:53   #2
Silverstone
Пользователь
 
Регистрация: 13.12.2011
Сообщений: 75
По умолчанию

поможет кто? Маленькую часть работы прошу отредактировать
Silverstone вне форума Ответить с цитированием
Старый 01.06.2012, 22:03   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Проект не смотрю, но посоветую вот что: Откуда берется данные в Мемо? Запихивай их копию в строку. А после проверяй
Код:
if s<>Memo.Lines.Text then данные  в s и мемо не совпадают
s:string - содержит изначальные данные, предназначающиеся для Мемо.
Идея понятна?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 02.06.2012, 01:09   #4
Silverstone
Пользователь
 
Регистрация: 13.12.2011
Сообщений: 75
По умолчанию

практически. Но, скорее всего, я так и делал себе...
Код:
I:=0;

  found :=false;
  while (i< memo1.Lines.Count) and (not found) do
  begin
    j:=1;
    while (memo1.Lines[i][j]<>'0') and (j<length(memo1.Lines[i])) and (not found) do
    begin
      if trystrtoint(memo1.lines[i][j],p) then found:=true;
      if not found then inc(j);
    end;
    if not found then inc(i);
  end;
  v:='';
  l:=0;
  if found then
  begin
    v:=copy(memo1.Lines[i],j,3);
    if TryStrToInt(v,p) then l:=l+strtoint(v);
    v:=copy(memo1.Lines[i],j+4,2);
    if TryStrToInt(v,p) then l:=l+strtoint(v);
    v:=copy(memo1.Lines[i],j+7,2);
    if TryStrToInt(v,p) then l:=l+strtoint(v);
    v:=copy(memo1.Lines[i],j+10,2);
    p:=0;
    TryStrToInt(v,p);
    if (round((l)/5*10)-5)<>p then
   Memo1.Lines[i]:=Memo1.Lines[i]+'ОШИБКА ВВОДА';
  end;
Silverstone вне форума Ответить с цитированием
Старый 03.06.2012, 14:38   #5
Silverstone
Пользователь
 
Регистрация: 13.12.2011
Сообщений: 75
По умолчанию

Ну что, поможет то?
Silverstone вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проверка правильности кода программы Petrowa C++ Builder 4 25.11.2015 18:41
Проверка кода С++ AlekCaHdpyLLlka Visual C++ 4 11.05.2012 22:35
Язык С, работа с файлами. (проверка кода) TIT0 Помощь студентам 0 08.12.2010 15:49
проверка правильности кода введенного в форму moidadir JavaScript, Ajax 1 13.07.2009 18:43
Проверка введенного значения yourself Microsoft Office Excel 4 21.04.2008 18:40