Beh, no, e' ovviamente sbagliato. l'algoritmo e' X(i+1) = (a * X(i) + c) Modulo N
dove a,c,N sono costanti che vanno ben definite per avere una serie casuale, in genere N e' una potenza di due, X(0) e' il primo elemento (chiamato "seed"), tutti i parametri devono essere compresi tra 0 e N.
E' famoso perche' e' uno dei primi algoritmi usati, e' facile da implementare, occupa poca memoria, e' veloce, non ha bisogno di matematica complessa, era il favoriti agli albori dei computer quando avevavo solo semplici operazioni matematiche (era il metodo usato nei primi calcolatori tascabili per esempio). Ma i risultati non sono cosi' ottimali, e occorre definire le costanti in base al tipo di applicazione che stiamo usando. Ora come ora c'e' la "battaglia" tra i generatori di numeri pseudo-causali, importantissimi nella crittografia e nella analisi statistica e di simulazione. LCG e' ancora insegnato a scuola, vedo, con buone ragioni.
Ti lascio un po' di tempo per ragionare sul codice che hai scritto. Fai attenzione che le "costanti" rimangano tali (solo il numero casuale deve cambiare all'interno del loop. E fai attenzione alle parentesi graffe, che definiscono il "corpo" del ciclo, cosi' come hai scritto tu, solo l'istruzione immediatamente dopo il for
viene iterata.