#include<iostream>
#include<string>
#include<cstdlib>
#include<ctime>
#include <algorithm>
using namespace std;
string los;
string z;
int iL, iP, i, j=2, n=30;
int main()
{
srand(time(NULL));
for(int i = 0; i < 30; i++ )
{
los =(( rand() %('d'-'a'))+'a');
z=z+los;
}
cout << "Ciag znakow: " << z << endl;
for(i=0; i<=n-2; i++)
for(j=i+j; j<=n-1; j++)
{
iL=i;
iP=j-1;
while(iL<iP)
{
if(z[iL]!=z[iP])
break;
else
iL=iL+1;
iP=iP-1;
}
cout << z[i,j];
}
return 0;
}
Mam tutaj kod, który ma wypisać mi palindromy z losowego łańcucha znaków, składającego się z liter ABCD. Kiedy chce wypisać te wartości, wypisuje się ten sam łańcuch, na dodatek z pominięciem 2 pierwszych liter oraz pojawia się jeszcze ten błąd obok tego cout. Jakieś rozwiązanie?