epicours/Algo/B2/Exercises/Repetitive tutorial.md

75 lines
1.2 KiB
Markdown

## Exercise 1.1
```python
def zorglub(n: int) -> int:
j = 1
k = 0
i = 1
while i <= n:
j = i * j
k = j + k
i = i + 1
return k
```
The function return the sum of the factorial of n
## Exercise 1.2
```
def multiplication(x: int, y: int) -> int:
result = 0
while y > 0:
m += x
y -= 1
return result
def multiplication2(x: int, y: int) -> int:
result = 0
if x < 0 and y < 0:
i = 0
x = -x
y = -y
while i < y:
result = result + x
i += 1
return result
elif y < 0:
y = -y
i = 0
while i < y:
result = result + x
i += 1
return -result
else:
i = 0
while i < y:
result = result + x
i += 1
return result
def multiplication2(x: int, y: int) -> int:
if x < 0 and y < 0:
return multiplication(-x, -y)
elif y < 0:
return -multiplication(x, -y)
elif x < 0:
return -multiplication(-x, y)
else
return multiplication(x, y)
def multiplication2(x: int, y: int) -> int:
if y < 0:
y = -y
if x < 0:
return multiplication(-x, y)
return -multiplication(x, y)
elif x < 0:
return -multiplication(-x, y)
else
return multiplication(x, y)
```
## Exercise 1.3
```
def exponentiation(x: int, n: int) -> int: