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

Класс строки (удаление из строки слова с заданным номером и символа с заданным номером) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Расставить n ладей на шахматной доске n*n http://www.cyberforum.ru/cpp-beginners/thread853468.html
Вообщем нужно расставить n ладей на шахматной доске n*n Вот то что у меня получилось: #pragma argsused #include<iostream.h> int main(int argc, char* argv) {int const n=3; int A, i, j, z=0; for(i=0; i<n; i++) for(j=0; j<n; j++) {
C++ Массив: Поменять местами первую строку с последней, вторую строку с предпоследней и т.д. Дан квадратный массив порядка 2n(т.е. четный). Поменять местами первую строку с последней, вторую строку с предпоследней и т.д. http://www.cyberforum.ru/cpp-beginners/thread853458.html
Перевод из инфиксной формы в постфиксную и вычисление выражения C++
Помогите пожалуйста, выдает ошибки в 46 и 52 строках. не пойму в чем дело. и извините за наглость, но эта программа она только переводит из инфиксной формы в постфиксную, а как сделать чтобы она результат выводила. я в c++ толком не понимаю..
разработать не рекурсивную функцию,возвращающее значение: C++
для вычисления количества цифр в строке;с помощью данной функции определить,в каком из двух предложений цифр больше
C++ для задачи нужно использовать,структуру содержащую члены-данные и члены-функции http://www.cyberforum.ru/cpp-beginners/thread853426.html
на основе данных входного файла составить инвентарную ведомость игрушек,включив следующие данные:название игрушки,её стоимость (в руб.) возрастные границы детей ,для которых предназначена игрушка. вывести в новый файл информацию о тех игрушках , которые предназначены для детей от Н до М лет.
C++ Поменять местами значения целых переменных A и B Поменять местами значения целых переменных. А и B, не используя дополнительные переменные. подробнее

Показать сообщение отдельно
Myptuk
1 / 1 / 0
Регистрация: 01.05.2013
Сообщений: 43
01.05.2013, 23:10  [ТС]     Класс строки (удаление из строки слова с заданным номером и символа с заданным номером)
спасибо, думаю разберусь теперь

Добавлено через 30 минут
гляньте пожалуйста. что-то ничего не происходит.

Stroka.h :
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#pragma once
 
class Stroka
{
    char *str;
    int n;
public:
    Stroka(void);
    ~Stroka(void);
 
    void Input(void);
    void Print(void);
    Stroka del_word(int number)
    Stroka del_symbol(int number)
    Stroka get_string()
};
Stroka.cpp

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
#include "StdAfx.h"
#include "Stroka.h"
#include "iostream"
using namespace std;
 
Stroka::Stroka(void)
{
    str=0;
    n=0;
    cout<<"stroka sozdana"<<endl;
}
 
Stroka::~Stroka(void)
{
    delete[]str;
    cout<<"stroka udalena"<<endl;
}
void Stroka::Input(void)
{
    cout<<"Vvedi stroky: "<<endl;
    char buf[100];
    cin.getline(buf,100);
    while (buf[n])
    {
        n++;
    }
    str=new char[n+1];
    for (int i=0;i<n;i++)
    {
        str[i]=buf[i];
    }
}
void Stroka::Print(void)
{
    cout<<"Stroka: "<<endl;
    for (int i=0;i<n;i++)
    {
        cout<<str[i]<<endl;;
    }
}
Stroka::del_word(int number)
{       
    int count(0);                   //счетчик слов
    string word;                    //промежуточное слово
    istringstream ii(str);
 
    str.clear();                    //очищаем строку
    while(ii >> word)
    {              //берем по слову
        ++count;                    //увеличиваем счетчик
 
        if(count != number)         //если слово не соответсвует заданному
            str += (word + ' ');        //записываем в строку
    }
 
    return str;                     //возвращаем строку
}
Stroka::del_symbol(int number)
{
    str.erase(number, 1);               //алгорим удаления одного символа
    return str;                         //возвращаем строку
}
Stroka::get_string()
{                
    return str;                     
}
};
само тело class2.cpp :
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// class2.cpp : Defines the entry point for the console application.
//
 
#include "stdafx.h"
#include "Stroka.h"
#include "IOstream"
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
    Stroka s1;
    s1.Input();
    s1.Print();
 
    s1.del_word(1);
    cout << s1.get_string() << endl;
 
    s1.del_symbol(3);
    cout << s1.get_string() << endl;
 
    cout << "\n\n";
    return 0;
}
 
Текущее время: 19:07. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru