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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
angryjack93
7 / 3 / 1
Регистрация: 04.11.2012
Сообщений: 218
#1

Кому не лень, посомтрите код! - C++

07.04.2013, 15:03. Просмотров 534. Ответов 18
Метки нет (Все метки)

Вот код, но выводит ошибку:

Offset (700) greater than or equal to (null) size (4954657).
[Linker Error] undefined reference to `__dyn_tls_init_callback'

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
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
#include <iostream>
#include <windows.h>
#include <conio.h>
using namespace std;
 
void sound_func(char text_sound[][30], int kol_symb_text, int sum_words);
 
char text_string[] = "";
 
int main()
{
    cout << "Ââåäèòå ГІГҐГЄГ±ГІ äëÿ îçâó÷êè: \n";
    gets(text_string);
    int kol_symb = strlen(text_string);
    int spaces = 0;
    
    for(int i = 0; i < kol_symb; i++) {if(text_string[i] == ' ') spaces++;}
    int sum_words = spaces + 1;
    char strip_words[sum_words][30];
    int symb_beg_word = 0;
    
    for(int i = 0; i < sum_words; i++){
        int g = 0;
        for(int j = symb_beg_word; j < kol_symb; j++){
            if(text_string[j] != ' '){
               strip_words[i][g] = text_string[j];
               g++;
            }
            else {symb_beg_word == j; break;}
        }
    }
 
    sound_func(strip_words, kol_symb, sum_words);
     
    getch();
    return 0;
}
 
void sound_func(char text_sound[][30], int kol_symb_text, int sum_words)
{
    for(int j = 0; j < sum_words; j++){
    for(int i = 0; i < kol_symb_text; i++){
            switch(text_sound[j][i]){
                case 'Г*':
                    break;
                case 'ГЎ': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'Гј'){}
                    break;
                case 'Гў': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'Гј'){}
                    break;
                case 'ГЈ': 
                    if(text_sound[j][i++] == text_sound[j][i])
                    break;
                case 'Г¤': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'Гј'){}
                    break;          
                case 'ГҐ': 
                    kol_symb_text++;
                    text_sound[j][i] = 'Г©';
                    for(int k = i; k < kol_symb_text; k++)
                        text_sound[j][k++] = text_sound[j][k];
                    text_sound[j][i++] = 'ГЅ';
                    break;  
                case 'Вё': 
                    kol_symb_text++;
                    text_sound[j][i] = 'Г©';
                    for(int k = i; k < kol_symb_text; k++)
                        text_sound[j][k++] = text_sound[j][k];
                    text_sound[j][i++] = 'Г®';
                    break;          
                case 'Г¦': 
                    if(text_sound[j][i++] == text_sound[j][i])
                    break;      
                case 'Г§': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'Гј'){}
                    break;      
                case 'ГЁ': 
                    break;      
                case 'Г©': 
                    break;      
                case 'ГЄ': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'Гј'){}
                    break;                       
                case 'Г«': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'Гј'){}
                    break;      
                case 'Г¬': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'Гј'){}
                    break;                       
                case 'Г*': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'Гј'){}
                    break;  
                case 'Г®':
                    break;  
                case 'ГЇ': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'Гј'){}
                    break;  
                case 'Г°': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'Гј'){}
                    break;      
                case 'Г±': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'Гј'){}
                    break;
                case 'ГІ': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'Гј'){}
                    break;  
                case 'Гі':
                    break;      
                case 'Гґ': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'Гј'){}
                    break;      
                case 'Гµ': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'Гј'){}
                    break;                       
                case 'Г¶': 
                    if(text_sound[j][i++] == text_sound[j][i])
                    break;
                case 'Г·': 
                    if(text_sound[j][i++] == text_sound[j][i])
                    break;
                case 'Гё': 
                    if(text_sound[j][i++] == text_sound[j][i])
                    break;                      
                case 'Г№': 
                    if(text_sound[j][i++] == text_sound[j][i])
                    break;          
                case 'Гє':
                    break;                               
                case 'Г»': 
                    if(text_sound[j][i++] == text_sound[j][i])
                    break;      
                case 'Гј':
                    break;
                case 'ГЅ':
                    break;      
                case 'Гѕ':
                    kol_symb_text++;
                    text_sound[j][i] = 'Г©';
                    for(int k = i; k < kol_symb_text; k++)
                        text_sound[j][k++] = text_sound[j][k];
                    text_sound[j][i++] = 'Гі';
                    break;  
                case 'Гї':
                    kol_symb_text++;
                    text_sound[j][i] = 'Г©';
                    for(int k = i; k < kol_symb_text; k++)
                        text_sound[j][k++] = text_sound[j][k];
                    text_sound[j][i++] = 'Г*';
                    break;
                default: break;                 
            }
    }
}
 
cout << text_sound;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.04.2013, 15:03
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Кому не лень, посомтрите код! (C++):

Кому не лень проветь новичка - C++
Всем доброго времени суток, кому не лень можете написать мне условия простых задачек, я просто хочу проверить насколько я хорошо усвоил...

Объясните кому не лень (вычислить) - C++
Делаю свою первую лабораторку по программированию, нужна помощь. Numerator = asin(Pi - b / 2) + log10(2 * x + pow(a, 2)) + pow(x, 2) +...

Подправьте код кому не сложно - C++
#include &quot;iostream&quot; #include &lt;stdio.h&gt; using namespace std; class Rastenie { /*îïèñàíèå ýëåìåíòîâ êëàññà Ðàñòåíèé*/ ...

Что делает данный код и зачем такое кому-нибудь может понадобиться? - C++
Я ответил на вопрос,но точной формулировки не нашёл,хотел бы свериться(приложения с ответами нет).Задание: Чёрный ящик.Что делается в...

есть исходный xml код, нужно подправить, кому не лень загляните - XML/XSL
Этот код напрямую связан с видео-лекцией, которую при просмотре невозможно &quot;перемотать&quot;, при наведении курсора на нужный участок лекции...

Кому не лень. - Программирование драйверов
Кто нибудь напишет на мой процик ga8pe800 ссылка http://www.gigabyte.ru/products/mb/specs/ga-8pe800.html драйвера на Windows 7?

18
SummerRain
327 / 326 / 17
Регистрация: 16.12.2012
Сообщений: 544
07.04.2013, 15:16 #2
ошибка тут
char strip_words[sum_words][30];
статический массив, размер которого неизвестен во время компиляции программы.
Сделайте его динамическим.
2
angryjack93
7 / 3 / 1
Регистрация: 04.11.2012
Сообщений: 218
07.04.2013, 18:47  [ТС] #3
Цитата Сообщение от SummerRain Посмотреть сообщение
ошибка тут
char strip_words[sum_words][30];
статический массив, размер которого неизвестен во время компиляции программы.
Сделайте его динамическим.
Сделал вот так:
C++
1
2
3
char **strip_words = new char* [sum_words];
    for(int i = 0; i <= sum_words; i++)
        strip_words[i] = new char [30];
а как это в функцию передать и какой прототип у нее должен быть??
0
yoghurt92
374 / 345 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
07.04.2013, 19:19 #4
angryjack93,

C++
1
void function(**strip_words)
динамический массив можно передавать по указателям.
0
angryjack93
7 / 3 / 1
Регистрация: 04.11.2012
Сообщений: 218
07.04.2013, 19:34  [ТС] #5
Цитата Сообщение от yoghurt92 Посмотреть сообщение
angryjack93,

C++
1
void function(**strip_words)
динамический массив можно передавать по указателям.
Я так уже попробовал, но ошибку выдало ровно ту же самую, что и в самом начале:/
0
yoghurt92
374 / 345 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
07.04.2013, 19:40 #6
angryjack93, а в какую функцию вы пытались передать массив?
0
angryjack93
7 / 3 / 1
Регистрация: 04.11.2012
Сообщений: 218
07.04.2013, 19:48  [ТС] #7
Цитата Сообщение от yoghurt92 Посмотреть сообщение
angryjack93, а в какую функцию вы пытались передать массив?
В общем вот такие строки я заменил:
C++
1
2
void sound_func(char **text_sound, int kol_symb_text, int sum_words);
void sound_func(char **text_sound, int kol_symb_text, int sum_words)
А где передача я оставил прежнее
C++
1
sound_func(strip_words, kol_symb, sum_words);
А Когда сделал все наоборот вместо прежней ошибки выдало:

45 C:\Users\user\Desktop\Безымянный1.cpp invalid types `char[int]' for array subscript
0
yoghurt92
374 / 345 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
07.04.2013, 20:03 #8
angryjack93, у меня так запустилось, но есть уже ваши ошибки, подправьте их

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
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
#include "stdafx.h"
#include <iostream>
#include <windows.h>
#include <conio.h>
using namespace std;
 
