Witajcie
Mam mały problem z zadaniem FLAMASTER. Mianowicie wyjde mi się, że to na co wpadłem powinno działać. Lecz tak się nie dzieje. Wydaje mi sie, że to przez konwersje danych bo liczby w tablicy char są dziwnie zamieniane.
Oto kod:
using namespace std;
int main() {
char org[210]; // oryginalna tablica
char kop[210]; // tablica do ktorej bedziemy kopiowac
int ile; // ile wierszy kodu
int p=0, r=0, z=1; // zmienne pomocnicze
cin>>ile; // wczytanie n
for(int i=0; i<ile; i++) // petla ktora wczyta n kodow
{
// wczytanie kodu
cin>>org;
// przepisanie pierwszego znaku
kop[0]=org[0];
// petla w ktorej dokonujemy przepisania w skroconej wersji
for(p=0; p<210; p++)
{
if(org[p] == org[p+1]) z++; // jesli kolejny znak jest taki sam zmienna pom ++;
else
if(z<3) { // jesli jest inny znak i wczesniejsze znaki powtarzaja sie 1/2 razy
kop[p+1]=org[p+1];
}
else if(z>2) // gdy znak powtarza sie >3 razy
{
r=z-2; // zmienna aby wiedziec gdzie wstawic liczbe wystapien
kop[p-r]=(int)z; // wpisanie ilosci wystapien za znakiem ktory byl ostatnio
}
z=1; // nadanie zmiennej pomocniczej jeden, odpowiada za ilosc wystapien znaku
}
}
// wyswietlenie przerobionej tablicy
for(int j=0; j<210; j++)
{
cout<<kop[j];
}
system("PAUSE");
return 0;
}
Będę wdzięczny za wszelką pomoc. Jeśli chodzi o #include to nie ma dyrektyw specjalnie. Bugował się przy wstawianiu
Pozdrawiam