int prga(int *S, int *numbers, int len) { int i = -1, j = 0; int t; char out; int keys[len]; cout << "Start PRGA" << endl; int count = 0; while(count < len) { i = (i + 1) % 256; j = (j + *(S + i)) % 256; swap(S, i, j); t = *(S + j) + *(S + i) % 256; keys[count] = *(S + t) % 256; count++; } for(i = 0; i < len; i++) { printf("%d", keys[i] ^ *(numbers + i)); } }