void sound_func(char **text_sound, int kol_symb_text, int sum_words);
 
char text_string[] = "";
 
int main()
{
    cout << "Введите текст для озвучки: \n";
    gets(text_string);
    int kol_symb = strlen(text_string);
    int spaces = 0;
    
    for(int i = 0; i < kol_symb; i++) {if(text_string[i] == ' ') spaces++;}
    int sum_words = spaces + 1;
    char **strip_words = new char* [sum_words];
    for(int i = 0; i <= sum_words; i++)
        strip_words[i] = new char [30];
    int symb_beg_word = 0;
    
    for(int i = 0; i < sum_words; i++){
        int g = 0;
        for(int j = symb_beg_word; j < kol_symb; j++){
            if(text_string[j] != ' '){
               strip_words[i][g] = text_string[j];
               g++;
            }
            else {symb_beg_word == j; break;}
        }
    }
 
    sound_func(strip_words, kol_symb, sum_words);
     
    getch();
    return 0;
}
 
void sound_func(char **text_sound, int kol_symb_text, int sum_words)
{
    for(int j = 0; j < sum_words; j++){
    for(int i = 0; i < kol_symb_text; i++){
            switch(text_sound[j][i]){
                case 'а':
                    break;
                case 'б': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;
                case 'в': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;
                case 'г': 
                    if(text_sound[j][i++] == text_sound[j][i])
                    break;
                case 'д': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;          
                case 'е': 
                    kol_symb_text++;
                    text_sound[j][i] = 'й';
                    for(int k = i; k < kol_symb_text; k++)
                        text_sound[j][k++] = text_sound[j][k];
                    text_sound[j][i++] = 'э';
                    break;  
                case 'ё': 
                    kol_symb_text++;
                    text_sound[j][i] = 'й';
                    for(int k = i; k < kol_symb_text; k++)
                        text_sound[j][k++] = text_sound[j][k];
                    text_sound[j][i++] = 'о';
                    break;          
                case 'ж': 
                    if(text_sound[j][i++] == text_sound[j][i])
                    break;      
                case 'з': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;      
                case 'и': 
                    break;      
                case 'й': 
                    break;      
                case 'к': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;                       
                case 'л': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;      
                case 'м': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;                       
                case 'н': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;  
                case 'о':
                    break;  
                case 'п': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;  
                case 'р': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;      
                case 'с': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;
                case 'т': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;  
                case 'у':
                    break;      
                case 'ф': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;      
                case 'х': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;                       
                case 'ц': 
                    if(text_sound[j][i++] == text_sound[j][i])
                    break;
                case 'ч': 
                    if(text_sound[j][i++] == text_sound[j][i])
                    break;
                case 'ш': 
                    if(text_sound[j][i++] == text_sound[j][i])
                    break;                      
                case 'щ': 
                    if(text_sound[j][i++] == text_sound[j][i])
                    break;          
                case 'ъ':
                    break;                               
                case 'ы': 
                    if(text_sound[j][i++] == text_sound[j][i])
                    break;      
                case 'ь':
                    break;
                case 'э':
                    break;      
                case 'ю':
                    kol_symb_text++;
                    text_sound[j][i] = 'й';
                    for(int k = i; k < kol_symb_text; k++)
                        text_sound[j][k++] = text_sound[j][k];
                    text_sound[j][i++] = 'у';
                    break;  
                case 'я':
                    kol_symb_text++;
                    text_sound[j][i] = 'й';
                    for(int k = i; k < kol_symb_text; k++)
                        text_sound[j][k++] = text_sound[j][k];
                    text_sound[j][i++] = 'а';
                    break;
                default: break;                 
            }
    }
}
 
cout << text_sound;
}
Добавлено через 3 минуты
angryjack93, у вас там была логическая ошибка еще, вот так без варнингов

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
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
#include "stdafx.h"
#include <iostream>
#include <windows.h>
#include <conio.h>
using namespace std;
 
void sound_func(char **text_sound, int kol_symb_text, int sum_words);
 
char text_string[] = "";
 
int main()
{
    cout << "Введите текст для озвучки: \n";
    gets(text_string);
    int kol_symb = strlen(text_string);
    int spaces = 0, j;
    
    for(int i = 0; i < kol_symb; i++) {if(text_string[i] == ' ') spaces++;}
    int sum_words = spaces + 1;
    char **strip_words = new char* [sum_words];
    for(int i = 0; i <= sum_words; i++)
        strip_words[i] = new char [30];
    int symb_beg_word = 0;
    
    for(int i = 0; i < sum_words; i++){
        int g = 0;
        for(j = symb_beg_word; j < kol_symb; j++){
            if(text_string[j] != ' '){
               strip_words[i][g] = text_string[j];
               g++;
            }
            else if(symb_beg_word == j)
            {
                break;
            }
        }
    }
 
    sound_func(strip_words, kol_symb, sum_words);
     
    getch();
    return 0;
}
 
void sound_func(char **text_sound, int kol_symb_text, int sum_words)
{
    for(int j = 0; j < sum_words; j++){
    for(int i = 0; i < kol_symb_text; i++){
            switch(text_sound[j][i]){
                case 'а':
                    break;
                case 'б': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;
                case 'в': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;
                case 'г': 
                    if(text_sound[j][i++] == text_sound[j][i])
                    break;
                case 'д': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;          
                case 'е': 
                    kol_symb_text++;
                    text_sound[j][i] = 'й';
                    for(int k = i; k < kol_symb_text; k++)
                        text_sound[j][k++] = text_sound[j][k];
                    text_sound[j][i++] = 'э';
                    break;  
                case 'ё': 
                    kol_symb_text++;
                    text_sound[j][i] = 'й';
                    for(int k = i; k < kol_symb_text; k++)
                        text_sound[j][k++] = text_sound[j][k];
                    text_sound[j][i++] = 'о';
                    break;          
                case 'ж': 
                    if(text_sound[j][i++] == text_sound[j][i])
                    break;      
                case 'з': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;      
                case 'и': 
                    break;      
                case 'й': 
                    break;      
                case 'к': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;                       
                case 'л': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;      
                case 'м': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;                       
                case 'н': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;  
                case 'о':
                    break;  
                case 'п': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;  
                case 'р': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;      
                case 'с': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;
                case 'т': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;  
                case 'у':
                    break;      
                case 'ф': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;      
                case 'х': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;                       
                case 'ц': 
                    if(text_sound[j][i++] == text_sound[j][i])
                    break;
                case 'ч': 
                    if(text_sound[j][i++] == text_sound[j][i])
                    break;
                case 'ш': 
                    if(text_sound[j][i++] == text_sound[j][i])
                    break;                      
                case 'щ': 
                    if(text_sound[j][i++] == text_sound[j][i])
                    break;          
                case 'ъ':
                    break;                               
                case 'ы': 
                    if(text_sound[j][i++] == text_sound[j][i])
                    break;      
                case 'ь':
                    break;
                case 'э':
                    break;      
                case 'ю':
                    kol_symb_text++;
                    text_sound[j][i] = 'й';
                    for(int k = i; k < kol_symb_text; k++)
                        text_sound[j][k++] = text_sound[j][k];
                    text_sound[j][i++] = 'у';
                    break;  
                case 'я':
                    kol_symb_text++;
                    text_sound[j][i] = 'й';
                    for(int k = i; k < kol_symb_text; k++)
                        text_sound[j][k++] = text_sound[j][k];
                    text_sound[j][i++] = 'а';
                    break;
                default: break;                 
            }
    }
}
 
cout << text_sound;
}
0
angryjack93
7 / 3 / 1
Регистрация: 04.11.2012
Сообщений: 218
07.04.2013, 20:27  [ТС] #9
У меня в mxDev-C++ даже stdafx.h нет:\
0
yoghurt92
374 / 345 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
07.04.2013, 20:29 #10
angryjack93, просто убери его.
0
angryjack93
7 / 3 / 1
Регистрация: 04.11.2012
Сообщений: 218
07.04.2013, 22:14  [ТС] #11
вот тут
C++
1
else{symb_beg_word = j; break;}
ошибки не было, просто равно случайно второе поставил.
А от того, что я убрал stdafx.h ничего не изменилось:/
я так и не понял, чего вы в коде кроме условия изменили...
0
yoghurt92
374 / 345 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
07.04.2013, 22:48 #12
angryjack93, у меня программа заработала, а я взял код который был в первом посте, поменял функции для динамического массива и исправил логическую ошибку. а изменить нужно было

Цитата Сообщение от angryjack93 Посмотреть сообщение
else{symb_beg_word = j; break;}
на

C++
1
2
else if(symb_beg_word == j){
 break;}
0
angryjack93
7 / 3 / 1
Регистрация: 04.11.2012
Сообщений: 218
08.04.2013, 07:42  [ТС] #13
C++
1
else if(text_string[j] == ' '){symb_beg_word = j; break;}
Вот такое условие должно быть) я ж говорю, случайно второе равно поставил...
НО, даже если и поменять условие, то все равно не хочет и ошибка такая же как в начале(
Вообще не понимаю в чем проблема...
0
yoghurt92
374 / 345 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
08.04.2013, 09:56 #14
angryjack93, проверьте так, у меня нет ошибок

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
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
#include <iostream>
#include <windows.h>
#include <conio.h>
using namespace std;
 
void sound_func(char **text_sound, int kol_symb_text, int sum_words);
 
char text_string[] = "";
 
int main()
{
    cout << "Введите текст для озвучки: \n";
    gets(text_string);
    int kol_symb = strlen(text_string);
    int spaces = 0, j;
    
    for(int i = 0; i < kol_symb; i++) {if(text_string[i] == ' ') spaces++;}
    int sum_words = spaces + 1;
    char **strip_words = new char* [sum_words];
    for(int i = 0; i <= sum_words; i++)
        strip_words[i] = new char [30];
    int symb_beg_word = 0;
    
    for(int i = 0; i < sum_words; i++){
        int g = 0;
        for(j = symb_beg_word; j < kol_symb; j++){
            if(text_string[j] != ' '){
               strip_words[i][g] = text_string[j];
               g++;
            }
            else if(text_string[j] == ' '){
                symb_beg_word = j;
                break;
            }
 
        }
    }
 
    sound_func(strip_words, kol_symb, sum_words);
     
    getch();
    return 0;
}
 
void sound_func(char **text_sound, int kol_symb_text, int sum_words)
{
    for(int j = 0; j < sum_words; j++){
    for(int i = 0; i < kol_symb_text; i++){
            switch(text_sound[j][i]){
                case 'а':
                    break;
                case 'б': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;
                case 'в': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;
                case 'г': 
                    if(text_sound[j][i++] == text_sound[j][i])
                    break;
                case 'д': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;          
                case 'е': 
                    kol_symb_text++;
                    text_sound[j][i] = 'й';
                    for(int k = i; k < kol_symb_text; k++)
                        text_sound[j][k++] = text_sound[j][k];
                    text_sound[j][i++] = 'э';
                    break;  
                case 'ё': 
                    kol_symb_text++;
                    text_sound[j][i] = 'й';
                    for(int k = i; k < kol_symb_text; k++)
                        text_sound[j][k++] = text_sound[j][k];
                    text_sound[j][i++] = 'о';
                    break;          
                case 'ж': 
                    if(text_sound[j][i++] == text_sound[j][i])
                    break;      
                case 'з': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;      
                case 'и': 
                    break;      
                case 'й': 
                    break;      
                case 'к': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;                       
                case 'л': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;      
                case 'м': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;                       
                case 'н': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;  
                case 'о':
                    break;  
                case 'п': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;  
                case 'р': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;      
                case 'с': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;
                case 'т': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;  
                case 'у':
                    break;      
                case 'ф': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;      
                case 'х': 
                    if(text_sound[j][i++] == text_sound[j][i]){}
                    if(text_sound[j][i++] == 'ь'){}
                    break;                       
                case 'ц': 
                    if(text_sound[j][i++] == text_sound[j][i])
                    break;
                case 'ч': 
                    if(text_sound[j][i++] == text_sound[j][i])
                    break;
                case 'ш': 
                    if(text_sound[j][i++] == text_sound[j][i])
                    break;                      
                case 'щ': 
                    if(text_sound[j][i++] == text_sound[j][i])
                    break;          
                case 'ъ':
                    break;                               
                case 'ы': 
                    if(text_sound[j][i++] == text_sound[j][i])
                    break;      
                case 'ь':
                    break;
                case 'э':
                    break;      
                case 'ю':
                    kol_symb_text++;
                    text_sound[j][i] = 'й';
                    for(int k = i; k < kol_symb_text; k++)
                        text_sound[j][k++] = text_sound[j][k];
                    text_sound[j][i++] = 'у';
                    break;  
                case 'я':
                    kol_symb_text++;
                    text_sound[j][i] = 'й';
                    for(int k = i; k < kol_symb_text; k++)
                        text_sound[j][k++] = text_sound[j][k];
                    text_sound[j][i++] = 'а';
                    break;
                default: break;                 
            }
    }
}
 
cout << text_sound;
}
0
angryjack93
7 / 3 / 1
Регистрация: 04.11.2012
Сообщений: 218
08.04.2013, 15:11  [ТС] #15
Без толку.. скопировал, вставил и все равно ошибка:\ может дело в среде?
У меня лично стоит wxDev-Cpp под виндоус 8
0
08.04.2013, 15:11
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.04.2013, 15:11
Привет! Вот еще темы с ответами:

Подскажите, пожалуйста, кому не лень! - VBA
Подскажите, пожалуйста, кому не лень! ActiveCell.Formula = '=b' &amp; CStr(i) В этом случае появляется возможность менять значение...

Просмотрите програмку Кому не лень! - C++ Builder
#include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include &lt;ctype.h&gt; #include &lt;string.h&gt; #include &lt;stdlib.h&gt; void print(); void...

прошу, кому не лень возится , никогда не изучал пхп сейчас столкнулся - PHP
Дан массив строк $str. Подсчитать количество повторов каждого значения и вывести на экран... Добавлено через 1 минуту и еще не...

access 2007. Проверьте, пожалуйста, кому не лень, схему данных. Может стоит переназначить связи? - MS Access
БД для работы учета заказов(договоров) на продолжение обучения. Есть Юридическое лицо и есть Физическое(у каждого свой договор). Помогите,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.