<em>sp - сумма положительных элементов</em>
<em>so - сумма отрицательных элементов</em>
<em>kp - количество положительных элементов</em>
<em>ko - количество отрицательных элементов</em>
<em>fo - первый отрицательный элемент</em>
<em>lo - последний отрицательный элемент</em>
<em>max,min - номера макс и мин эл массива</em>
<em>a[max],a[min] - макс и мин эл массива</em>
<em>sum - сумма эл массива</em>
<em>proiz - произведение эл массива</em>
<em>m1,m2 - два макс эл</em>
<em>maxo - макс среди отрицательных</em>
<em>s1 - сумма эл не превышающих maxo</em>
<em>minp - мин среди положительных</em>
<em>s2 - сумма эл,превышающих minp
</em>s3 - сумма эл от a до b
cn - количество эл от a до b
-----------------------------------------------------------------------------------------------------
const n = 10;
var a:array [1..n] of integer;
i,sp,so,kp,ko,max,min,fo,lo,m1,m2,maxo,s1,minp,s2,aa,bb,s3,cn:integer;
sum,proiz:longint;
f:boolean;
begin
randomize;
so:=0;
sp:=0;
kp:=0;
ko:=0;
f:=false;
for i:=1 to n do
begin
a[i]:=random(21)-10;
if (not f) and (a[i]>1) then f:=true;
write (a[i]:3);
if a[i]>0 then
begin
sp:=sp+a[i];
inc(kp);
end else if a[i]<0 then
begin
so:=so+a[i];
inc(ko);
end;
end;
writeln;
max:=1;
min:=1;
for i:=2 to n do
if a[i]>a[max] then max:=i else
if a[i]<a[min] then min:=i;
for i:=1 to n do
if a[i]<0 then
begin
fo:=i;
break;
end;
for i:=n downto 1 do
if a[i]<0 then
begin
lo:=i;
break;
end;
proiz:=1;
if f then
sum:=so+sp
else for i:=1 to n do proiz:=proiz*a[i];
m1:=-100;
m2:=-100;
for i:=1 to n do
if a[i]>m1 then
begin
m2:=m1;
m1:=a[i];
end else if (a[i]>m2) and (a[i]<>m1) then m2:=a[i];
maxo:=-100;
for i:=1 to n do
if (a[i]<0) and (a[i]>maxo) then maxo:=a[i];
s1:=0;
for i:=1 to n do
if a[i]<maxo then s1:=s1+a[i];
minp:=100;
for i:=1 to n do
if (a[i]>0) and (a[i]<minp) then minp:=a[i];
s2:=0;
for i:=1 to n do
if a[i]>minp then s2:=s2+a[i];
write ('A = ');
readln (aa);
write ('B = ');
readln (bb);
s3:=0;
cn:=0;
for i:=aa to bb do
begin
inc(s3,a[i]);
inc(cn);
end;
end.
1)
program chik;
var a:array[1..100]of integer;
i,s:integer;
begin
for i:=1 to 11 do
begin
read(a[i]);
end;
s:=0;
for i:=1 to 11 do
begin
if(a[i] mod 5=0)then s:=s+a[i];
end;
write(s);
end.
2)
program chik2;
var a:array[1..100]of integer;
i,s:integer;
begin
s:=0;
for i:=1 to 11 do
begin
read(a[i]);
end;
s:=0;
for i:=1 to 11 do
begin
if(a[i] mod 2=1)then s:=s+1];
end;
write(s);
end.
3)
program chik3;
var a:array[1..1000]of integer;
i:integer;
begin
for i:=1 to 9 do
begin
read(a[i]);
end;
for i:=1 to 9 do
begin
if(a[i] mod 2=0)then write(a[i],' ');
end;
end.
Давай разбираться. Если бы квартира в доме была 1 = 2^0, то информация, что Вася живет в этой квартире, имела бы 0 информации.
Потому что, если мы заранее знаем, что Вася живет в этом доме, то сразу ясно, что в этой единственной квартире.
Дополнительное сообщение об этом не несет никакой информации вообще.
Если квартир 2 = 2^1, то сообщение несет 1 бит информации. 1 квартира = 0, 2 квартира = 1.
Если квартир 3, 2<3<4, то есть 2^1<3<2^2, то будет 2 бита. 1кв = 00, 2кв = 01, 3кв = 10. Одного бита не хватает.
И так далее. Сколько квартир в доме (в смысле - 2 в какой степени), столько бит и будет.
128 < 150 < 256, то есть 2^7 < 150 < 2^8, поэтому уточнение номера квартиры дает 8 бит информации.
Очень просто я помогаю товарищу с математикой и товарищ очень рад источник информации это человек который знает математику и отправляет ответ через компьютер или телефон