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

Определение среднего количества слов в предложениях - C++

Восстановить пароль Регистрация
 
SAMuS
0 / 0 / 0
Регистрация: 28.01.2011
Сообщений: 68
30.01.2013, 17:38     Определение среднего количества слов в предложениях #1
При написании программных продуктов, обрабатывающих различные тексты, часто появляется необходимость исследовать некоторые статистические данные. Так, такое свойство текста, как среднее количество слов в предложении, может помочь определить язык, на котором написан текст или стиль этого текста (художественный, официально-деловой, неофициальный).

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

Формат входного файла

Первая и единственная строка входного файла input.txt содержит текст, отвечающий ограничениям, описанным выше. Суммарное количество символов во входном файле не превышает 10 000. Входной файл содержит только строчные и заглавные буквы английского алфавита, точки и пробелы.

Формат выходного файла

В первой строке выходного файла output.txt выведите одно вещественное число k — среднее количество слов в одном предложении в данном вам тексте. Ваш ответ должен отличаться от правильного не более, чем на 10-4. В качестве разделителя в вещественном числе необходимо использовать точку, а не запятую.
Пример входных и выходных данных
input.txt
There is a sample test. This problem is not very hard for you.
output.txt
6.5
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.01.2013, 17:38     Определение среднего количества слов в предложениях
Посмотрите здесь:

Определение количества элементов массива C++
Определение количества цифры Х в одномерном массиве!? C++
C++ Определение количества заполненных элементов массива
C++ Работа со строками. Подсчет количества слов в предложениях и т.д
C++ Определение количества разрядов у числа
C++ Определение количества слов четной длины в строке
Работа с файлами (Определение длины и поиск среднего элемента в документе) C++
C++ Определение количества элементов в массиве

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Glimpse
 Аватар для Glimpse
9 / 9 / 2
Регистрация: 21.01.2013
Сообщений: 20
31.01.2013, 01:15     Определение среднего количества слов в предложениях #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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
#include "stdafx.h"
#include <iostream>
#include <fstream>
 
using namespace std;
 
int main()
{
    char buff[10000]; // cуммарное количество символов во входном файле не превышает 10000
    int dot = 0; // количество точек
    int gap = 0; // количество пробелов
    int j = 0;
 
    ifstream fin("input.txt");
    while(!fin.eof())
    {
        fin.getline(buff, sizeof(buff));
    }
 
    // считаем количество точек, чтобы выделить память под массив, в элементах которого 
    // будет хранится число, означающее количество слов, в соответствующем индексу предложении
    char ch;
    for(int i = 0; i < 10000; i++)
    {
        if (buff[i] == '.') 
            dot++;
    }
 
    int *numOfWords = new int[dot];
 
    for(int i = 0; i < 10000; i++)
    {
        if (buff[i] != '.')
        {
            if (buff[i] == ' ') 
                gap++;
        }
        else
        {
            numOfWords[j] = gap + 1;
            gap = -1;
            j++;
        }
    }
 
    int max = numOfWords[0]; // максимальное количество слов
    int min = numOfWords[0]; // минимальное количество слов
 
    for(int i = 0; i < dot; i++)
    {
        if (numOfWords[i] > max) max = numOfWords[i];
        if (numOfWords[i] < min) min = numOfWords[i];
    }
 
    float k;
    k = ((max + min)/(float)2); // среднее количество слов в одном предложении
 
    ofstream fout("output.txt");
    fout << k;
 
    fout.close();
    return 0;
}
Yandex
Объявления
31.01.2013, 01:15     Определение среднего количества слов в предложениях
Ответ Создать тему
Опции темы

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