№1
var
a,b,v:real;
begin
readln(a,b);
v:=4/3*Pi*sqr(b/2)*(b/2);
a:=sqr(a)*a;
v:=a-v;
writeln(v:7:4);
end.
№2
var
s:string[6];
begin
readln(s);
if ((strtoint(s[1])+strtoint(s[2])+strtoint(s[3]))=
(strtoint(s[4])+strtoint(s[5])+strtoint(s[6]))) then
writeln('Является') else
writeln('Не является');
end.
№3
var
a,b:integer;
begin
readln(a,b);
if (a<90) and (b<90) and (180-a-b<90) then
writeln('Остроугольный') else
if (a=90) or (b=90) or (180-a-b=90) then
writeln('Прямоугольный') else
writeln('Тупоугольный');
end.
Надо записать расстояние на пересечении слов.
Вроде вот так
<em>Как говорится, это вам не С++ - тут все очень быстро и коротко ))))
// PascalABC.NET 3.3, сборка 1531 от 30.08.2017</em>
<em>// Внимание! Если программа не работает, обновите версию!</em>
begin
var L:=new List<(string,real)>;
// это не решение задачи, это ввод данных
Writeln('Введите в каждой строке фамилию, пробел, время');
var i:=1;
repeat
var s:=ReadlnString(i+': ');
if s[1]='*' then break;
var w:=s.ToWords;
L.Add(Rec(w[0],real.Parse(w[1])));
i+=1;
until false;
// а теперь само решение
Writeln(L.MinBy(x->x[1]))
end.
<u>Пример</u>
Введите в каждой строке фамилию, пробел, время
1: Иванов 10.3
2: Петров 9.9
3: Уточкин 10.1
4: *
(Петров,9.9)
819 = 1100110011, -278 = -100010110