Форум программистов, компьютерный форум, киберфорум
Наши страницы

Абстракция текста (ошибка в студии) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Передвижение по стрелочкам в консоли. http://www.cyberforum.ru/cpp-beginners/thread110573.html
Всем привет!!!Помогите пожалуйста сделать передвижение с помощью стрелочек по списку...(в консоли....)
C++ Генератор топологии сети Сеть генерируется на матричном поле. В каждой ячейке матрицы может быть либо рабочая станция (конечный элемент), либо соединитель. Соединители используются 3 видов: прямой отрезок, угол и тройник.... http://www.cyberforum.ru/cpp-beginners/thread110480.html
Работа с указателями C++
Задана матрица чисел и заданы 2 массива указателей. Настроить первый массив указателей на минимальные элементы по строкам матрицы, второй - на максимальные элементы по столбцам. Для доступа к...
символы и строки C++
ЗДРАВСТВУЙТЕ! Прошу, пожалуйста, помочь мне. Дали задание на С++, а врубиться никак не могу. В произвольном тексте, содержащем не более 10 строк, в каждой строке не более 80 символов, найти и...
C++ Нужно придумать алгоритм http://www.cyberforum.ru/cpp-beginners/thread110432.html
Задача такая, есть приложение в котором мы отлавливаем события мыши, и нужно записать только начало движения мыши (координаты) и координаты мест где мышь останавливалась, весь процесс движения...
C++ Поиск подстроки Эта программа написана чтобы искало буквы....а как написать чтобы искало количество слова например " kag " #include<iostream.h> #include<string.h> int main() { char Arr="Privet kag kak,... подробнее

Показать сообщение отдельно
ArniLand
4 / 4 / 0
Регистрация: 07.09.2009
Сообщений: 190

Абстракция текста (ошибка в студии) - C++

30.03.2010, 16:04. Просмотров 325. Ответов 0
Метки (Все метки)

Программа должна добавлять строки, удалять одну сроку, очищать все строки, подсчитывать длину самой длинной строки.
Но после выполнения программы, после того как вожу исходные данные которая запрашивает программа моя и нажимаю enter, компилятор выбивает такую ошибку. Покажите пожалуйста как ее исправить в коде моей программе.


Код программы:
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
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
//text.h
#include "Row.h"
 
const int countRows = 100;
 
class Texts
{
public:
        Texts();
        void addRows(string str);
        void removeAll();
        void removeRow(int numberRow);
        string getMaxLenght();
        string ToString();
 
        Row texte[100];
        int amountRows;
};
 
//Row.h
#include <string>
#include <iostream>
using namespace std;
class Row
{
public:
    string dataRow;
        Row();
        Row(string);
};
 
//Row.cpp
#include "stdafx.h"
#include "Row.h"
#include <string>
 
 
Row::Row()
{
}
 
Row::Row(string str)
{
    string dataRow = str;
}
 
//.cpp файл
#include "stdafx.h"
#include "text.h"
 
Texts::Texts()
{
}
 
 
 
void Texts::addRows(string str)
{
    texte[amountRows].dataRow = str;
    amountRows++;
}
 
void Texts::removeRow(int numberRow)
{
        for (int i = numberRow; i < (countRows - 1); i++)
        {
                texte[i] = texte[i+1];
        }
        texte[countRows - 1].dataRow = "";
        amountRows--;
}
 
void Texts::removeAll()
{
        for (int i = 0; i<countRows; i++)
        {
                texte[i].dataRow ="";
        }
        amountRows = 0;
}
 
string Texts::getMaxLenght()
{        
    string max = texte[0].dataRow;
        for (int i = 1; i < amountRows; i++)
        {
                if (texte[i].dataRow.length() > max.length())
                {
                        max = texte[i].dataRow;
                }
        }
    return max;
}
 
string Texts::ToString()
{
        string str = "";
        for (int i = 0; i < amountRows; i++)
        {
                str = str + " " + texte[i].dataRow;
        }
 
        return str;
}
 
//main.cpp
#pragma once
#include "text.h"
#include "stdafx.h"
int main()
{
    cout<<"Введите количество строчек: ";
    int countRow;
    cin>>countRow;
    cout<<"Введите строчку: ";
    Texts objText;
    string temp;
    
    for (int i=0; i < countRow; i++)
    {
        cin>>temp;
        objText.addRows(temp);
    }
 
    cout<<"----\n\n"<<objText.ToString()<<"\n----\n";
 
    cout<<"\nВведите номер строчки: ";
    int numberOfRow;
    cin>>numberOfRow;
 
    if (numberOfRow < countRow)
    {
        objText.removeRow(numberOfRow - 1);
    }
 
    cout<<"----\n\n"<<objText.ToString()<<"\n----\n";
    
    cout<<"\nСамая длинная строчка в тексте: "<<objText.getMaxLenght();
 
    cout<<"\nОчистка текста.";
    objText.removeAll();
    cout<<"----\n\n"<<objText.ToString()<<"\n----\n";
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru