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

Считать из файла, подсчитать количество знаков препинания, записать в файл - C++

Восстановить пароль Регистрация
 
Ruslan3101
0 / 0 / 0
Регистрация: 02.12.2011
Сообщений: 15
16.06.2013, 20:24     Считать из файла, подсчитать количество знаков препинания, записать в файл #1
Ребят, помогите пожалуйста, 29 июня экзамен по "Основы программирования",кто сколько сможет сделать задач, тем всей группой поставим "+" пожалуйста, Заранее, СПАСИБО....



a)Требования:
1. Подготовить текстовый файл с входными данными в редакторе.
2. Составить алгоритм программы.
3. Выделить функции ввода, обработки и вывода.
4. Входные данные прочитать из файла.
5. Выполнить обработку в соответствии с заданием.
6. Вывести результаты на экран и дозаписать в файл.
*Для массивов во входном файле указываются:
в первой строке количество элементов; во второй строке указываются сами элементы.

21 задание.
Дано предложение:
« Враг, что мудр и много знает, друга может быть ценней.
Мудрость уважать пристало у врагов и у друзей. »
-считать из файла,
-подсчитать кол-во знаков препинания
-записать в файл.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.06.2013, 20:24     Считать из файла, подсчитать количество знаков препинания, записать в файл
Посмотрите здесь:

C++ Посчитать количество знаков препинания в тексте и вывести их количество.
C++ Подсчитать количество знаков препинания в строке.
C++ Выполнить статистику текста: подсчитать количество букв, знаков препинания, слов, предложений, абзацев.
C++ Чтение из файла только букв и знаков препинания
C++ Подсчитать количество знаков препинания в строке
C++ Выборка из текстового файла знаков препинания и сохранение их в отдельный файл
C++ Подсчитать сколько знаков препинания в данной строке
C++ Найти количество знаков препинания в строке

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
atoi
120 / 114 / 49
Регистрация: 18.05.2013
Сообщений: 336
Завершенные тесты: 2
17.06.2013, 12:56     Считать из файла, подсчитать количество знаков препинания, записать в файл #2
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
29
30
31
32
33
34
35
36
37
#include <iostream>
#include <fstream>
using namespace std;
 
int main()
{
        setlocale (0, "");
    ifstream inp ("text.txt");
    char delims[]="«»:(),.;!-?";
    if (!inp)
    {
        cout<<"Ошибка чтения файла!"<<endl;
        return 1;
    }
    char str [30][80];
    int k=0; //кол-во строк в файле
    int n=0; //кол-во знаков препинания
 
    while (!inp.eof())
    {
        inp.getline(str[k],79);
        for (int i=0; i<=80; i++)
        {
            for (int j=0; j<=10; j++)
        if (str[k][i]==delims[j])
            n++;
        }
        k++;
    }
    
    inp.close();
    cout<<"Количестов знаков препинания: "<<n<<endl;
    ofstream out("text.txt", ios::app);
    out<<"\nКоличестов знаков препинания: "<<n;
    out.close();
    return 0;
}
Содержимое text.txt
Код
« Враг, что мудр и много знает, друга может быть ценней.
Мудрость уважать пристало у врагов и у друзей. »
Выводит и записывает, что 6 знаков препинания, считая и кавычки.

Добавлено через 12 часов 32 минуты
вот другой вариант с использованием ф-ции ispunct(), на мой взгляд, гораздо лучше моего первого варианта.

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
29
30
31
32
33
34
35
36
37
38
39
#include <iostream>
#include <fstream>
#include <locale>
using namespace std;
 
int main()
{   
    locale loc ("Russian_Russia");
    setlocale (0, "");
    ifstream inp ("text.txt");
    if (!inp)
    {
        cout<<"Ошибка чтения файла!"<<endl;
        return 1;
    }
    char str [30][80];
    int k=0; //кол-во строк в файле
    int n=0; //кол-во знаков препинания
 
    while (!inp.eof())
    {
        inp.getline(str[k],79);
 
        for (int i=0; i<=80; i++)
        {
        if (ispunct(str[k][i], loc))
            n++;
        }
        
        k++;
    }
    
    inp.close();
    cout<<"Количестов знаков препинания: "<<n<<endl;
    ofstream out("text.txt", ios::app);
    out<<"\nКоличестов знаков препинания: "<<n;
    out.close();
    return 0;
}
Yandex
Объявления
17.06.2013, 12:56     Считать из файла, подсчитать количество знаков препинания, записать в файл
Ответ Создать тему
Опции темы

Текущее время: 04:24. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru