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

Поиск количества слов строке(как можно проще) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ порядковый номер буквы http://www.cyberforum.ru/cpp-beginners/thread512729.html
очень простая функция, возвращающая порядковый номер буквы в алфавите, но она возвращает всякую хрень. при вводе 'я' return 17 при вводе 'с' выводит 2 и так буквы , которые между С и Я. другия буквы вообще не находит. int alfavit(char ch) { int i = 0, k = 0; bool ret = FALSE; char alfavitSmall =...
C++ Описать класс Список (линейный односвязный список) Описать класс Список (линейный односвязный список). Я создала список,просматриваю его,сравниваю на равенство два списка.......У меня проблемы со вставкой и удалением....Необходимо:вставить элемент с заданным значением после первого нечётного элемента; удалить из списка все элементы большие заданного значения.Помогите,пожалуйста,осуществить это в данной программе.#include "stdafx.h" #include... http://www.cyberforum.ru/cpp-beginners/thread512726.html
C++ string массив
Как создать массив в который буду я вводить данные ? Написал не большой код : // Lab_1.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include <iostream> #include <fstream> #include <stdio.h>
Алгоритм замещения страниц LRU с помощью методов библиотеки STL C++
Здравствуйте! Мне нужно реализовать алгоритм замещения страниц LRU с помощью методов библиотеки STL. Подскажите пожалуйста, как это сделать лучше всего, чтобы было просто и понятно?
C++ Количество свободного места на диске http://www.cyberforum.ru/cpp-beginners/thread512687.html
Мне вообще-то нужно узнать когда заполниться определённый диск, после этого совершить необходимые действия. Поиск на форуме и в интернете результата не дал, прошу помочь в этом вопросе. С Сишкой работал, но на уровне задач и интерфейса, а с дисковым пространством работать не приходилось.
C++ Разобраться в принципе работы задачч. (Работа с динамической памятью через указатели. ) Вот условие задачи: Создать массив из N целых чисел, N вводит пользователь. Заполнить массив случайным образом в диапазоне от 1 до 12. Каждое число это оценка по 12-ти бальной системе. Перевести эти оценки в 5-ти бальную систему, где двойка от 1 до 3 включительно, тройка от 4 до 6, четверка от 7 до 9, пятерка от 10 до 12. Пользуясь указателем на массив целых чисел, посчитать процент двоек,... подробнее

Показать сообщение отдельно
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9371 / 5421 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
05.03.2012, 16:35     Поиск количества слов строке(как можно проще)
Цитата Сообщение от ivan732 Посмотреть сообщение
но за слова принимает и запятые ,и тд.
Не знаю, по каким правилам "запятые и тд" могут в предложении в отрыве от слов стоять, но если так хочется от них избавиться, просто поменяйте их на пробелы
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 <iostream>
#include <string>
#include <sstream>
 
size_t count_words(const std::string & str, const std::string & delim){
    std::string tmp(str);
    size_t i = 0;
    while ( ( i = tmp.find_first_of(delim, i) ) != std::string::npos )
        tmp[i] = ' ';
    std::istringstream ist(tmp);
    i = 0;
    while ( ist >> tmp )
        ++i;
    
    return i;
}
 
int main(){
    const std::string DELIM(",.?!:;\t\n"); // добавить по вкусу
    std::string str;
    
    while ( std::cout << "String: " && std::getline(std::cin, str) && ! str.empty() )
        std::cout << count_words(str, DELIM) << " words." << std::endl;
    
    return 0;
}
Цитата Сообщение от Rexer Посмотреть сообщение
Этот код считает количество символов,а не слов.
Да ну?! Слова разделённые пробелами он считает.

Добавлено через 2 минуты
Цитата Сообщение от ivan732 Посмотреть сообщение
Нужно использовать ассоциативный массив
Кстати, это тут к чему?
 
Текущее время: 08:05. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru