![]() |
1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!
![]() ![]() |
![]() |
Andrewshkovskii |
![]()
Сообщение
#1
|
Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 222 Пол: Мужской Реальное имя: Andrew Репутация: ![]() ![]() ![]() |
Задание :
Задана запись,состоящая из букв. Кол-во букв кратное числу N. Всего в записи М слов. Длина слова N. Составить структурированную программу печати текста находяшегося между словами с заданными номерами A и B. Проблема : даже не знаю как охарактеризовать..При выводе запроса на ввод следующего слова,вылезают слова,введенные ранее ,т.е : Vvedite kol-vo slov v stroke:3 Vvedite kol-vo byks v slove (Kol-vo bykv doljo bit kratnoe chisly slov) :3 Vvedite 1 slovo iz 3 bykv:asd sd 2 slovo iz 3 bykv:qwe sd qwe 3 slovo iz 3 bykv:zxc Nasha stroka : asd qwe zxc Не могу понять в чем дело... Вот код #include <iostream> |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
Эта программа у тебя работает? Мне выдает Segmentation Fault... Смотри:
if (i==n-1)При первом же проходе (i = 0, n = 3) ты пытаешься в word добавить еще символ, у тебя там есть уже 3 символа, при добавлении пробела ты просто вылетаешь за пределы выделенной памяти. Ошибка... |
Andrewshkovskii |
![]()
Сообщение
#3
|
Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 222 Пол: Мужской Реальное имя: Andrew Репутация: ![]() ![]() ![]() |
for (int i=0;i<n;i++) Исправил..результат остался темже...Или я не так исправил? |
volvo |
![]()
Сообщение
#4
|
Гость ![]() |
![]() char *str = new char[(m*n)-(n+1)];Почему "минус"? Тебе надо M*N символов, (M - 1) пробелов между ними и один символ для завершающего нуля... Я бы написал: char *str = new char[m*n + m]; |
Andrewshkovskii |
![]()
Сообщение
#5
|
Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 222 Пол: Мужской Реальное имя: Andrew Репутация: ![]() ![]() ![]() |
Ну да в принципе..спасибо..НО всеравно это ошибки(?) не исправило..почему вылезают эти слова?МОжет там не очишается поток и они выходят со следующим вызовом cout..?
|
volvo |
![]()
Сообщение
#6
|
Гость ![]() |
Не знаю, у меня ничего не вылезает... Только то, что и должно быть.
Цитата(Console) Vvedite kol-vo slov v stroke:3 Vvedite kol-vo byks v slove (Kol-vo bykv doljo bit kratnoe chisly slov:3 Vvedite 1 slovo iz 3 bykv:asdf Slovo doljno sostoyat iz 3 bykv!!! Povtorite vvod! Vvedite 1 slovo iz 3 bykv:asd Vvedite 2 slovo iz 3 bykv:wert Slovo doljno sostoyat iz 3 bykv!!! Povtorite vvod! Vvedite 2 slovo iz 3 bykv:wer Vvedite 3 slovo iz 3 bykv:were Slovo doljno sostoyat iz 3 bykv!!! Povtorite vvod! Vvedite 3 slovo iz 3 bykv:rew Nasha stroka : asd wer rew |
Andrewshkovskii |
![]()
Сообщение
#7
|
Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 222 Пол: Мужской Реальное имя: Andrew Репутация: ![]() ![]() ![]() |
очень странно..пробывал 2 компилятора(5.0 и 3.1) и через DevC++..в DEV вообще общибку выдает при вводе слова,то что память не может быть записана...о_О
Кстате,не мог ли Ты,Volvo,подталкнуть к мысле,как мне распечатать слова,между заданными пробелами? ![]() Сообщение отредактировано: Andrewshkovskii - 18.10.2007 22:10 |
volvo |
![]()
Сообщение
#8
|
Гость ![]() |
Цитата как мне распечатать слова,между заданными пробелами? Я вот так только что проверил в Builder-е:...Все работает... |
![]() ![]() |
![]() |
Текстовая версия | 30.07.2025 3:56 |