текстовые файлы, проверка на совпадение |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
текстовые файлы, проверка на совпадение |
katafract |
Сообщение
#1
|
Новичок Группа: Пользователи Сообщений: 11 Пол: Мужской Репутация: 0 |
Народ, у меня последняя зачётная неделя, а я никак не могу решить вот эту задачу:
Даны два текстовых файла F u G. Определить, совпадают ли компоненты этих файлов. Если нет, то получить номер первого несовпадающего компонента. В случае, когда один из файлов имеет n компонентов(n=>0) и повторяет начало другого более длинного, то ответом должно быть n+1. Пример: File1.txt File2.txt Abcd abcdefg В этом случае ответ 5, т.к. File2 длиннее File1. File1.txt File2.txt Abcd abgdtrfg А здесь ответ 3… Вообще-то она на вид лёгкая, но у меня после 2-ух недель практики за электрорадиоизмерительными приборами голова не работает… А самая главная проблема в том, что я не могу понять с чего начать: с While(not EOF(file1)) While(not EOF(file2))… Помогите, пожалуйста!!!:( |
мисс_граффити |
Сообщение
#2
|
просто человек Группа: Пользователи Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: 55 |
открыть файлы и все такое... потом:
while not(EOF(file1)) and not(EOF(file2)) do а еще я бы добавила флажок и выходила из этого цикла, как только встречу несовпадение. -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
katafract |
Сообщение
#3
|
Новичок Группа: Пользователи Сообщений: 11 Пол: Мужской Репутация: 0 |
|
мисс_граффити |
Сообщение
#4
|
просто человек Группа: Пользователи Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: 55 |
считывать компонент из первого, считывать из второго.
переменная-счетчик изменяется на 1. сравнивать. если равны - цикл продолжается.... если нет - пользуешься переменной-флажком, о которой я говорила. после выхода из цикла смотришь, почему вышел: если кончились оба файла и переменная осталась истиной, значит, все совпало. если нет - выводишь значение переменной-счетчика. полностью код писать не буду. пробуй сам. не получится - спрашивай. -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
katafract |
Сообщение
#5
|
Новичок Группа: Пользователи Сообщений: 11 Пол: Мужской Репутация: 0 |
|
katafract |
Сообщение
#6
|
|||
Новичок Группа: Пользователи Сообщений: 11 Пол: Мужской Репутация: 0 |
Вот так вот подойдёт?
Program Lab; Немного не так, как ты посоветовала, но это всё, до чего я додумался...
Сообщение отредактировано: мисс_граффити - |
|||
мисс_граффити |
Сообщение
#7
|
просто человек Группа: Пользователи Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: 55 |
я бы все же задала начальное значение i
и еще... представь, у тебя много элементов не совпадает. что получится? вставь, что ли, break какой-нибудь после Writeln(‘Позиция первого несовпадающего элемента равна’, k); Сообщение отредактировано: мисс_граффити - -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
katafract |
Сообщение
#8
|
Новичок Группа: Пользователи Сообщений: 11 Пол: Мужской Репутация: 0 |
Вот так вот?
Program Lab_2; Сообщение отредактировано: katafract - |
мисс_граффити |
Сообщение
#9
|
просто человек Группа: Пользователи Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: 55 |
теги!!!!
-------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
katafract |
Сообщение
#10
|
Новичок Группа: Пользователи Сообщений: 11 Пол: Мужской Репутация: 0 |
блин, я же говорю, что не понимаю... я этот Паскаль только третий месяц учу...
|
мисс_граффити |
Сообщение
#11
|
просто человек Группа: Пользователи Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: 55 |
да при чем здесь паскаль?
видишь, как в моих сообщениях код рамочкой обводится? у тебя так же должно быть. вместо [cоlor=...] надо писать [ code = pas] [ / code] (без пробелов). For j:=1 to length(st2) do begin не боишься, что st1 закончится раньше, чем st2? Сообщение отредактировано: мисс_граффити - -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
katafract |
Сообщение
#12
|
Новичок Группа: Пользователи Сообщений: 11 Пол: Мужской Репутация: 0 |
вот об этом я тоже думал...Не поможешь?
|
мисс_граффити |
Сообщение
#13
|
просто человек Группа: Пользователи Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: 55 |
пока не отредактируешь свое сообщение - нет.
-------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
katafract |
Сообщение
#14
|
Новичок Группа: Пользователи Сообщений: 11 Пол: Мужской Репутация: 0 |
Отредактировал...Мне тут ещё преподаватель подсказал, что надо команду Break поставить после
Writeln(‘Позиция первого несовпадающего элемента равна’, k)для выхода из цикла, чтобы просматривать не все элементы, а только до первого несовпадающего...это как? |
мисс_граффити |
Сообщение
#15
|
просто человек Группа: Пользователи Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: 55 |
слушай, а ты читаешь, что я тебе пишу?
сообщение #7 в частности... -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
katafract |
Сообщение
#16
|
Новичок Группа: Пользователи Сообщений: 11 Пол: Мужской Репутация: 0 |
|
katafract |
Сообщение
#17
|
Новичок Группа: Пользователи Сообщений: 11 Пол: Мужской Репутация: 0 |
Мисс Граффити
Ну где же ты? |
Archon |
Сообщение
#18
|
Профи Группа: Пользователи Сообщений: 618 Пол: Мужской Репутация: 24 |
Цитата Мисс Граффити В смысле ты ещё не понимаешь "это как" или чего другое? Если первое - ответ: буквально. После указанной строчки ставь команду Ну где же ты? ...она прерывает выполнение цикла. -------------------- Close the World...txeN eht nepO
|
Текстовая версия | 13.10.2024 21:46 |