Пользуется в тех случаях, когда некоторое однообразное действие надо повторить определенное количество раз. Особенно, если это количество достаточно велико. Бывают же такие задачи, когда необходимо, например, вычислить сумму каких-либо величин, каждая из которых вычисляется по формуле. Ведь если непосредственно вычислять сумму 1 + 2 + 3 + ... + 1000, то программа разрастется до невообразимых масштабов.
edvard-b
09.07.2022
Сорян, когда из паскаля скопировал, абзацы некоторые удалились,а так всё работает. Делать нечего прост сегодня :)
var s,i,min,max,m,n: integer; var a: array[1..15] of integer; begin for i:=1 to 15 do begin a[i]:=random(100); write(a[i],' ') end;
writeln; m:=a[1];n:=a[1];
for i:=1 to 15 do begin if m<a[i] then begin m:=a[i]; min:=i; end; if n>a[i] then begin n:=a[i]; max:=i; end; end; if max<min then begin s:=max;max:=min;min:=s; end;
for i:=1 to ((abs(max-min)) div 2 +1) do begin s:=a[min]; a[min]:=a[max]; a[max]:=s; min:=min+1; max:=max-1; end; for i:=1 to 15 do write(a[i],' '); end.
svetlanadianowa
09.07.2022
Странноватая задача, конечно. Естественно, что в множестве нет порядка элементов, использование процедур (функций) здесь совершенно ни к чему. Если учитывать все требования, то получится весьма корявая программа. Примерно вот такая: var s,s1:string; i:integer; mn:set of 'a'..'z'; function f(c:char;m:set of 'a'..'z'):boolean; begin f:=(not (c in m))and(c in ['a'..'z']) end; begin writeln('Введите строку:');readln(s); mn:=[];s1:=''; for i:=1 to length(s) do if f(s[i],mn) then begin mn:=mn+[s[i]]; s1:=s1+s[i]; end; writeln(s1); end.
Пример работы: Введите строку: this is an example text. thisanexmpl
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
Вкаких случаях используется оператор цикла с параметром?