Commit 82b01991 by Patryk Czarnik

Student - oceny w liście

parent ad90c6c3
...@@ -25,5 +25,6 @@ public class Przyklad { ...@@ -25,5 +25,6 @@ public class Przyklad {
student.dodajOcene(2); student.dodajOcene(2);
student.dodajOcene(5); student.dodajOcene(5);
System.out.println(student.getImie() + " ma średnią ocen " + student.getSredniaOcen()); System.out.println(student.getImie() + " ma średnią ocen " + student.getSredniaOcen());
} }
} }
package p06_enkapsulacja; package p06_enkapsulacja;
import java.time.LocalDate; import java.time.LocalDate;
import java.util.Arrays; import java.util.ArrayList;
import java.util.List;
public class Student extends Osoba { public class Student extends Osoba {
private String kierunek; private String kierunek;
private int rok; private int rok;
private int[] oceny = new int[5]; private List<Integer> oceny = new ArrayList<>();
private int ileOcen = 0;
public void dodajOcene(int ocena) { public void dodajOcene(int ocena) {
if(ileOcen == oceny.length) { oceny.add(ocena);
oceny = Arrays.copyOf(oceny, ileOcen*2);
}
oceny[ileOcen++] = ocena;
} }
public double getSredniaOcen() { public double getSredniaOcen() {
if(ileOcen == 0) { if(oceny.isEmpty()) {
return 0; return 0;
} }
int suma = 0; int suma = 0;
for(int i = 0; i < ileOcen; i++) { for(int ocena : oceny) {
suma += oceny[i]; suma += ocena;
} }
return (double)suma / ileOcen; return (double)suma / oceny.size();
} }
public Student(String imie, String nazwisko, LocalDate dataUrodzenia, String kierunek, int rok) { public Student(String imie, String nazwisko, LocalDate dataUrodzenia, String kierunek, int rok) {
...@@ -62,7 +59,7 @@ public class Student extends Osoba { ...@@ -62,7 +59,7 @@ public class Student extends Osoba {
} }
public int getLiczbaOcen() { public int getLiczbaOcen() {
return ileOcen; return oceny.size();
} }
@Override @Override
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment