f_andreuzzi

Angolo.java

Jul 16th, 2020
263
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.08 KB | None | 0 0
  1. public static class Angolo {
  2.     public final double angolo;
  3.    
  4.     // costruttore con gradi primi e secondi
  5.     public Angolo(double gradi, double primi, double secondi) {
  6.         this.angolo = gradi + primi / (double) 60 + secondi / (double) 3600;
  7.     }
  8.    
  9.     // costruttore con gradi
  10.     public Angolo(double angolo) {
  11.         this(angolo, 0, 0);
  12.     }
  13.  
  14.     public double inRadianti() {
  15.         return Math.toRadians(angolo);
  16.     }
  17.  
  18.     public double seno() {
  19.         return Math.sin(inRadianti());
  20.     }
  21.  
  22.     public double coseno() {
  23.         return Math.cos(inRadianti());
  24.     }
  25.  
  26.     // somma due angoli
  27.     public Angolo somma(Angolo altro) {
  28.         return new Angolo(this.angolo + altro.angolo);
  29.     }
  30.  
  31.     // sottrazione di angoli
  32.     public Angolo sottrazione(Angolo altro) {
  33.         return new Angolo(this.angolo - altro.angolo);
  34.     }
  35.  
  36.     @Override
  37.     public String toString() {
  38.         return String.valueOf(angolo);
  39.     }
  40.  
  41.     @Override
  42.     public boolean equals(Object altro) {
  43.         if(altro == null) return false;
  44.         else if(!(altro instanceof Angolo)) return false;
  45.         else {
  46.             Angolo angolo = (Angolo) altro;
  47.             return this.angolo == angolo.angolo;
  48.         }
  49.     }
  50. }
Add Comment
Please, Sign In to add comment