Вопрос задан 03.05.2018 в 09:18. Предмет Информатика. Спрашивает Королькова Виктория.

Есть код на паскале, который считает выражение и запрещает ввод букв. Нужно сделать проверку

знаменателя на 0 обоих выражений, и вывести текст в случае нуля PascalABC program aip; var fltA,fltB,fltB2:real; code:integer; function ip(A:real):real; var A1:string; begin write('Введите значение А= '); //-------- repeat readln(A1); val(A1,A,code); if (code<>0) then writeln('no'); until (A>0); //------- ip:=A; end; begin fltA:=ip(fltA); fltB:= ((1-2*sin(fltA)*sin(fltA))/(1+sin(2*fltA))); fltB2:= ((1-tan(fltA))/(1+tan(fltA))); writeln('Первая формула ',fltB:5:5); writeln('Вторая формула ',fltB2:5:5); end.
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Симоненко Діма.

PascalABC

program aip;
var 
fltA,fltB,fltB2:real;
code:integer;
function ip(A:real):real;
var A1:string;
begin
write('Введите значение А= ');


//--------
repeat 
readln(A1);
val(A1,A,code);
if (code<>0) then writeln('no');
until (A>0);
//-------
ip:=A;
end; 
begin 
fltA:=ip(fltA);
if abs(1+sin(2*fltA)) < 0.000001 then begin
   writeln('Delenie na nol v pervoy formule');
end else begin
   fltB:= ((1-2*sin(fltA)*sin(fltA))/(1+sin(2*fltA)));
   writeln('Первая формула ',fltB:5:5);
end;
if abs(1+tan(fltA)) < 0.000001 then begin
   writeln('Delenie na nol vo vtoroy formulte');
end else begin
   fltB2:= ((1-tan(fltA))/(1+tan(fltA)));
   writeln('Вторая формула ',fltB2:5:5); 
end;
end. 

0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос