Паскаль! Даны действительные числа х и у. Результат округлить до 2-х знаков после запятой Данные для самопроверки: Введите переменную х -25 Введите переменную у 6.5 Результат 0.11 Получить
if (right_part < 0 and left_part > 0) and (abs(right_part) == abs(left_part)):
result = 'Any x'
return result
if (right_part > 0 and left_part > 0) and (abs(right_part) == abs(left_part)):
result = 'X in (-inf, -{0}) V ({0}, +inf)'.format(abs(abs_x))
return result
if (right_part < 0 and left_part < 0) and (abs(right_part) == abs(left_part)):
result = 'X in (-{0}, {0})'.format(abs(abs_x))
return result
return 'No such x'
def solve(A, B):
""" A |X| + B > 0 """
try:
abs_x = (-B / A)
except ZeroDivisionError as error:
print('No such x')
raise SystemExit(error)
else:
return parse(abs_x, A, B)
def main():
A,B = map(int, input().split())
x = solve(A,B)
print(x)
if __name__ == '__main__':
main()
Объяснение:
Язык - Python 3.7.2. Программа протестирована на предложенных входных/выходных данных, вроде всё работает. Ниже приложен скриншот, по которому можно восстановить все табуляции, так как сайт напрочь ломает Python-код.
PascalABC.NET 3.3.5, сборка 1659 от 09.04.2018 Внимание! Если программа не работает, обновите версию!
procedure FillStack(st:Stack<integer>; sq:sequence of integer); begin foreach var t in sq do st.Push(t); end;
procedure PrintStack(st:Stack<integer>; s:string); begin Write(s); st.Println end;
procedure ToStack(sta,stb:Stack<integer>; Even:boolean); begin if Even then while sta.Count>0 do begin var v:=sta.Pop; if v.IsEven then begin stb.Push(v); exit end end else while sta.Count>0 do begin var v:=sta.Pop; if v.IsOdd then begin stb.Push(v); exit end end end;
begin var st1:=new Stack<integer>; FillStack(st1,Seq(2,13,20,18,1)); PrintStack(st1,'Стек1: '); var st2:=new Stack<integer>; FillStack(st2,Seq(9,11,10,8,4)); PrintStack(st2,'Стек2: '); var st3:=new Stack<integer>; while st1.Count+st2.Count>0 do begin ToStack(st1,st3,True); ToStack(st2,st3,False); end; PrintStack(st3,'Стек3: ') end.
def parse(abs_x, A, B):
left_part = A*abs(abs_x)
right_part = -B
print(left_part, right_part)
if (right_part < 0 and left_part > 0) and (abs(right_part) == abs(left_part)):
result = 'Any x'
return result
if (right_part > 0 and left_part > 0) and (abs(right_part) == abs(left_part)):
result = 'X in (-inf, -{0}) V ({0}, +inf)'.format(abs(abs_x))
return result
if (right_part < 0 and left_part < 0) and (abs(right_part) == abs(left_part)):
result = 'X in (-{0}, {0})'.format(abs(abs_x))
return result
return 'No such x'
def solve(A, B):
""" A |X| + B > 0 """
try:
abs_x = (-B / A)
except ZeroDivisionError as error:
print('No such x')
raise SystemExit(error)
else:
return parse(abs_x, A, B)
def main():
A,B = map(int, input().split())
x = solve(A,B)
print(x)
if __name__ == '__main__':
main()
Объяснение:
Язык - Python 3.7.2. Программа протестирована на предложенных входных/выходных данных, вроде всё работает. Ниже приложен скриншот, по которому можно восстановить все табуляции, так как сайт напрочь ломает Python-код.