4 а) const n=10; var a:array[1..n] of integer; i,k:integer; begin writeln('Исходный массив: '); for i:=1 to n do begin a[i]:=random(10); write(' ',a[i]); end; writeln; for i:=1 to n do begin if ((i mod 2) = 0) then a[i]:=a[i]*2 else a[i]:=a[i]*3; end; writeln('Конечный массив: '); for i:=1 to n do write(' ',a[i]); end. б) const n=10; var a:array[1..n] of integer; i,k:integer; begin writeln('Исходный массив: '); for i:=1 to n do begin a[i]:=random(10); write(' ',a[i]); end; writeln; for i:=1 to n do begin if ((i mod 2) = 0) then a[i]:=a[i]-a[i]*2; end; writeln('Конечный массив: '); for i:=1 to n do write(' ',a[i]); end. 5 a) const n=10; var a:array[1..n] of integer; i,k:integer; begin k:=0; writeln('Исходный массив: '); for i:=1 to n do begin a[i]:=random(10); write(' ',a[i]); end; writeln; for i:=1 to n do begin if (i>2) and (a[i]>a[i-1]) then k:=k+1; end; writeln('Конечный массив: '); for i:=1 to n do write(' ',a[i]); writeln; write('Кол-во элементов больших соседа слева ',k); end. 5 б) const n=10; var a:array[1..n] of integer; z,i,k:integer; begin k:=0; z:=0; writeln('Исходный массив: '); for i:=1 to n do begin a[i]:=random(10); write(' ',a[i]); end; writeln; for i:=1 to n do begin if ((i mod 2) = 0) then k:=k+1; if k=2 then begin k:=0; z:=z+1; end; end; writeln('Конечный массив: '); for i:=1 to n do write(' ',a[i]); writeln; write('Кол-во четных пар: ',z); end. 6 а) const n=10; var a:array[1..n] of integer; s,k,i:integer; sr:real; begin s:=0; k:=0; writeln('Исходный массив: '); for i:=1 to n do begin a[i]:=random(10); write(' ',a[i]); end; writeln; for i:=1 to n do begin if ((a[i] mod 2) = 0) and ((i mod 2) <> 0) then begin s:=s+a[i]; k:=k+1; end; end; sr:=s/k; writeln('Конечный массив: '); for i:=1 to n do write(' ',a[i]); writeln; write('Среднее арифметическое четных элементов с нечетными индексами: ',sr); end.
во всех этих задачах используются 2 формулы (объем)I=k*i; (мощность)N=2^i
1) 8=2^i => i=3, объём= 3*20=60 бит
2)вес одного символа 4096/1024=4 бит => i=4, мощность (N) = 2^i => N=2^4=16
3)12288/8=1536 байт, далее 1536/1024=1,5 Кбайт
4)для начала переведем объем кбайт и биты. (из предыдущей задачи это 12288 бит); после найдем i i=12288/4096=3. далее мощность (N)=2^3=8
5)один символ занимает 4 бита (2^4=16) 1/64 часть мегабайта = 1024 * 1024 * 8 / 64 = 131072 бита значит 131072 / 4= 32768 символов.
6)находим количество(k) 4*30*50=6000, кол-во информации (объем (I) ) из байт переводим в бит. 4500*8=36000 бит. далее находим i; i=I(объем)/k(кол-во); i=36000/6000=6. N=2^6=64.
7)может не 1,5*1023, а 1,5*10^23? N=4; i=2. находим объём 2*1,5*10^23. I=3*10^23.
8)всего двухзначных чисел 100. (00, 01, 02, 03, 04, 05, 06, 07, 08, 09, 10, 11, 12 и тд. ) значит 2^i=100. близжайшее значение i в данном случае 7. Так как если 6, то 2^6=64, 100-64=36. если i=7, то 2^7=128. 100-128=-28 (ну по факту разница в 28 единиц.) что ближе 36 или 28? следовательно ответ 7.
const n=10;
var a:array[1..n] of integer; i,k:integer;
begin
writeln('Исходный массив: ');
for i:=1 to n do begin
a[i]:=random(10);
write(' ',a[i]);
end;
writeln;
for i:=1 to n do begin
if ((i mod 2) = 0) then
a[i]:=a[i]*2
else
a[i]:=a[i]*3;
end;
writeln('Конечный массив: ');
for i:=1 to n do
write(' ',a[i]);
end.
б)
const n=10;
var a:array[1..n] of integer; i,k:integer;
begin
writeln('Исходный массив: ');
for i:=1 to n do begin
a[i]:=random(10);
write(' ',a[i]);
end;
writeln;
for i:=1 to n do begin
if ((i mod 2) = 0) then
a[i]:=a[i]-a[i]*2;
end;
writeln('Конечный массив: ');
for i:=1 to n do
write(' ',a[i]);
end.
5 a)
const n=10;
var a:array[1..n] of integer; i,k:integer;
begin
k:=0;
writeln('Исходный массив: ');
for i:=1 to n do begin
a[i]:=random(10);
write(' ',a[i]);
end;
writeln;
for i:=1 to n do begin
if (i>2) and (a[i]>a[i-1]) then
k:=k+1;
end;
writeln('Конечный массив: ');
for i:=1 to n do
write(' ',a[i]);
writeln;
write('Кол-во элементов больших соседа слева ',k);
end.
5 б)
const n=10;
var a:array[1..n] of integer; z,i,k:integer;
begin
k:=0;
z:=0;
writeln('Исходный массив: ');
for i:=1 to n do begin
a[i]:=random(10);
write(' ',a[i]);
end;
writeln;
for i:=1 to n do begin
if ((i mod 2) = 0) then
k:=k+1;
if k=2 then
begin
k:=0;
z:=z+1;
end;
end;
writeln('Конечный массив: ');
for i:=1 to n do
write(' ',a[i]);
writeln;
write('Кол-во четных пар: ',z);
end.
6 а)
const n=10;
var a:array[1..n] of integer; s,k,i:integer;
sr:real;
begin
s:=0;
k:=0;
writeln('Исходный массив: ');
for i:=1 to n do begin
a[i]:=random(10);
write(' ',a[i]);
end;
writeln;
for i:=1 to n do begin
if ((a[i] mod 2) = 0) and ((i mod 2) <> 0) then
begin
s:=s+a[i];
k:=k+1;
end;
end;
sr:=s/k;
writeln('Конечный массив: ');
for i:=1 to n do
write(' ',a[i]);
writeln;
write('Среднее арифметическое четных элементов с нечетными индексами: ',sr);
end.
во всех этих задачах используются 2 формулы (объем)I=k*i; (мощность)N=2^i
1) 8=2^i => i=3, объём= 3*20=60 бит
2)вес одного символа 4096/1024=4 бит => i=4, мощность (N) = 2^i => N=2^4=16
3)12288/8=1536 байт, далее 1536/1024=1,5 Кбайт
4)для начала переведем объем кбайт и биты. (из предыдущей задачи это 12288 бит); после найдем i i=12288/4096=3. далее мощность (N)=2^3=8
5)один символ занимает 4 бита (2^4=16) 1/64 часть мегабайта = 1024 * 1024 * 8 / 64 = 131072 бита значит 131072 / 4= 32768 символов.
6)находим количество(k) 4*30*50=6000, кол-во информации (объем (I) ) из байт переводим в бит. 4500*8=36000 бит. далее находим i; i=I(объем)/k(кол-во); i=36000/6000=6. N=2^6=64.
7)может не 1,5*1023, а 1,5*10^23? N=4; i=2. находим объём 2*1,5*10^23. I=3*10^23.
8)всего двухзначных чисел 100. (00, 01, 02, 03, 04, 05, 06, 07, 08, 09, 10, 11, 12 и тд. ) значит 2^i=100. близжайшее значение i в данном случае 7. Так как если 6, то 2^6=64, 100-64=36. если i=7, то 2^7=128. 100-128=-28 (ну по факту разница в 28 единиц.) что ближе 36 или 28? следовательно ответ 7.