soa8690
?>

До ть зробити проктичн Варіант 5

Информатика

Ответы

gbfedak220

var n, p,i,k:integer;

m:array of real;

s:real;

begin

write('n');

readln(n);

setlength(m,n);

writeln;  

for i:=0 to n-1 do

begin

m[i]:=random(21)-10;

write(m[i]:8:2);

if m[i]>0 then k:=i;

end;

writeln;  

S:=0

for i:=0 to k do

s:=s+m[i];

writeln('Сумма элементов до последнего положительного элемента =', s);

Объяснение:

Оптимизируем

for i:=0 to n-1 do  

m[i]:=random(21)-10;  

for i:=0 to n-1 do  

write(m[i]:8:2);

Объединим и заставим сразу считать k

for i:=0 to n-1 do

begin

m[i]:=random(21)-10;

write(m[i]:8:2);

if m[i]>0 then k:=i;

end;

выкидываем

for i:=n-1 downto 0 do

if m[i]>0 then  

begin

k:=i;

break;

end;

И вот еще не помню уже, но не будет лишним сделать S=0, может конечно при описании оно и становится 0, но лишним не будет. Нас учили так.

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

До ть зробити проктичн Варіант 5
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

bolosolo77
Anastasiamoscow80
turovvlad
ramco1972
Геннадьевна_Петр
julia3594265843
uchpaot
alexderru
Елена Васильева839
Aleksandr
varvv15
VASILEVNA
admiral-kazan
keti0290103
lazarevaavrora