Задана запись,состоящая из букв.
Кол-во букв кратное числу 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>
#include <string.h>
#include <stdio.h>
int main ()
{
int m,n;
cout << "Vvedite kol-vo slov v stroke:";
cin >> m;
cout << "\n";
do
{
cout <<"Vvedite kol-vo byks v slove (Kol-vo bykv doljo bit kratnoe chisly slov:";
cin >> n;
cout <<"\n";
}while ((m%n)!=0);
char *str = new char[(m*n)-(n+1)];
str="";
char *word = new char[n];
cin.get();
for (int i=0;i<n;i++)
{
do
{
flush(cout);
cout << "Vvedite " << i+1 << " slovo iz " << n << " bykv:";
cin >> word;
if ((strlen(word))>3)
{
cout << "\n Slovo doljno sostoyat iz " << n << " bykv!!!\n";
cout << "Povtorite vvod!\n";
}
} while ((strlen(word))!=3);
if (i==n-1)
{
strcat(str,word);
}
else
{
strcat(word," ");
strcat(str,word);
}
}
cout << "\nNasha stroka : " << str;
cin.get();
cin.get();
}