Advertisement
Guest User

Untitled

a guest
Jun 27th, 2017
51
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.27 KB | None | 0 0
  1. package opiskelijaesittely;
  2. import java.util.Scanner;
  3.  
  4. public class OpiskelijaEsittely {
  5.  
  6.     private static Scanner lukija = new Scanner(System.in);
  7.     private static Opiskelija[] annaOpiskelijat(int maara) {
  8.         String etunimi;
  9.         String sukunimi;
  10.  
  11.         Opiskelija[] opiskelijat = new Opiskelija[maara];
  12.         for (int i = 0; i < opiskelijat.length; i++) {
  13.             System.out.println("Anna " + (i+1) + ". opiskelijan etunimi");
  14.             etunimi = lukija.nextLine();
  15.             System.out.println("Anna " + (i+1) + ". opiskelijan sukunimi");
  16.             sukunimi = lukija.nextLine();
  17.             opiskelijat[i] = new Opiskelija(etunimi, sukunimi);
  18.         }
  19.         return opiskelijat;
  20.     }
  21.  
  22.     public static void jarjesta(Opiskelija[] opiskelijat) {
  23.         Opiskelija apu;
  24.         for (int i = 0; i < opiskelijat.length; i++) {
  25.             for (int j = (i+1); j < opiskelijat.length; j++) {
  26.                 if (opiskelijat[i].compareTo(opiskelijat[j]) == 1) {
  27.                     apu = opiskelijat[i];
  28.                     opiskelijat[i] = opiskelijat[j];
  29.                     opiskelijat[j] = apu;
  30.                 }
  31.             }
  32.         }
  33.     }
  34.  
  35.     public static void tulostaTiedot(Opiskelija[] oppilaat) {
  36.     for (int i = 0; i < oppilaat.length; i++) {
  37.             System.out.println(oppilaat[i]);
  38.         }
  39.     }
  40.     public static void main(String[] args) {
  41.         String mita;
  42.         int luku;
  43.        
  44.         System.out.println("jepa");
  45.         mita = lukija.nextLine();
  46.  
  47.         System.out.println("Montas opiskelijaa");
  48.         luku = lukija.nextInt();
  49.         lukija.nextLine();
  50.  
  51.         Opiskelija[] oppilaat = annaOpiskelijat(luku);
  52.         jarjesta(oppilaat);
  53.         tulostaTiedot(oppilaat);
  54.  
  55.     }
  56.  
  57. }
  58.  
  59.  
  60.  
  61. package opiskelijaesittely;
  62.  
  63. public class Opiskelija {
  64.  
  65.   private String etunimi;
  66.   private String sukunimi;
  67.   private int koepisteet;       // saa olla vain 0-36
  68.   private int harjoituspisteet; // saa olla vain 0-24
  69.  
  70.   public Opiskelija(String etunimi, String sukunimi) {
  71.     this.etunimi = etunimi;
  72.     this.sukunimi = sukunimi;
  73.     this.koepisteet = 0;
  74.     this.harjoituspisteet = 0;
  75.   }
  76.   //---------------------------
  77.   public String getEtunimi() {
  78.     return this.etunimi;
  79.   }
  80.   public String getSukunimi() {
  81.     return this.sukunimi;
  82.   }
  83.   public int getPistesaalis() {
  84.     return this.koepisteet + this.harjoituspisteet;
  85.   }
  86.   public boolean setKoepisteet(int i) {
  87.       if (i >= 0 && i <= 36) {
  88.           this.koepisteet = i;
  89.           return true;
  90.       }
  91.       else
  92.           return false;
  93.   }
  94.   public boolean setHarjoituspisteet(int i) {
  95.       if (i >= 0 && i <= 24) {
  96.           this.harjoituspisteet = i;
  97.           return true;
  98.       }
  99.       else
  100.           return false;
  101.   }
  102.   public int arvosana() {
  103.       if (getPistesaalis() < 30) {
  104.           return 0;
  105.       }
  106.       else if (getPistesaalis() < 35) {
  107.           return 1;
  108.       }
  109.       else if (getPistesaalis() < 40) {
  110.           return 2;
  111.       }
  112.       else if (getPistesaalis() < 45) {
  113.           return 3;
  114.       }
  115.       else if (getPistesaalis() < 50) {
  116.           return 4;
  117.       }
  118.       else {
  119.           return 5;
  120.       }
  121.   }
  122.  
  123.   public int compareTo(Opiskelija verrattava) {
  124.       if (this.sukunimi.compareTo(verrattava.getSukunimi()) < 0)
  125.           return -1;
  126.       else if (this.sukunimi.compareTo(verrattava.getSukunimi()) > 0)
  127.           return 1;
  128.       else {
  129.           if (this.etunimi.compareTo(verrattava.getEtunimi()) < 0)
  130.               return -1;
  131.           else if (this.etunimi.compareTo(verrattava.getEtunimi()) > 0)
  132.               return 1;
  133.           else
  134.               return 0;
  135.       }
  136.   }
  137.  
  138.   public String toString() {
  139.       String kentta;
  140.       String nimi = getEtunimi() + ", " + getSukunimi();
  141.       char[] kenttaTaulu = new char[25];
  142.       for (int i = 0; i < kenttaTaulu.length; ++i) {
  143.           kenttaTaulu[i] = ' ';
  144.       }
  145.       for (int i = 0; i<nimi.length() && i<kenttaTaulu.length; i++){
  146.           kenttaTaulu[i] = nimi.charAt(i);
  147.       }
  148.       kentta = new String(kenttaTaulu);
  149.       String pisteet = Integer.toString(getPistesaalis());
  150.       if (pisteet.length() < 2) {
  151.           pisteet = " " + pisteet;
  152.       }
  153.  
  154.       return kentta + pisteet + " " + arvosana();
  155.  
  156.   }
  157.  
  158. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement