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

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

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

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

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 25.03.2011, 12:18   #1
dark999
Пользователь
 
Аватар для dark999
 
Регистрация: 17.03.2011
Сообщений: 42
Восклицание найти ошибку в задаче!

Условие:

Даны 2 текстовых файла. Записать в третий только те строки, которые есть и в первом и во втором файлах.


Код программы:

Код:
Program lab8;
uses crt;
var
f,f1,f2:text;
s,s1:String;
begin
clrscr;
  Assign(f,'D:\222.txt');
  reset(f);
  Assign(f1,'D:\333.txt');
  reset(f1);
  Assign(f2,'D:\444.txt');
  rewrite(f2);
  while(not eof(f))do
  begin
     readln(f,s);
     writeln(s);
     reset(f1);
     while(not eof(f1))do
     begin
       readln(f1,s1);
       if s = s1 then
   {  writeln(s1);}
     end;
    Close(f1);
  end;
  Close(f2);
  Close(f);
  readln;
  readkey;
end.

Откладка:

Выводит только те строки, которые есть в первом файле!
dark999 вне форума
Старый 25.03.2011, 13:12   #2
phomm
personality
Старожил
 
Аватар для phomm
 
Регистрация: 28.04.2009
Сообщений: 2,899
По умолчанию

бррр, ну, собственно, он их и выводит: writeln(s); а вывод одинаковой строки у вас закомментен, как это, кстати, так компилится... ведь получается что end сразу после then , и вывода в 3 файл не вижу.

также думаю первый reset(f1); можно убрать, всё равно ведь в цике его делаете
phomm вне форума
Старый 25.03.2011, 13:18   #3
dark999
Пользователь
 
Аватар для dark999
 
Регистрация: 17.03.2011
Сообщений: 42
По умолчанию

напиши правильный код пожалуйста, с исправленными ошибками который ты нашел



Хотя я уже САМ додумался, спасибо

Последний раз редактировалось dark999; 25.03.2011 в 13:28. Причина: ))
dark999 вне форума
Старый 25.03.2011, 14:08   #4
BoozZzilla
Форумчанин
 
Аватар для BoozZzilla
 
Регистрация: 26.01.2009
Сообщений: 125
По умолчанию аххаха

что САМ додумался ты молодец
BoozZzilla вне форума
Старый 25.03.2011, 15:15   #5
black_prog
Новичок
Джуниор
 
Регистрация: 25.03.2011
Сообщений: 3
По умолчанию

Сейчас нет паскаля под рукой, но смысл таков.
Из первого файла читаем первое слово (не знаю что там у вас), а после мы начинаем перебирать второй файл и если слова = тогда сделать запись во второй файл. Поробую поправить но могу допустить ошибки.
Код:
Program lab8;
uses crt;
var
f,f1,f2:text;
s,s1:String;
begin
clrscr;
  Assign(f,'D:\222.txt');
  reset(f);
  Assign(f1,'D:\333.txt');
  reset(f1);
  Assign(f2,'D:\444.txt');
  rewrite(f2);
  while(not eof(f))do
  begin
     readln(f,s);
     while(not eof(f1))do
     begin
       readln(f1,s1);
       if s = s1 then
                         begin
                                write (f2, s);
                         end;

     end;
    Close(f1);
  end;
  Close(f2);
  Close(f);
  readln;
  readkey;
end.
black_prog вне форума
Закрытая тема


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
C++. Не могу найти ошибку в задаче. Ogyt Помощь студентам 1 22.12.2010 01:44
НАйти ошибку в задаче dragun4ik Помощь студентам 6 29.06.2010 23:24
Помогите найти ошибку в задаче на С++ Nastya123 Помощь студентам 2 26.05.2009 14:18
Помогите найти ошибку в задаче! dimmkka Помощь студентам 2 20.02.2009 20:09
Найти ошибку в задаче на ПАскаль Анжелика Помощь студентам 3 16.01.2009 00:55