A
A
Andrey Golubkov2015-07-19 22:18:25
Delphi
Andrey Golubkov, 2015-07-19 22:18:25

"Jumps" the order of lines when removing duplicates, what's the problem?

var i,j:integer;
begin
j:=0;
i:=8;
while i<memo1.Lines.Count-8 do
begin
while j<memo1.Lines.Count do
begin
if (memo1.Lines.Strings[i+2]=memo1.Lines.Strings[j+2]) AND (memo1.Lines.Strings[i+3]=memo1.Lines.Strings[j+3]) then
begin
ShowMessage(memo1.Lines.Strings[j]+#13+memo1.Lines.Strings[j+1]+#13+memo1.Lines.Strings[j+2]);
memo1.Lines.Strings[j]:='';
memo1.Lines.Strings[j+1]:='';
memo1.Lines.Strings[j+2]:='';
memo1.Lines.Strings[j+3]:='';
memo1.Lines.Strings[j+4]:='';
memo1.Lines.Strings[j+5]:='';
memo1.Lines.Strings[j+6]:='';
memo1.Lines.Strings[j+7]:='';
end;
j:=j+8;
end;
i:=i+8;
end;

Here is an example text
-----------------------------------------------
Отметьте номер правильного варианта ответа:
 СОГЛАСНО «ПОВЕСТИ ВРЕМЕННЫХ ЛЕТ», КНЯЗЕЙ РЮРИКА, СИНЕУСА И ТРУВОРА ПРИЗВАЛИ НА КНЯЖЕНИЕ ПЛЕМЕНА
 | 1  | «Жалованная грамота городам»
 | 2  | «Табель о рангах»
 | 3  | «Указ о секуляризации церковных земель»
 | 4  | «Указ о единонаследии»
-----------------------------------------------
-----------------------------------------------
Установите правильную последовательность:
 ХРОНОЛОГИЧЕСКАЯ ПОСЛЕДОВАТЕЛЬНОСТЬ ИСТОРИЧЕСКИХ СОБЫТИЙ
 | 1  | «Азовское сидение» донских казаков
 | 2  | Семилетняя война
 | 3  | Третий раздел Польши
 | 4  | Северная война
-----------------------------------------------
-----------------------------------------------
Установите правильную последовательность:
 ХРОНОЛОГИЧЕСКАЯ ПОСЛЕДОВАТЕЛЬНОСТЬ ИСТОРИЧЕСКИХ СОБЫТИЙ
 | 1  | Восстание древлян
 | 2  | Поход Олега на Киев, объединение Новгорода и Киева
 | 3  | Начало княжения в Киеве Владимира
 | 4  | Крещение Руси
-----------------------------------------------
-----------------------------------------------
Установите правильную последовательность:
 ХРОНОЛОГИЧЕСКАЯ ПОСЛЕДОВАТЕЛЬНОСТЬ ИСТОРИЧЕСКИХ СОБЫТИЙ
 | 1  | Введение нового летосчисления
 | 2  | Основание Санкт-Петербурга
 | 3  | Учреждение Кунсткамеры
 | 4  | Учреждение Академии наук
-----------------------------------------------
-----------------------------------------------
Установите правильную последовательность:
 ХРОНОЛОГИЧЕСКАЯ ПОСЛЕДОВАТЕЛЬНОСТЬ ИСТОРИЧЕСКИХ СОБЫТИЙ
 | 1  | Экспедиция Ермака в Западную Сибирь
 | 2  | Куликовская битва
 | 3  | Подписание русским митрополитом Исидором Флорентийской унии
 | 4  | Начало Ливонской войны
-----------------------------------------------

When executed, it starts deleting something that is not needed, as a result, a couple of items remain from the section from ----- to ----- and that's it.

Answer the question

In order to leave comments, you need to log in

2 answer(s)
X
xneo, 2015-07-19
@xneo

What is the essence of the task?

L
localghost, 2015-07-20
@localghost

Do you mean that this code removes some of the answer options?
This is hard for me to explain. While the program, it seems to me, does the following: "let's fill the second question with empty lines and all that match it on the 3rd and 4th (?!) lines."
That is, you have
a) the assignments are mixed up at the very beginning;
b) the initialization of the variable of the inner loop must be inside the outer loop;
c) the comparison goes on the 3rd and 4th line - is this exactly how it was intended?

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question