Некоторые языки программирования это допускают, но правила разработки алгоритмов строго запрещают такие манипуляции, потому что нарушаются каноны современного программирования. В связи с этим большинство языков прямо запрещают модификацию параметра цикла в теле цикла.
Если нужно конкретно - в Pascal и Fortran оператор цикла с пратметром строгий, запрещающий менять значение параметра в теле цикла. Обнаруживается при компиляции, запустить на выполнение нельзя. В языках cемейства С оператор for нестрогий, цикл с параметром там моделируется и компилятор не отслеживает модификацию параметра цикла в теле цикла. В бейсиках также можно модифицировать параметр цикла в теле цикла.
Поделитесь своими знаниями, ответьте на вопрос:
3. Производилась двухканальная (стерео) звукозапись с частотой дискретизации 64 кГц и 32-битным разрешением. В результате был получен файл размером 30 Мбайт, сжатие данных не производилось.Определите приблизительно, сколько времени (в минутах) проводилась запись? 4. Производится четырёхканальная (квадро) звукозапись с частотой дискретизации 32 кГц и 32-битным разрешением. Запись длится 4 минуты, её результаты записываются в файл, сжатие данных не производится. Определите приблизительно размер полученного файла (в Мбайт
1.
var a:array [1..10] of integer;
i,k:integer;
begin
k:=0;
write('Массив: ');
for i:=1 to 10 do
begin
a[i]:=random(100);
write(a[i]:4);
if a[i] mod 2 = 1 then k:=k+1
end;
writeln;
if k>0 then writeln ('Количество нечетных чисел равно ',k)
else writeln ('Нечетных чисел нет')
end.
2.
var a:array [1..10] of integer;
i,m:integer;
begin
m:=99;
write('Массив: ');
for i:=1 to 10 do
begin
a[i]:=random(100);
write(a[i]:4);
if a[i] < m then m:=a[i]
end;
writeln;
writeln ('min = ',m)
end.
Объяснение:
var a:array [1..10] of integer;
i,k,m:integer;
begin
k:=0;
m:=99;
write('Массив: ');
for i:=1 to 10 do
begin
a[i]:=random(100);
write(a[i]:4);
if a[i] mod 2 = 1 then k:=k+1;
if a[i] < m then m:=a[i]
end;
writeln;
if k>0 then writeln ('Количество нечетных чисел равно ',k)
else writeln ('Нечетных чисел нет');
writeln ('min = ',m)
end.