3816 - Intersecție Grafic Funcții: Difference between revisions

From Bitnami MediaWiki
No edit summary
 
(2 intermediate revisions by 2 users not shown)
Line 4: Line 4:
Programul citește de la tastatură numerele reale '''a, b, c, d'''.
Programul citește de la tastatură numerele reale '''a, b, c, d'''.
== Date de ieșire ==
== Date de ieșire ==
Programul va afișa pe ecran:
Dacă datele sunt introduse corect, pe ecran se va afișa: "Datele de intrare corespund restricțiilor impuse." și programul va afișa pe ecran:
*daca '''G<sub>ƒ</sub> = G<sub>g</sub>''', atunci se afiseaza mesajul Grafice echivalente.
*daca '''G<sub>ƒ</sub> = G<sub>g</sub>''', atunci se afiseaza mesajul Grafice echivalente.
*daca '''G<sub>ƒ</sub> || G<sub>g</sub>''', atunci se afiseaza mesajul Grafice paralele.
*daca '''G<sub>ƒ</sub> || G<sub>g</sub>''', atunci se afiseaza mesajul Grafice paralele.
*coordonatele punctului de intersectie ale celor doua grafice, cu 2 zecimale exacte.
*coordonatele punctului de intersectie ale celor doua grafice, cu 2 zecimale exacte.
În caz contrar, se va afișa pe ecran: "Datele de intrare nu corespund restricțiilor impuse."


== Restricții de precizări ==
== Restricții de precizări ==
Line 38: Line 39:
: Datele introduse corespund restricțiilor impuse.
: Datele introduse corespund restricțiilor impuse.
: Grafice echivalente
: Grafice echivalente
== Rezolvare ver. 1 ==
== Rezolvare ==
=== Rezolvare ver. 1 ===
<syntaxhighlight lang="python" line="1" start="1">
<syntaxhighlight lang="python" line="1" start="1">
def validare(a, b, c, d):
def validare(a, b, c, d):
     return grafic.isdigit() and -1000 <= int(a), int(b), int(c), int(d) <= 1000
     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):
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: ")
    b = input("Introduceti valoarea pentru b: ")
    c = input("Introduceti valoarea pentru c: ")
    d = input("Introduceti valoarea pentru d: ")


    a = float(input("Introduceti valoarea pentru a: "))
try:
    b = float(input("Introduceti valoarea pentru b: "))
     if validare(a, b, c, d):
    c = float(input("Introduceti valoarea pentru c: "))
        a, b, c, d = float(a), float(b), float(c), float(d)
     d = float(input("Introduceti valoarea pentru d: "))
 
 
if validare(a, b, c, d):
    a, b, c, d = int(a), int(b), int(c), int(d)
     print("Datele introduse corespund restricțiilor impuse.")
     print("Datele introduse corespund restricțiilor impuse.")
     grafic(a, b, c, d)
     grafic(a, b, c, d)
else:
except:
     print("Datele introduse nu corespund restricțiilor impuse.")
     print("Datele introduse nu corespund restricțiilor impuse.")


</syntaxhighlight>
</syntaxhighlight>

Latest revision as of 18:19, 22 April 2023

Cerință[edit | edit source]

Se dau functiile ƒ,g:R->R,ƒ(x)=a*x+b,g(x)=c*x+d. Aflati Gƒ ∩ Gg .

Date de intrare[edit | edit source]

Programul citește de la tastatură numerele reale a, b, c, d.

Date de ieșire[edit | edit source]

Dacă datele sunt introduse corect, pe ecran se va afișa: "Datele de intrare corespund restricțiilor impuse." și 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.

În caz contrar, se va afișa pe ecran: "Datele de intrare nu corespund restricțiilor impuse."

Restricții de precizări[edit | edit source]

  • -1000 ⩽ a, b, c, d ⩽ 1000

Exemplul 1[edit | edit source]

Intrare
1
2
2
3
Ieșire
Datele introduse corespund restricțiilor impuse.
-1.00 1.00

Exemplul 2[edit | edit source]

Intrare
1
2
1
3
Ieșire
Datele introduse corespund restricțiilor impuse.
Grafice paralele

Exemplul 3[edit | edit source]

Intrare
1
2
1
2
Ieșire
Datele introduse corespund restricțiilor impuse.
Grafice echivalente

Rezolvare[edit | edit source]

Rezolvare ver. 1[edit | edit source]

<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})")
  1. 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>