Advertisement
informaticage

Esercizio punti liste assi

Jun 12th, 2021
839
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.99 KB | None | 0 0
  1. # Caricare una lista di punti in R^2
  2. # Trovare tutti i punti della lista che
  3. # giacciono sull'asse delle ascisse
  4. # giacciono sull'asse delle ordinate
  5. # giacciono sull'asse x = y
  6. # giacciono sull'asse x = -y
  7.  
  8. #                     # x
  9. #                     #
  10. #                     #
  11. #                     #
  12. #     # # # X # # # # # # # # X # # # # #
  13. #                     #
  14. #              x      #
  15. #                     # x
  16. #                     #
  17.  
  18. # Input:
  19. # (1,2), (3, 2), (4, 3), (0, 4), (2, 0), (0, 0)
  20.  
  21. # Output:
  22. # (0, 4), (0, 0)
  23.  
  24.  
  25. def leggi_punti(numero_punti_da_leggere):
  26.     lista_punti = []
  27.  
  28.     punti_gia_letti = 0
  29.     while (punti_gia_letti < numero_punti_da_leggere):
  30.         x = int(input("X: "))
  31.         y = int(input("Y: "))
  32.  
  33.         lista_punti.append((x, y))
  34.         punti_gia_letti = punti_gia_letti + 1
  35.  
  36.     return lista_punti
  37.  
  38.  
  39. def giaccenti_x(elenco_punti):
  40.     numero_punti_totali = len(elenco_punti)
  41.     elenco_punti_giaccenti = []
  42.     elemento_corrente = 0
  43.  
  44.     while (elemento_corrente < numero_punti_totali):
  45.         if (elenco_punti[elemento_corrente][0] == 0):
  46.             elenco_punti_giaccenti.append(elenco_punti[elemento_corrente])
  47.         elemento_corrente = elemento_corrente + 1
  48.  
  49.     return elenco_punti_giaccenti
  50.  
  51.  
  52. def giaccenti_y(elenco_punti):
  53.     numero_punti_totali = len(elenco_punti)
  54.     elenco_punti_giaccenti = []
  55.     elemento_corrente = 0
  56.  
  57.     while (elemento_corrente < numero_punti_totali):
  58.         if (elenco_punti[elemento_corrente][1] == 0):
  59.             elenco_punti_giaccenti.append(elenco_punti[elemento_corrente])
  60.         elemento_corrente = elemento_corrente + 1
  61.  
  62.     return elenco_punti_giaccenti
  63.  
  64. def giaccenti_simmetrica(elenco_punti):
  65.     numero_punti_totali = len(elenco_punti)
  66.     elenco_punti_giaccenti = []
  67.     elemento_corrente = 0
  68.  
  69.     while (elemento_corrente < numero_punti_totali):
  70.         if (elenco_punti[elemento_corrente][1] ==
  71.                 elenco_punti[elemento_corrente][0]):
  72.             elenco_punti_giaccenti.append(elenco_punti[elemento_corrente])
  73.         elemento_corrente = elemento_corrente + 1
  74.  
  75.     return elenco_punti_giaccenti
  76.  
  77.  
  78. def giaccenti_antisimmetrica(elenco_punti):
  79.     numero_punti_totali = len(elenco_punti)
  80.     elenco_punti_giaccenti = []
  81.     elemento_corrente = 0
  82.  
  83.     while (elemento_corrente < numero_punti_totali):
  84.         if (elenco_punti[elemento_corrente][1] ==
  85.                 -1 * elenco_punti[elemento_corrente][0]):
  86.             elenco_punti_giaccenti.append(elenco_punti[elemento_corrente])
  87.         elemento_corrente = elemento_corrente + 1
  88.  
  89.     return elenco_punti_giaccenti
  90.  
  91. def main():
  92.     n = int(input("Inserire numero punti: "))
  93.     punti = leggi_punti(n)
  94.     print("I punti nella ascissa sono: ", giaccenti_x(punti))
  95.     print("I punti nella ordinata sono: ", giaccenti_y(punti))
  96.     print("I punti nella retta simmetrica: ", giaccenti_simmetrica(punti))
  97.     print("I punti nella retta antisimmetrica: ", giaccenti_antisimmetrica(punti))
  98.  
  99. main()
  100.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement