Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
0 / 0 / 1
Регистрация: 20.10.2012
Сообщений: 14
1

Записать в файл B, те строки файла A и их номера, в которых заданный символ p не встречался ни разу

08.12.2012, 19:28. Показов 753. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Дан файл А. Записать в файл B, те строки и их номера, в которых заданный символ p не встречался ни разу.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include "stdafx.h"
#include <istream>
#include <fstream>
using namespace std;
 
int poisk (char a[])                  // Функция проверяющая, есть и в сторке символ p.
   {for (int i=0; a[i]!='\0'; i++)    // если нет возвращаем 1,если есть 0.
       { if (a[i]!='p')
         {return 1;}}
       return 0;}
 
 
int _tmain(int argc, _TCHAR* argv[])
{ {char a[100];
  ifstream fin;
  ofstream fout;
      fin.open( "A.txt")
      fout.open( "B.txt")
  while (!fin.eof())
  {fin.getline (a,100)
   if (poisk (a)==1)
   fout<< a<< endl;
   }
  fin.close();
  fout.close();}
    return 0;
}
появляется вот такая ошибка:
error C1083: не удается открыть файл предкомпилированный заголовок: Debug\zadacha.pch: No cush file or directory
в чем может быть проблема?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.12.2012, 19:28
Ответы с готовыми решениями:

Записать в файл все строки исходного файла содержащие заданный символ
Задание: Написать программу, которая создает в текстовом режиме файл в текущем каталоге с именем,...

Переписать в новый файл строки, в которых содержится заданный символ
Переписать в новый файл строки, в которых содержится заданный символ. Сижу туплю уже несколько...

Число и номера позиций, в которых встречается в тексте заданный символ
составить подпрограмму, определяющую число и номера позиций, в которых встречается в тексте...

Задана строка. Вывести номера позиций, в которых встречается заданный символ.
Задана строка. Вывести номера позиций, в которых встречается заданный символ.

4
3 / 3 / 1
Регистрация: 19.05.2012
Сообщений: 15
08.12.2012, 20:38 2
ругается скорее всего на это

#include "stdafx.h"

Кроме этого у Вас по тексту есть ошибки типа отсутствия точки запятой.

Работоспособность не проверял, но компилится без ошибок вот такой вариант:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <istream>
#include <fstream>
using namespace std;
 
int poisk (char a[])                  // Функция проверяющая, есть и в сторке символ p.
   {for (int i=0; a[i]!='\0'; i++)    // если нет возвращаем 1,если есть 0.
       { if (a[i]!='p')
         {return 1;}}
       return 0;}
 
 
int main()
{ {char a[100];
  ifstream fin;
  ofstream fout;
      fin.open( "A.txt");
      fout.open( "B.txt");
  while (!fin.eof())
  {fin.getline (a,100);
   if (poisk (a)==1)
   fout<< a<< endl;
   }
  fin.close();
  fout.close();}
    return 0;
}
0
0 / 0 / 1
Регистрация: 20.10.2012
Сообщений: 14
08.12.2012, 20:57  [ТС] 3
спасибо за ошибки.
но если убрать дерективу появляесться вот такая ошибка:

error C1010: непредвиденный конец файла во время пойска предкомпилированниго заголовка. Возможно, вы забыли добавить дерективу "#include "stdafx.h"" в источник.

а если не убирать, как ранее описанная:
error C1083: не удается открыть файл предкомпилированный заголовок: Debug\zadacha.pch: No cush file or directory

Добавлено через 11 минут
Цитата Сообщение от atom Посмотреть сообщение
ругается скорее всего на это

#include "stdafx.h"

Кроме этого у Вас по тексту есть ошибки типа отсутствия точки запятой.

Работоспособность не проверял, но компилится без ошибок вот такой вариант:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <istream>
#include <fstream>
using namespace std;
 
int poisk (char a[])                  // Функция проверяющая, есть и в сторке символ p.
   {for (int i=0; a[i]!='\0'; i++)    // если нет возвращаем 1,если есть 0.
       { if (a[i]!='p')
         {return 1;}}
       return 0;}
 
 
int main()
{ {char a[100];
  ifstream fin;
  ofstream fout;
      fin.open( "A.txt");
      fout.open( "B.txt");
  while (!fin.eof())
  {fin.getline (a,100);
   if (poisk (a)==1)
   fout<< a<< endl;
   }
  fin.close();
  fout.close();}
    return 0;
}

а как написать что бы, она искала не только строки, но и записывала номера этих строк?
0
3 / 3 / 1
Регистрация: 19.05.2012
Сообщений: 15
09.12.2012, 18:27 4
Q: Как избавится от генерации PCH-файлов
A: В свойствах проекта для файлов выставить "Not Using Precompiled Headers" или "Automatically Generate"

Q: Где находятся эти опции
A: VS6: Project settings -> C/C++ -> Precompiled Headers
VS.NET: Configuration Properties -> C/C++ -> Precompiled Headers

Q: Я настроил компиляцию DEBUG-версии на отказ использования PCH, но при компиляции RELEASE ошибка опять возникла.
A: Project setting для DEBUG/RELEASE представляю разные сущности. См. пред. пункт Q/A и настрой все для RELEASE-конфигурации.

Добавлено через 20 часов 6 минут

Добавлено через 15 минут
вот рабочий вариант с указанием номера строки

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include <istream>
#include <fstream>
using namespace std;
 
int poisk (char a[]){                  // Функция проверяющая, есть и в сторке символ p.
    for (int i=0; a[i]!='\0'; i++){    // если нет возвращаем 1,если есть 0.
        if (a[i]=='p') return 1;
    }
    return 0;
}
 
 
int main(){
    char a[100];
    int num_str = 1;
    ifstream fin;
    ofstream fout;
    fin.open("A.txt");
    fout.open("B.txt");
    while (!fin.eof()){
        fin.getline(a, 100);
        if (poisk(a)) fout<<a<<' '<<num_str<<endl;
        num_str++;
        }
    fin.close();
    fout.close();
    return 0;
}
проверено в codeblocks.
1
0 / 0 / 1
Регистрация: 20.10.2012
Сообщений: 14
09.12.2012, 20:13  [ТС] 5
Код
if (poisk(a))
спасибо большое, все работает. только не хватало еще такого условия, что бы искала именно строку где нет символа "p":
Код
 if (poisk(a)==0)
0
09.12.2012, 20:13
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.12.2012, 20:13
Помогаю со студенческими работами здесь

Считать текст из файла, вывести в другой файл и на экран только строки содержащие заданный с клавиатуры символ
// Написать программу, которая считывает текст из файла и выводит в другой файл // и на экран...

Переписать в другой файл строки исходного файла, в которых встречается заданный слог
Нужна помощь! Не получается сделать программу,которая формирует другой файл, в который переписывает...

Записать в файл те слова, которые начинаются на заданный символ
#include &quot;stdafx.h&quot; #pragma once #include &lt;stdlib.h&gt; #include &lt;iostream&gt; #include &lt;conio.h&gt;...

Записать в файл только те слова, которые начинаются на заданный символ
#include &quot;stdafx.h&quot; #pragma once #include &lt;stdlib.h&gt; #include &lt;iostream&gt; #include &lt;conio.h&gt;...

Считать из этого файла какой-либо символ и записать этот символ в новый файл
здравствуйте , помогите с решением следующего задания: естьтекстовый файл vvod.txt, в нем записана...

Переписать в другой файл строки, оканчивающиеся на заданный символ
Задание: Переписать в другой файл строки, оканчивающиеся на заданный символ. Моя программа: var...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru