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

Ввести строку, вывести слова - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Быстрое чтение массива из файла http://www.cyberforum.ru/cpp-beginners/thread267859.html
Добрый день, появился вроде бы не сложный вопрос, у меня есть динамический массив данных double ** data; // пусть 200x500 //я его пишу в фаил std::ofstream FILE_SAVE_i; FILE_SAVE_i.open(path_i.c_str()); for (int i=0; i < 200 ;i++) for (int j=0; j < 500 ;j++) FILE_SAVE_i.write(data),sizeof(double));
C++ Формула на с++ Как записать эту формулу для расчёта на с++ (x-1)корень из x делённо на корень 4x в 3 степени http://www.cyberforum.ru/cpp-beginners/thread267856.html
Тренажёр по устному счету C++
Написать программу, моделирующую тренажер по устному счету. Пользователь вводит разрядность операндов, тип операции (+ - * /) на множестве натуральных чисел и количество примеров. Компьютер генерирует случайным образом операнды, вычисляет результат операции и выводит пользователю серию примеров, в каждом из которых один из операндов или результат замаскирован. Пользователь вводит пропущенное...
C++ Класс-шаблон
Создать класс-шаблон, содержащий поля для хранения одномерного массива и количества элементов в массиве. Описать методы для инициализации и вывода элементов массива на экран, а так же для подсчета суммы элементов массива, расположенных после последнего элемента, равного нулю. Продемонстрировать работу методов класса.
C++ Написать программу с родовым классом у которого есть поле двумерного массива... http://www.cyberforum.ru/cpp-beginners/thread267845.html
Написать программу с родовым классом у которого есть поле двумерного массива, описать метод с помощью которого меняются местами два столбца массива. Добавлено через 2 часа 24 минуты Никто помочь не может? (
C++ свич подскажите пожалуйсто, как сделать чтобы после выполнения задачи 1 он сново просил нажать на цифру, пока не пройдут все? switch(A) { case 1: zad1(); break; case 2: zad2(); break; case 3: zad3(); break; case 4: zad4(); break; default:cout<<" Вы ввели не правильный номер "; } подробнее

Показать сообщение отдельно
IrineK
Заблокирован
01.04.2011, 02:35     Ввести строку, вывести слова
Слова - последовательность букв или цифр.
Разделители - все остальное
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
#include <iostream>
using namespace std;
 
bool isLetter(char c)
{   if((c>='a' && c<='z') ||(c>='A' && c<='Z') ||(c>='0' && c<='9'))
        return true;
    return false;
}
 
int main()
{   char str[80];
    cout<<"Your line:\n";
    cin.getline(str,80);
 
    bool start=false;
    int i=0, words = 0;
    if (isLetter(str[0])) start=true;
    for(i=1;i<strlen(str);i++)
    {   if(!isLetter(str[i-1]) && isLetter(str[i]))
            start=true;
        else if(isLetter(str[i-1]) && !isLetter(str[i]))
        {   words++;
            start = false; 
        }
    }
    if(isLetter(str[strlen(str)-1])) words++;
    cout<<words<<" words in your line\n";
 
       cin.get();
        return 0;
}
Добавлено через 2 часа 13 минут
Вот еще вариация на тему:

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
#include <iostream>
#include <sstream>
using namespace std;
 
int main()
{      setlocale(LC_ALL,"Rus");
        char sentence[256];
        string word;
        int i;
 
while(1)
       {
        cout<<"Введите текст:\n";
        cin.getline(sentence,256);
        string row(sentence);
 
        for(i=0;i<row.length();i++)
                if(row[i]=='.' || row[i]==',' || row[i]=='?' || row[i]=='!')//"исключения" - здесь
                        row[i]=' ';
        i=0;
        istringstream ist(row);
        while(ist>>word)
                i++;
 
        cout<<" Слов найдено : "<<i<< endl<<endl;
        }
        cin.get();
        return 0;
}
 
Текущее время: 11:42. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru