1. Для цикла For есть решение выложенное выше от Srzontmp.
2. Почти ничего не меня получим код для цикла while: var i, n, k: integer; begin i := 2; readln(n); while i <= n div 2 do begin if (n mod i) = 0 then k := i; i:=i+1; end; writeln('наибольший делитель ', n, ' = ', k); end.
3. Аналогично для цикла Repeat: var i, n, k: integer; begin i := 2; readln(n); repeat if (n mod i) = 0 then k := i; i:=i+1; until i> n div 2; writeln('наибольший делитель ', n, ' = ', k); end.
Язык Java
import java.util.*;
import java.io.*;
public class Main {
static int _16yearsOld = 0;
static int min = 14;
static int max = 16;
static int diff = max - min;
static Random random = new Random();
static int rand = random.nextInt(diff + 1);
rand += min;
public static void main(string[] args) {
int[] students = new int[19];
for (int i = 0; i <= students.size(); i++) {
students[i] = rand;
}
for (int i = 0; i <= students.size(); i++) {
if (students[i] == 16)
_16yearsOld++;
}
}
}
2. Почти ничего не меня получим код для цикла while:
var
i, n, k: integer;
begin
i := 2;
readln(n);
while i <= n div 2 do begin
if (n mod i) = 0 then k := i;
i:=i+1;
end;
writeln('наибольший делитель ', n, ' = ', k);
end.
3. Аналогично для цикла Repeat:
var
i, n, k: integer;
begin
i := 2;
readln(n);
repeat
if (n mod i) = 0 then k := i;
i:=i+1;
until i> n div 2;
writeln('наибольший делитель ', n, ' = ', k);
end.