Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 46, средняя оценка - 4.67
ahamoth
0 / 0 / 1
Регистрация: 26.11.2010
Сообщений: 111
#1

Как посчитать число букв в каждом слове строки - C++

16.04.2011, 02:07. Просмотров 9121. Ответов 11
Метки нет (Все метки)

подскажите , как посчитать число букв в каждом слове строки
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.04.2011, 02:07
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Как посчитать число букв в каждом слове строки (C++):

Как посчитать количество букв в каждом слове из текста?
В файле задан текст. Нужно написать функцию, определяющую длину слова. И,...

Посчитать количество согласных букв в каждом втротом слове предложения
ПОМОГИТЕ КТО НИБУДЬ ПЕРЕПИСАТЬ НА С++!!! Добавлено через 24 минуты 54...

Посчитать количество букв "а" в последнем слове строки
#include "stdafx.h" #include <iostream> #include "stdio.h" #include...

Работа с текстовым файлом: как посчитать кол-во букв в слове? (посимвольная обработка)
Работа с текстовым файлом: как посчитать кол-во букв в слове? (посимвольная...

В каждом слове строки определить букву, которая в слове встречается наибольшее количество раз
Народ, помогите! Второй день сижу над этой программой. Условие такое: Дано N...

Строки. В каждом чётном по порядку слове удалить все нечётные буквы, а в каждом нечётном слове удалить все чётные буквы.
8.4.1. Помогите, пожалуйста, решить задачу в С++. Дана строка символов,...

11
CoffeeSamurai
2 / 2 / 0
Регистрация: 04.04.2011
Сообщений: 19
16.04.2011, 07:50 #2
В смысле к каждом? Т.е. подряд все слова? Если да то примерно вот так:

Код
#include<iostream.h>
#include<conio.h>

int main()
{
 	char str[20];
 	int i = 0;
 	gets(str);
 	while( str[i] != '\0' )
 		   i++;
    cout << i;
    getch();
    return 0;
}
0
Choopa
17 / 17 / 5
Регистрация: 03.04.2011
Сообщений: 89
16.04.2011, 10:11 #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include<string>
 #include<iostream>
 using namespace std;
void main()
{
   string s;  int kolvo=0;
   getline(cin, s);
    for(int i=0;i<s.length();i++)
    {
    if((int)s[i]>64 &&s[i]<123) kolvo++;
    else{if(kolvo!=0)cout<<kolvo<<" ";kolvo=0;}
    }
    if(kolvo!=0)cout<<kolvo;
     cout<<endl;
   system("pause");
}
1
ahamoth
0 / 0 / 1
Регистрация: 26.11.2010
Сообщений: 111
16.04.2011, 14:17  [ТС] #4
мне еще нужно посчитать число слов состоящих не более чем из 4х букв . как это сделать?
0
ForEveR
В астрале
Эксперт С++
7994 / 4753 / 651
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
16.04.2011, 14:24 #5
ahamoth, Разбить - проверить - посчитать
0
ahamoth
0 / 0 / 1
Регистрация: 26.11.2010
Сообщений: 111
16.04.2011, 14:27  [ТС] #6
как это вклинить в код который представил Choopa?
0
ForEveR
В астрале
Эксперт С++
7994 / 4753 / 651
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
16.04.2011, 15:47 #7
ahamoth, Написать новый.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <string>
#include <sstream>
 
int main()
{
    std::string str;
    std::getline(std::cin, str);
    std::istringstream ist(str);
    std::string tmp;
    size_t count=0;
    while(ist >> tmp)
      if(tmp.size() <= 4)
        ++count;
    std::cout<<count<<'\n';
}
Предполагается что разделитель между словами - пробел.
Код считает сколько символов в слове. Заточить под буквы не проблема.
1
ahamoth
0 / 0 / 1
Регистрация: 26.11.2010
Сообщений: 111
18.04.2011, 23:03  [ТС] #8
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
fstream fp("vvod.txt" , ios::in);
 
    
    string tmp;
    int c;
    int count=0;  
  
    
    while(fp>>tmp)
    { 
      if((tmp.size() <= 4) and (isalpha(tmp[c]))
       { count++;}
        
        
        }
        
        
    cout<<count<<'\n';
Добавлено через 51 секунду
слова не считаются, что я не правильно делаю?
0
ForEveR
В астрале
Эксперт С++
7994 / 4753 / 651
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
18.04.2011, 23:05 #9
ahamoth, c не инициализированно.
0
ahamoth
0 / 0 / 1
Регистрация: 26.11.2010
Сообщений: 111
18.04.2011, 23:29  [ТС] #10
так что в коде то поправить?=)
0
ForEveR
В астрале
Эксперт С++
7994 / 4753 / 651
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
18.04.2011, 23:45 #11
Добавлено через 1 минуту
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
fstream fp("vvod.txt" , ios::in);
 
    
    string tmp;
    int c;
    int count=0;  
  
    
    while(fp>>tmp)
    { 
      if(std::count_if(tmp.begin(), tmp.end(), isalpha) <= 4)
       { count++;}
        
        
        }
        
        
    cout<<count<<'\n';
0
DOS
0 / 0 / 0
Регистрация: 12.05.2015
27.04.2014, 22:49 #12
а как на С ?слова через запятую.
0
27.04.2014, 22:49
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.04.2014, 22:49
Привет! Вот еще темы с решениями:

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

Подсчитать, сколько в каждом слове букв, совпадающих с его первой буквой (for, while, do while)
Дана строка, в которой слова разделены одним пробелом. Подсчитайте, сколько в...

Подсчитать сколько в каждом слове букв совпадающих с его первой буквой
Разработать программу, которая вводит строку и подсчитывает, сколько в каждом...

Как после каждого слова из введенного предложения вставить число букв в этом слове?
Здравствуйте! Подскажите, пожалуйста, как после каждого слова из введенного...


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

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

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