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

Работа с текстовой строкой - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Перегрузка операций http://www.cyberforum.ru/cpp-beginners/thread1023544.html
Помогите с лабой пожалуйста, никак сам не сделаю Задача 1 . Создать иерархию типов , описывающую работника и женщину , и работника женщину семейства. Классы должны конструкторы , включая конструктор копирования , виртуальные деструкторы , перегруженные функции вывода в поток и ввода в поток . Задача 2 . Композиция и иерархия Используя иерархию и композицию классов , создать бинарное...
C++ Работа с файлами Составить программу, реализующую функции указанного ниже меню. Выполнить функциональное разбиение программного кода. Меню программы: 1 – Сформировать с клавиатуры строку и записать в файл (строка может содержать пробелы); 2 – Считать строку из файла и распечатать; 3 – Зашифровать строку и записать в файл; 4 – Расшифровать строку и записать в файл; 5 – Выход. Четные и нечетные... http://www.cyberforum.ru/cpp-beginners/thread1023540.html
C++ Как переменную сделать общей для функции
void addChislo(){char type;int a=0; cout<<"Введите тип вашей переменной:"; cin>>type; cout<<"Введите значение переменной типа "<<type<<": "; if(!strcmp(type,"int")){int n=0;cin>>n;} else if(!strcmp(type,"float")){float n=0;cin>>n;} else if(!strcmp(type,"double")){double n=0;cin>>n;} else if(!strcmp(type,"char")){char n=0;cin>>n;} a=strlen(type); for(int i=0;i<a;i++)
Шаблоны C++
ругается на строку "friend class List<T>;", вот что пишет: 1>c:\users\slava\documents\visual studio 2012\projects\string_class\string_class\stringnode.h(7): error C2059: синтаксическая ошибка: < 1> c:\users\slava\documents\visual studio 2012\projects\string_class\string_class\stringnode.h(20): см. ссылку на создание экземпляров класса шаблон при компиляции "Node<T>"...
C++ Отладка и тестирование приложений в среде Visual Studio 2010 http://www.cyberforum.ru/cpp-beginners/thread1023520.html
Студию я осваиваю, безусловно интересуют все методы, финты, возможности- в ней присуцтвующие. Как отладить большую сложную прогу скажем на предмет зацикливания, изменения переменных, есл скажем их сотни, на предмет общего торможения компа, если его происхождение не очевидно, и т.п. Добавлено через 1 минуту Для начала, придположим, я имею простейшую ( не из многих частей) прогу типа .cpp...
C++ злые скобки Здравствуйте!!!Помогите пожалуйста написать код расстановки скобок! Задание такое: 1.Написать программу, которая расставляет всевозможными способами скобки в выражении так, что выражение становится формулой или выдает сообщение об ошибке, если в выражении встречаются недопустимые сочетания (подряд идут несколько переменных или несколько бинарных связок). Реализовать программу с использованием... подробнее

Показать сообщение отдельно
FAQEnD
43 / 43 / 1
Регистрация: 15.12.2012
Сообщений: 88
01.12.2013, 01:56     Работа с текстовой строкой
не реализовал функцию вывода слов, которые состоят только из латиницы, потому что есть вопрос:
В слове не может быть цифр/точек/запятых?
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
#include <iostream>
#include <string>
using namespace std;
 
int main()
{
    //Сколько же у нас чисел? Узнаем ниже:
    string str;
    int j, nums(0);
    cout<<"Enter str"<<endl;
    getline(cin, str);
    str+=' ';
    for(int i = 0; i < str.size(); i++)
    {
        j = i;
        while(isdigit(str[j]))//текущий символ цифра?
            {
                j++;
                i = j;
                if(!isdigit(str[j]))//как? уже не цифра? Тогда все пред. символы цифр были одним числом
                    nums++;
            }
    }
    cout<<"We have "<<nums<<" nums"<<endl;
    //Убираем каждое второе слово ниже:
    int space_count(0), word_start(0), word_end(0), word_count(1);
    for(int i = 0; i < str.size(); i++)
    {
        if(str[i] == 32)//если текущий символ равен пробелу
        {
            space_count++;
            if(space_count == 1)
            {
                word_start = i;//начало слова
                for(j = i+1; j < str.size(); j++)
                    if(str[j] == 32)
                    {
                        word_end = j;//конец
                        break;
                    }
            }
        }
        if(space_count == 1)
        {
            str.erase(word_start, word_end - word_start);//вырезаем от начала, и колличество символов конец - начало
            space_count = 0;
        }
    }
    cout<<str;
    system("Pause");
    return 0;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru