Wenn Du das ganze in der
IDE laufen lässt, dann bekommst Du die Stelle angezeigt, an der es knallt.
Davon mal abgesehen, ist mir nicht ganz klar, was du mit den lokalen Variablen y und sch bezwecken willst, wenn Du das Ganze auch mit i bzw. i-1 machen kannst.
Und ein Array fängt bei 0 an; nicht bei 1.