Программы на pascal
1)
var
x, y: real;
begin
writeln('Введите х');
readln(x); //Вводим х
y:= sin(sqr(x));
writeln('y = ', y : 0 : 5); {Печатаем значение у с округлением до 5 знаков после запятой}
end.
2)
var
x, y: real;
begin
writeln('Введите х');
readln(x); //Вводим х
if x >= 0 then y:= cos(x) //Если х >= 0, то у = cosx, иначе у = 1 - 2sinx
else y:= 1 - 2 * sin(x);
writeln('y = ', y : 0 : 5); {Печатаем значение у с округлением до 5 знаков после запятой}
end.
Если все правильно, отметь решение как лучшее)
program zadacha;
var
s,temp,max,min:string;
i,mxp,mnp:integer;
begin
writeln('Введите строку...');
readln(s);
s:=s+' ';
temp:='';
max:='';
min:=s;
for i:=1 to length(s) do
begin
if s[i]<>' ' then
temp:=temp+s[i];
if (s[i]=' ') and (temp<>'') then
begin
if Length(temp)<Length(min) then
begin
min:=temp;
mnp:=i-Length(temp)
end;
if Length(temp)>Length(max) then
begin
max:=temp;
mxp:=i-Length(temp)
end;
temp:='';
end;
end;
if max<>'' then
begin
Writeln('Самое длинное: ',max,' Оно начинается с: ',mxp);
Writeln('Самое короткое: ',min,' Оно начинается с: ',mnp)
end
else
WriteLn('В данной строке нет слов!')
end.
Просто берешь и поэтапно крестиком отмечаешь пересечение, которое невозможно. Ну вот, к примеру, если в первом туре лейтенант выиграл у летчика, майор у танкиста, а сержант у минометчика, то ты ставишь себе метку в таблице на пересечении, что лейтенант не может быть летчиком, танкистом или минометчиком. Также и с остальными.
Капитан - не танкист и не минометчик. Ефрейтор - не минометчик. Майор, вдобавок к тому, что он не летчик, не танкист и не минометчик еще и не связист (т.к. в 4 туре выиграл у последнего). Поскольку хуже всех выступил сапер, то майор и лейтенант не могут быть им, ведь они победители. Следовательно майор - артиллерист. Теперь стало ясно, что остальные не могут быть артиллеристами. Идем дальше. Поскольку еще с самого начала мы знаем, что лейтенант не может быть минометчиком, летчиком и танкистом, а теперь еще и артиллеристом (т.к. майор - артиллерист) и сапером, то остается только связист. Значит, лейтенант - связист. Из этого следует, что сержант - сапер. Теперь расставим остальные пересечения и получим:
Майор - артиллерист
Лейтенант - связист
Сержант - сапер
Старшина - минометчик
Капитан - летчик
Ефрейтор - танкист