Задача 4.
Дано: Решение
I = 2 KB
К = I : i
i = 8 бит 2 КБ = 16384 бит
______ К = 16384 : 8 = 2048 бит = 256. байт
K - ?
черт, все сдвинулось
Var
r, v: real;
i: integer;
begin
v := 0;
r := 0.5; {радиус в дм, т.к. литр - это куб.дм.}
for i := 1 to 12 do
begin
v := v + 4 * Pi / 3 * sqr(r) * r;
r := r + 0.05
end;
Writeln('Суммарный объем равен ', v:0:3, ' л.')
end.
Тестовое решение:
Суммарный объем равен 26.879 л.
<em><u>Вариант для тех, кто любит и понимает множества.</u></em>
const
cs='бвгджз';
var
s:string;
i:integer;
c:char;
p,csg:set of char;
begin
Writeln('Введите текст, разделяя слова запятыми, в конце поставьте точку');
Readln(s);
p:=[];
for i:=1 to Length(cs) do Include(csg,cs[i]); { инициализация множества }
s:=LowerCase(s); { приведение к нижнему регистру }
i:=1; c:=s[1];
while c<>'.' do begin
{ обработка нечетного слова }
while not (c in [',','.']) do begin
if (c in csg) and not (c in p) then Include(p,c);
i:=i+1;
c:=s[i]
end;
{ обработка четного слова }
if c<>'.' then begin i:=i+1; c:=s[i] end;
while not(c in [',','.']) do begin
if (c in csg) and (c in p) then Exclude(p,c);
i:=i+1;
c:=s[i]
end;
if c<>'.' then begin i:=i+1; c:=s[i] end
end;
s:='';
for i:=1 to Length(cs) do if cs[i] in p then Write(cs[i])
end.
<em><u>Тестовое решение:</u></em>
Введите текст, разделяя слова запятыми, в конце поставьте точку
Это,пример,текста,созданного,для,проверки,программы.
гд
<em><u>Вариант для тех, кто с множествами не дружит:</u></em>
const
cs='бвгджз';
var
s,p:string;
i,n:integer;
c:char;
begin
Writeln('Введите текст, разделяя слова запятыми, в конце поставьте точку');
Readln(s);
p:=''; n:=Length(cs);
s:=LowerCase(s); { приведение к нижнему регистру }
i:=1; c:=s[1];
while c<>'.' do begin
{ обработка нечетного слова }
while (c<>',') and (c<>'.') do begin
if (Pos(c,cs)>0) and (Pos(c,p)=0) then p:=p+c;
i:=i+1;
c:=s[i]
end;
{ обработка четного слова }
if c<>'.' then begin i:=i+1; c:=s[i] end;
while (c<>',') and (c<>'.') do begin
if (Pos(c,cs)>0) and (Pos(c,p)=1) then p[Pos(c,p)]:='*';
i:=i+1;
c:=s[i]
end;
if c<>'.' then begin i:=i+1; c:=s[i] end
end;
for i:=1 to Length(cs) do if Pos(cs[i],p)>0 then Write(cs[i])
end.
<em><u>Тестовое решение:</u></em>
Введите текст, разделяя слова запятыми, в конце поставьте точку
Данная,фраза,предлагается,для,тестирования.
вг
Нет Readln, программа может вообще не пойти или же ты не сможешь из нее выйти
1)
const f0=1; fk=10; h=0.5;
var f:real; i:integer;
begin
f:=f0-h;
writeln('Фунты Кг');
for i:=1 to round((fk-f0)/h)+1 do
begin
f:=f+h;
writeln(f:4:1,f*0.4:7:3);
end;
end.
2)
const f0=1; fk=10; h=0.5;
var f:real;
begin
f:=f0-h;
writeln('Фунты Кг');
while f<fk do
begin
f:=f+h;
writeln(f:4:1,f*0.4:7:3);
end;
end.
3)
const f0=1; fk=10; h=0.5;
var f:real;
begin
f:=f0-h;
writeln('Фунты Кг');
repeat
f:=f+h;
writeln(f:4:1,f*0.4:7:3);
until f>=fk;
end.
Результат:
Фунты Кг
1.0 0.400
1.5 0.600
2.0 0.800
2.5 1.000
...
9.0 3.600
9.5 3.800
10.0 4.000