Fíjate que la y sólo la inicializas cuando la declaras, por eso para el primer caso te funciona. Luego vas arrastrando el valor de y en cada solución... Recuerda que sumas los valores ascii de caracteres... (cadena)
Ahora debería funcionar...
Ahora debería funcionar...
Código (C) [Seleccionar]
#include<stdio.h>
#include<math.h>
#include<string.h>
char cadena[30];
int y;
int i;
int resultado;
int l;
int main() {
int i=0;
int y;
char nombreArchivoLectura[10];
char nombreArchivoEscritura[10];
FILE *archivoLectura=NULL;
FILE *archivoEscritura=NULL;
archivoLectura=fopen("in.txt","r");
archivoEscritura = fopen("salida.txt","w");
while(!feof(archivoLectura)) {
y=0;
fscanf(archivoLectura,"%[^\n]\n",cadena);
l=strlen(cadena);
printf("%s: ", cadena);
for(i=0;i<l+1;i++) y+=(int)cadena[i];
printf("\n---------------------------------------\n");
resultado=y%131;
fprintf(archivoEscritura,"%d\n",resultado);
}
fclose(archivoLectura);
fclose(archivoEscritura);
return 0;
}