Переведите это решение на паскаль ! N = int(input())
A = int(input())
B = int(input())
C = int(input())
def time(x, y):
return max(x * C + (N-x) * A, x * C + (x-y-1) * B, y * A)
ans = N * A
X = (N * A * A + N * A * B) // (2 * A * B + A * A - C * B)
for x in (X, X + 1):
y = (C + B) * x // (A + B)
ans = min(ans, time(x, y))
print(ans)
def add(x, y):
return x + y
Инструкция return говорит, что нужно вернуть значение. В нашем случае функция возвращает сумму x и y.
Теперь мы ее можем вызвать:
>>>
>>> add(1, 10)
11
>>> add('abc', 'def')
'abcdef'
Функция может быть любой сложности и возвращать любые объекты (списки, кортежи, и даже функции!):
>>>
>>> def newfunc(n):
... def myfunc(x):
... return x + n
... return myfunc
...
>>> new = newfunc(100) # new - это функция
>>> new(200)
300
Функция может и не заканчиваться инструкцией return, при этом функция вернет значение None:
>>>
>>> def func():
... pass
...
>>> print(func())
None
Объяснение: