Почему цикл в java работает неверно?
если прописать вот так:
System.out.println("Skol'ko ychenikov vvesti?");
int n=read.nextInt();
for (int i=1;i<=n;i++){
System.out.println("input name "+(i));
follower.addStudent(read.nextLine());
то при выполнении цикла выводится input name 1, следом input name 2 (при этом не принимает значение для input name 1, принимает его только начиная с i=2),
если ввод n с клавиатуры заменить на заранее заданное значение n, то все работает корректно. Что не так с вводом n с клавиатуры???
n=5;
Var
ar:array[1..n] of integer;
ar2:array[1..n] of integer;
i,k:integer;
function prost(a:integer):boolean;
var i:integer;
b:boolean;
begin
b:=true;
for i:=2 to a div 2 do
if a mod i=0 then
begin;
b:=false;
break;
end;
if a=1 then b:=false;
prost:=b;
end;
begin;
randomize;
k:=0;
for i:=1 to n do
begin;
ar[i]:=random(101);
write(ar[i]:4);
end;
writeln;
for i:=1 to n do
if prost(ar[i]) then
begin;
inc(k);
ar2[k]:=ar[i];
write(ar2[k]:4);
end;
end.