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

Класс для обработки строки - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Sizeof объекта в классе http://www.cyberforum.ru/cpp-beginners/thread1084591.html
Допустим у меня в классе private: char *name; float tsena; int chastota; При подсчете sizeof объекта класса выдает 12. Это понятно. Теперь допустим у меня private: char *name; float tsena;
C++ Огромные числа Подскажите как сделать чтобы переменная y могла принимать огромные значения(больше 10-ти символов) И при этом программа должна корректно выполнять свои функции #define _USE_MATH_DEFINES #include <stdio.h> #include <windows.h> #include <math.h> #include <iostream> void main() http://www.cyberforum.ru/cpp-beginners/thread1084566.html
Массив указателей на указатель C++
Помогите, пожалуйста. У нас есть объявление int **m6; Нужно представить и нарисовать, как данный массив 10 указателей на указатель, будет выглядеть в пространстве. И, если я правильно понял, то это будет трехмерный массив?
Переписать из массива Y все элементы сумма цифр которых кратна 3-ем в массив Z C++
Вот что я хотел сделать, но ничего не выходит, помогите сделать. Нужно через функцию и если можно как можно проще что бы понятно было. Заранее спасибо. #include <iostream> using namespace std; bool kratn3 (int t) { int i,s; for (i=s=0; i<t; i++) { s=s+(t%10); t/=10; }
C++ Программа с функцией, которая в заданной строке проверяет, чего больше: букв или цифр http://www.cyberforum.ru/cpp-beginners/thread1084533.html
Помогите, плиз. Написать программу с функцией, которая в заданной строке проверяет, чего больше: букв или цифр.
C++ Сортировка массива от мин. элемента до последнего Доброго времени суток! У меня есть задачка, которая находит мин.элемент и сортирует массив по возрастанию от начала до конца. А мне нужно, что бы сортировка шла от позиции мин. элемента и до конца. Может кто знает что надо изменить в коде { int min=*min_element(v.begin(),v.end()); // нахождение мин элемента int minpos=find (v.begin(),v.end(),min)- v.begin(); // и... подробнее

Показать сообщение отдельно
tanya_owl
0 / 0 / 0
Регистрация: 14.11.2013
Сообщений: 17
29.01.2014, 16:57     Класс для обработки строки
Помогите, пожалуйста, исправить ошибку.
Условие задачи: Написать программу, в которой предусмотреть класс для организации обработки символьной строки. Внутри класса реализовать два конструктора: 1-й конструктор должен обеспечивать ввод строки с клавиатуры; 2-й конструктор должен формировать символьную строку c помощью ГСЗ (диапазон от 32 до 127). Кроме того, внутри класса предусмотреть 2 метода: 1-й метод должен вычислять длину строки; 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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
#include <iostream>
#include <string>
using namespace std;
 
 
class stroka 
   { 
public:  stroka();
         stroka(int);
         int dlina ();    
         int slova ();
         char s[100];
    };
 
    
  stroka::stroka()
    {
        cout << "Vvedite elementy stroki: " <<endl; 
        cin.get(s,100);
        cout << s <<endl;
        int i=strlen(s); s[i]=' ';
    }
 
  stroka::stroka(int max)
    {   
        int n=rand()%(max-5+1)+5;
        for(int j=0; j<n; j++) s[j]=rand()%(127-32+1)+32;
        s[n]='\0';
        cout << "Sgenerirovana stroka: " << s<< endl;
        int i=strlen(s); s[i]=' ';
 
    }
    
  int stroka::dlina()
    {
        int p=0;
        for(int i=0; s[i]!='\0'; i++) p++;
        cout << "Dlina stroki = " <<p-1<< endl;
        return 0;
 
    }
 
   int stroka::slova()
    {   
         int k=0;
         int i=0;
         while (s[i]!='\0')
         {
          if (s[i]!=' ')
          {if (s[i+1]==' ') k=k+1;}
          i++;
         }
         if((i!=0) && (k==0)) k++;
         cout << "Kolichestvo slov: " << k << endl;
         return 0;
    }
 
    int main()
     {int z;
 
cout<<"1-generiruet slucajo, 2-vvod s klavy"<<endl;
cin>>z;
if((z>=1) && (z<=2))
    { if(z==1)
        {stroka a(20);
            a.dlina (); 
            a.slova ();
     }
     if(z==2)
        {stroka b;
            b.dlina (); 
            b.slova ();
            }
            }
    system("pause");
    return 0;
    }

Почему-то генерирует всегда одно и тоже (по-моему) и при вводе с клавы какую-то ерунду делает...((
Спасибо!
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 18:14. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru