3816 - Intersecție Grafic Funcții: Difference between revisions
Vardai Erwin (talk | contribs) |
mNo edit summary |
||
Line 47: | Line 47: | ||
def grafic(a, b, c, d): | def grafic(a, b, c, d): | ||
if a == c and b == d: | if a == c and b == d: #verificăm dacă cele două ecuații sunt egale | ||
print("Grafice echivalente") | print("Grafice echivalente") | ||
elif a == c: | elif a == c: #verificăm dacă cele două ecuații sunt paralele | ||
print("Grafice paralele") | print("Grafice paralele") | ||
else: | else: #se execută doar dacă cele 2 ecuații nu sunt egale | ||
x = (d - b) / (a - c) | x = (d - b) / (a - c) #calculează cordonatele intersecției lui x | ||
y = a * x + b | y = a * x + b #calculează cordonata y | ||
print(f"Coordonatele punctului de intersectie sunt ({x:.2f}, {y:.2f})") | print(f"Coordonatele punctului de intersectie sunt ({x:.2f}, {y:.2f})") | ||
#citim de la tastatură valorile a, b, c și d | |||
if __name__ == '__main__': | if __name__ == '__main__': | ||
a = input("Introduceti valoarea pentru a: ") | a = input("Introduceti valoarea pentru a: ") |
Revision as of 12:28, 11 April 2023
Cerință
Se dau functiile ƒ,g:R->R,ƒ(x)=a*x+b,g(x)=c*x+d. Aflati Gƒ ∩ Gg .
Date de intrare
Programul citește de la tastatură numerele reale a, b, c, d.
Date de ieșire
Programul va afișa pe ecran:
- daca Gƒ = Gg, atunci se afiseaza mesajul Grafice echivalente.
- daca Gƒ || Gg, atunci se afiseaza mesajul Grafice paralele.
- coordonatele punctului de intersectie ale celor doua grafice, cu 2 zecimale exacte.
Restricții de precizări
- -1000 ⩽ a, b, c, d ⩽ 1000
Exemplul 1
- Intrare
- 1
- 2
- 2
- 3
- Ieșire
- Datele introduse corespund restricțiilor impuse.
- -1.00 1.00
Exemplul 2
- Intrare
- 1
- 2
- 1
- 3
- Ieșire
- Datele introduse corespund restricțiilor impuse.
- Grafice paralele
Exemplul 3
- Intrare
- 1
- 2
- 1
- 2
- Ieșire
- Datele introduse corespund restricțiilor impuse.
- Grafice echivalente
Rezolvare
Rezolvare ver. 1
<syntaxhighlight lang="python" line="1" start="1"> def validare(a, b, c, d):
return -1000 <= float(a), float(b), float(c), float( d) <= 1000 and a.isdigit() and b.isdigit() and c.isdigit() and d.isdigit()
def grafic(a, b, c, d):
if a == c and b == d: #verificăm dacă cele două ecuații sunt egale print("Grafice echivalente")
elif a == c: #verificăm dacă cele două ecuații sunt paralele print("Grafice paralele")
else: #se execută doar dacă cele 2 ecuații nu sunt egale x = (d - b) / (a - c) #calculează cordonatele intersecției lui x y = a * x + b #calculează cordonata y print(f"Coordonatele punctului de intersectie sunt ({x:.2f}, {y:.2f})")
- citim de la tastatură valorile a, b, c și d
if __name__ == '__main__':
a = input("Introduceti valoarea pentru a: ") b = input("Introduceti valoarea pentru b: ") c = input("Introduceti valoarea pentru c: ") d = input("Introduceti valoarea pentru d: ")
try:
if validare(a, b, c, d): a, b, c, d = float(a), float(b), float(c), float(d) print("Datele introduse corespund restricțiilor impuse.") grafic(a, b, c, d)
except:
print("Datele introduse nu corespund restricțiilor impuse.")
</syntaxhighlight>