Commit 83e17238 by Patryk Czarnik

geometria - obsługa koła i trójkąta

parent 7935c5e7
import math
def pole_kwadratu(a): def pole_kwadratu(a):
return a*a return a*a
def obwod_kwadratu(a): def obwod_kwadratu(a):
return 4*a return 4*a
def pole_prostokata(a, b): def pole_prostokata(a, b):
return a*b return a*b
def obwod_prostokata(a, b): def obwod_prostokata(a, b):
return 2*a + 2*b return 2*a + 2*b
def pole_kola(r):
return math.pi * r * r
def obwod_kola(r):
return 2 * math.pi * r
def poprawny_trojkat(a, b, c):
'''
Funkcja sprawdza, czy podane boki tworzą trójkąt, i zwraca True albo False
'''
return a < b + c and b < a + c and c < a + b
def pole_trojkata(a, b, c):
p = (a + b + c) / 2
return math.sqrt(p*(p-a)*(p-b)*(p-c))
def obwod_trojkata(a, b, c):
return a + b + c
if __name__ == '__main__': if __name__ == '__main__':
print('Testowe wywołania funkcji:')
print('pole kwadratu 5:', pole_kwadratu(5)) print('pole kwadratu 5:', pole_kwadratu(5))
print('pole kwadratu 7.5:', pole_kwadratu(7.5)) print('pole kwadratu 7.5:', pole_kwadratu(7.5))
print('pole prostokąta 3×4:', pole_prostokata(3, 4)) print('pole prostokąta 3×4:', pole_prostokata(3, 4))
......
...@@ -4,11 +4,9 @@ tekst_menu = '''Wybierz rodzaj figury: ...@@ -4,11 +4,9 @@ tekst_menu = '''Wybierz rodzaj figury:
* K - kwadrat * K - kwadrat
* P - prostokąt * P - prostokąt
* O - koło * O - koło
* T - trójkąt
* Q - wyjście z programu''' * Q - wyjście z programu'''
# TODO dodaj obsługę koła do definicji funkcji
# TODO do programu oraz definicji funkcji dodaj obsługę trójkąta (w oparciu o 3 boki, jak w zadaniu domowym)
while True: while True:
print(tekst_menu) print(tekst_menu)
wybor = input('Twój wybór: ').upper() wybor = input('Twój wybór: ').upper()
...@@ -30,6 +28,16 @@ while True: ...@@ -30,6 +28,16 @@ while True:
pole = pole_kola(r) pole = pole_kola(r)
obw = obwod_kola(r) obw = obwod_kola(r)
print(f'Koło o promieniu {r} ma pole {pole} oraz obwód {obw}') print(f'Koło o promieniu {r} ma pole {pole} oraz obwód {obw}')
elif wybor == 'T':
a = float(input('Podaj bok a: '))
b = float(input('Podaj bok b: '))
c = float(input('Podaj bok c: '))
if poprawny_trojkat(a, b, c):
pole = pole_trojkata(a, b, c)
obw = obwod_trojkata(a, b, c)
print(f'Tójkąt o bokach {a} {b} {c} ma pole {pole} oraz obwód {obw}')
else:
print(f'Niew da się zbudować trójkąta z boków {a} {b} {c}')
else: else:
print('Niepoprawny wybór') print('Niepoprawny wybór')
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment