Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Devil7
0 / 0 / 0
Регистрация: 05.10.2011
Сообщений: 97
#1

Обработка файловой информации - C++

02.03.2012, 21:25. Просмотров 683. Ответов 8
Метки нет (Все метки)

Будте добры, помогите разобраться с задачей: дан текстовый файл, фразы в котором отделены друг от друга точками, а слова – пробелами и знаками препинания. Оставить в этом файле только те фразы, в которых имеется числовая информация. Любой помощи буду благодарен. Спасибо.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.03.2012, 21:25
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Обработка файловой информации (C++):

Обработка файловой структуры данных использование записи - C++
Нужен готовый код Создать файл , содержащий информацию об ассортименте обуви в магазине фирмы . Структура содержит артикул ,...

обработка символьной информации - C++
Составить программу, которая преобразует произвольный текст путем переворачивания (записи букв в обратном порядке) слов, имеющих четное...

Обработка символьной информации - C++
Обработка символьной информации. Составьте программу, которая дописывает одну строку в начало другой, не используя операции склейки или...

Обработка символьной информации - C++
добрый вечер! У кожній з 10 рядкових змінних міститься назва художнього твору і прізвище автора. Вивести на екран наявні серед них твори...

Обработка символьной информации - C++
Помогите разработать программу где дефис в доменном имени может быть только одиночным. есть пример программы // Подсчет гласных...

Обработка символьной информации - C++
Помогите пожалуйста разобраться в задаче. (66.) Гороскоп. В древнеяпонском календаре был принят 60-летний цикл из пяти 12-летних циклов,...

8
retmas
Жарю без масла
863 / 745 / 168
Регистрация: 13.01.2012
Сообщений: 1,702
02.03.2012, 21:32 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
читаешь файл по фразам
C++
1
2
3
4
ifstream f("file");
string phrase;
...
getline(f, phrase, '.');
проверяешь каждую фразу на содержание в ней цифр
C++
1
2
if(phrase.find_first_of("0123456789") != string::npos)
    ...
3
Devil7
0 / 0 / 0
Регистрация: 05.10.2011
Сообщений: 97
05.03.2012, 20:21  [ТС] #3
Фразой тут является предложение от точки до точки. Вот если какая-либо числовая информация встретится, то все предложение нужно оставить. Все остальное удалить. Вот мое тело, но как сделать, что бы осталось целое предложение не могу придумать(

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# include <stdio.h>
 
int main ()
{
    char n;
    FILE *fin;
    if((fin=fopen("read.txt","rt"))==0)
    {
        printf("File can not found");
        return 1;
    }
    while (!feof(fin))
    {
        fscanf(fin,"%c",&n);
        printf("%c",n);
    }
    fclose(fin);
}
Добавлено через 1 час 42 минуты
.....

Добавлено через 21 минуту
........

Добавлено через 31 минуту
(((((

Добавлено через 6 минут
Аааа((( никто не отвечает))
0
Avazart
Нарушитель
Эксперт С++
7226 / 5398 / 291
Регистрация: 10.12.2010
Сообщений: 23,931
Записей в блоге: 17
05.03.2012, 20:25 #4
использовать то что retmas написал: записывать не посимвольно, а предложениями которые записывать в строку string phrase
0
Devil7
0 / 0 / 0
Регистрация: 05.10.2011
Сообщений: 97
05.03.2012, 20:32  [ТС] #5
Avazart, было бы любезно с вашей стороны если объяснили, какой смысл содержат строки retmas, точнее их спицифика работы и функция. В интернете ищу целый день, никак ничего не мог унайти подобного( Спасибо.
0
Avazart
Нарушитель
Эксперт С++
7226 / 5398 / 291
Регистрация: 10.12.2010
Сообщений: 23,931
Записей в блоге: 17
05.03.2012, 20:47 #6
Скачайте к примеру книгу Шилда "Самоучитель" там есть про строки и про ввод-вывод

C++
1
2
3
4
5
6
7
#include <string>
#include <fstream>
 
std::ifstream f("file"); // открытие файла для чтения с именем "file"
std::string phrase;   // строка (контейнер)  
...
getline(f, phrase, '.'); // Чтение из файла в строку phrase до встречи символа "." или конца строки "\n" или конца файла
Добавлено через 9 минут
C++
1
if(phrase.find_first_of("0123456789") != string::npos)  //  Использование  метода строки который ищет заданные символы в строке и возращает их позицию
1
Devil7
0 / 0 / 0
Регистрация: 05.10.2011
Сообщений: 97
05.03.2012, 20:49  [ТС] #7
Спасибо вам огромное, буду пробовать щас.
0
retmas
Жарю без масла
863 / 745 / 168
Регистрация: 13.01.2012
Сообщений: 1,702
05.03.2012, 21:02 #8
Цитата Сообщение от Avazart Посмотреть сообщение
getline(f, phrase, '.'); // Чтение из файла в строку phrase до встречи символа "." или конца строки "\n" или конца файла
поправочка: чтение из файла в строку phrase до встречи символа '.' или конца файла
1
Avazart
Нарушитель
Эксперт С++
7226 / 5398 / 291
Регистрация: 10.12.2010
Сообщений: 23,931
Записей в блоге: 17
05.03.2012, 21:36 #9
Да именно так, плюс нюанс getline удаляет символ разделитель "." из потока, но не записывает его в строку
1
05.03.2012, 21:36
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.03.2012, 21:36
Привет! Вот еще темы с ответами:

С++ Обработка текстовой информации - C++
Здравствуйте, форумчане. Злой препод дал прогу, не могу написать голову ломаю...:) Задание звучит так: Пользователь вводит слово, потом...

Обработка текстовой информации С++ - C++
Вот значит добрые люди моя программа. Программа в строке символов должна находить первую и последнюю запятую. Всё отлично работает. ...

Обработка символьной информации - C++
Добрый день. Форумчани, очень нужна помощь, вот задание:Распечатать в порядке, обатном алфавитному, все буквы, которые входят в текст не...

обработка символьной информации - C++
Здраствуйте,прошу помощи со следующей задачей: В заданном тексте найти самое длинное слово в котором все буквы разные примерные...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru