Zmodyfikuj podany kod tak, aby wypisywał, ile średnio ocen z pewnego przedmiotu poprawiali uczniowie, imię ucznia, który poprawiał najwięcej ocen, oraz liczbę poprawianych przez niego ocen.
Specyfikacja problemu:
Dane:
imiona – tablica łańcuchów znaków
wartosci – tablica liczb naturalnych
Wynik:
Program wyświetla, ile średnio ocen z pewnego przedmiotu poprawiali uczniowie, imię ucznia, który poprawia najwięcej ocen oraz to, ile ich poprawia. Dane oddzielone są od siebie znakiem spacji.
Przykładowe wyjście:
Linia 1. 1 kropka 93 Mateusz 7.
R1DRpO7YNlxJV
Przykładowe rozwiązanie zadania:
Linia 1. class Uczen otwórz nawias klamrowy.
Linia 2. public String imie średnik.
Linia 3. public int poprawianeOceny znak równości 0 średnik.
Linia 4. zamknij nawias klamrowy.
Linia 6. public class Main otwórz nawias klamrowy.
Linia 7. public static Uczen otwórz nawias kwadratowy zamknij nawias kwadratowy init otwórz nawias okrągły zamknij nawias okrągły otwórz nawias klamrowy.
Linia 8. int otwórz nawias kwadratowy zamknij nawias kwadratowy wartosci znak równości otwórz nawias klamrowy.
Linia 9. 0 przecinek 1 przecinek 2 przecinek 5 przecinek 6 przecinek 1 przecinek 7 przecinek 0 przecinek 1 przecinek 0 przecinek 0 przecinek 3 przecinek 1 przecinek 2 przecinek 0.
Linia 10. zamknij nawias klamrowy średnik.
Linia 11. String otwórz nawias kwadratowy zamknij nawias kwadratowy imiona znak równości otwórz nawias klamrowy.
Linia 12. cudzysłów Zbigniew cudzysłów przecinek cudzysłów Marta cudzysłów przecinek cudzysłów Katarzyna cudzysłów przecinek cudzysłów Wojciech cudzysłów przecinek cudzysłów Piotr cudzysłów przecinek cudzysłów Kacper cudzysłów przecinek cudzysłów Mateusz cudzysłów przecinek cudzysłów Julia cudzysłów przecinek cudzysłów Adam cudzysłów przecinek cudzysłów Agata cudzysłów przecinek cudzysłów Dominika cudzysłów przecinek cudzysłów Lucyna cudzysłów przecinek cudzysłów Magda cudzysłów przecinek cudzysłów Ewa cudzysłów przecinek cudzysłów Maciek cudzysłów.
Linia 13. zamknij nawias klamrowy średnik.
Linia 14. Uczen otwórz nawias kwadratowy zamknij nawias kwadratowy uczniowie znak równości new Uczen otwórz nawias kwadratowy 15 zamknij nawias kwadratowy średnik.
Linia 15. int z znak równości 0 średnik.
Linia 16. for otwórz nawias okrągły int i znak równości 0 średnik i otwórz nawias ostrokątny 15 średnik i plus plus zamknij nawias okrągły otwórz nawias klamrowy.
Linia 17. uczniowie otwórz nawias kwadratowy i zamknij nawias kwadratowy znak równości new Uczen otwórz nawias okrągły zamknij nawias okrągły średnik.
Linia 18. uczniowie otwórz nawias kwadratowy i zamknij nawias kwadratowy kropka poprawianeOceny znak równości wartosci otwórz nawias kwadratowy z zamknij nawias kwadratowy średnik.
Linia 19. uczniowie otwórz nawias kwadratowy i zamknij nawias kwadratowy kropka imie znak równości imiona otwórz nawias kwadratowy z plus plus zamknij nawias kwadratowy średnik.
Linia 20. zamknij nawias klamrowy.
Linia 21. return uczniowie średnik.
Linia 22. zamknij nawias klamrowy.
Linia 23. public static void main otwórz nawias okrągły String otwórz nawias kwadratowy zamknij nawias kwadratowy args zamknij nawias okrągły otwórz nawias klamrowy.
Linia 24. Uczen otwórz nawias kwadratowy zamknij nawias kwadratowy uczniowie znak równości init otwórz nawias okrągły zamknij nawias okrągły średnik.
Linia 26. int suma znak równości 0 średnik.
Linia 27. int maxIndex znak równości 0 średnik.
Linia 28. for otwórz nawias okrągły int i znak równości 0 średnik i otwórz nawias ostrokątny uczniowie kropka length średnik i plus plus zamknij nawias okrągły otwórz nawias klamrowy.
Linia 29. suma plus znak równości uczniowie otwórz nawias kwadratowy i zamknij nawias kwadratowy kropka poprawianeOceny średnik.
Linia 30. if otwórz nawias okrągły uczniowie otwórz nawias kwadratowy i zamknij nawias kwadratowy kropka poprawianeOceny zamknij nawias ostrokątny uczniowie otwórz nawias kwadratowy maxIndex zamknij nawias kwadratowy kropka poprawianeOceny zamknij nawias okrągły.
Linia 31. maxIndex znak równości i średnik.
Linia 32. zamknij nawias klamrowy.
Linia 34. double srednia znak równości otwórz nawias okrągły double zamknij nawias okrągły suma prawy ukośnik uczniowie kropka length średnik.
Linia 36. System kropka out kropka printf otwórz nawias okrągły cudzysłów procent kropka 2f cudzysłów przecinek srednia zamknij nawias okrągły średnik.
Linia 37. System kropka out kropka print otwórz nawias okrągły uczniowie otwórz nawias kwadratowy maxIndex zamknij nawias kwadratowy kropka imie plus cudzysłów cudzysłów zamknij nawias okrągły średnik.
Linia 38. System kropka out kropka println otwórz nawias okrągły uczniowie otwórz nawias kwadratowy maxIndex zamknij nawias kwadratowy kropka poprawianeOceny zamknij nawias okrągły średnik.
Linia 39. zamknij nawias klamrowy.
Linia 40. zamknij nawias klamrowy.
21
Ćwiczenie 2
Tablica szkola[] przechowuje w tablicach nazwiska, srednieOcen oraz wiek informacje na temat nazwisk uczniów, średniej ich ocen oraz ich wieku. Napisz program sortujący tablicę szkola[] nierosnąco według pola wiek. Zastosuj algorytm sortowania przez wstawianie.
Specyfikacja problemu:
Dane:
liczbaUczniow – liczba naturalna
nazwiska – tablica łańcuchów znaków
srednieOcen – tablica liczb rzeczywistych
wiek – tablica liczb naturalnych
Wynik:
Program wyświetla tablicę szkola[] posortowaną nierosnąco według pola wiek.
Przykładowe wyjście:
Linia 1. Banach 3 kropka 1 18.
Linia 2. Rychwał 2 kropka 2 17.
Linia 3. Pokojski 4 kropka 2 15.
Linia 4. Rusak 2 kropka 3 15.
Linia 5. Kraus 4 kropka 7 15.
Linia 6. Kowalski 3 kropka 6 14.
Linia 7. Radziwiłł 2 kropka 8 14.
Linia 8. Nowak 5 kropka 6 13.
Linia 9. Ryba 4 kropka 4 10.
Linia 10. Bąk 6 kropka 0 10.
Rx048z8T7yjHI
Przykładowe rozwiązanie zadania:
Linia 1. class Uczen otwórz nawias klamrowy.
Linia 2. public String nazwisko średnik.
Linia 3. public double sredniaOcen średnik.
Linia 4. public int wiek średnik.
Linia 5. zamknij nawias klamrowy.
Linia 8. public class Main otwórz nawias klamrowy.
Linia 9. public static void main otwórz nawias okrągły String otwórz nawias kwadratowy zamknij nawias kwadratowy args zamknij nawias okrągły otwórz nawias klamrowy.
Linia 10. int liczbaUczniow znak równości 10 średnik.
Linia 11. Uczen otwórz nawias kwadratowy zamknij nawias kwadratowy szkola znak równości new Uczen otwórz nawias kwadratowy liczbaUczniow zamknij nawias kwadratowy średnik.
Linia 12. String otwórz nawias kwadratowy zamknij nawias kwadratowy nazwiska znak równości otwórz nawias klamrowy cudzysłów Kowalski cudzysłów przecinek cudzysłów Pokojski cudzysłów przecinek cudzysłów Nowak cudzysłów przecinek cudzysłów Rusak cudzysłów przecinek cudzysłów Radziwiłł cudzysłów przecinek cudzysłów Ryba cudzysłów przecinek cudzysłów Banach cudzysłów przecinek cudzysłów Rychwał cudzysłów przecinek cudzysłów Bąk cudzysłów przecinek cudzysłów Kraus cudzysłów zamknij nawias klamrowy średnik.
Linia 13. double otwórz nawias kwadratowy zamknij nawias kwadratowy srednieOcen znak równości otwórz nawias klamrowy 3 kropka 6 przecinek 4 kropka 2 przecinek 5 kropka 6 przecinek 2 kropka 3 przecinek 2 kropka 8 przecinek 4 kropka 4 przecinek 3 kropka 1 przecinek 2 kropka 2 przecinek 6 kropka 0 przecinek 4 kropka 7 zamknij nawias klamrowy średnik.
Linia 14. int otwórz nawias kwadratowy zamknij nawias kwadratowy wiek znak równości otwórz nawias klamrowy 14 przecinek 15 przecinek 13 przecinek 15 przecinek 14 przecinek 10 przecinek 18 przecinek 17 przecinek 10 przecinek 15 zamknij nawias klamrowy średnik.
Linia 16. for otwórz nawias okrągły int i znak równości 0 średnik i otwórz nawias ostrokątny liczbaUczniow średnik i plus plus zamknij nawias okrągły otwórz nawias klamrowy.
Linia 17. szkola otwórz nawias kwadratowy i zamknij nawias kwadratowy znak równości new Uczen otwórz nawias okrągły zamknij nawias okrągły średnik.
Linia 18. szkola otwórz nawias kwadratowy i zamknij nawias kwadratowy kropka nazwisko znak równości nazwiska otwórz nawias kwadratowy i zamknij nawias kwadratowy średnik.
Linia 19. szkola otwórz nawias kwadratowy i zamknij nawias kwadratowy kropka sredniaOcen znak równości srednieOcen otwórz nawias kwadratowy i zamknij nawias kwadratowy średnik.
Linia 20. szkola otwórz nawias kwadratowy i zamknij nawias kwadratowy kropka wiek znak równości wiek otwórz nawias kwadratowy i zamknij nawias kwadratowy średnik.
Linia 21. zamknij nawias klamrowy.
Linia 23. int j średnik.
Linia 25. for otwórz nawias okrągły int i znak równości 0 średnik i otwórz nawias ostrokątny liczbaUczniow średnik i plus plus zamknij nawias okrągły otwórz nawias klamrowy.
Linia 26. Uczen a znak równości szkola otwórz nawias kwadratowy i zamknij nawias kwadratowy średnik.
Linia 27. j znak równości i minus 1 średnik.
Linia 29. while otwórz nawias okrągły j zamknij nawias ostrokątny znak równości 0 ampersant ampersant szkola otwórz nawias kwadratowy j zamknij nawias kwadratowy kropka wiek otwórz nawias ostrokątny a kropka wiek zamknij nawias okrągły otwórz nawias klamrowy.
Linia 30. szkola otwórz nawias kwadratowy j plus 1 zamknij nawias kwadratowy znak równości szkola otwórz nawias kwadratowy j zamknij nawias kwadratowy średnik.
Linia 31. minus minus j średnik.
Linia 32. zamknij nawias klamrowy.
Linia 33. szkola otwórz nawias kwadratowy j plus 1 zamknij nawias kwadratowy znak równości a średnik.
Linia 34. zamknij nawias klamrowy.
Linia 36. for otwórz nawias okrągły int i znak równości 0 średnik i otwórz nawias ostrokątny liczbaUczniow średnik i plus plus zamknij nawias okrągły otwórz nawias klamrowy.
Linia 37. System kropka out kropka println otwórz nawias okrągły szkola otwórz nawias kwadratowy i zamknij nawias kwadratowy kropka nazwisko plus cudzysłów cudzysłów plus szkola otwórz nawias kwadratowy i zamknij nawias kwadratowy kropka sredniaOcen plus cudzysłów cudzysłów plus szkola otwórz nawias kwadratowy i zamknij nawias kwadratowy kropka wiek zamknij nawias okrągły średnik.
Linia 38. zamknij nawias klamrowy.
Linia 39. zamknij nawias klamrowy.
Linia 40. zamknij nawias klamrowy.
31
Ćwiczenie 3
Zmodyfikuj podany kod tak, aby obliczał i wyświetlał długości przeciwprostokątnych trójkątów prostokątnych.
Tablica boki zawiera długości boków przyprostokątnych a kolejnych trójkątów.
Długość boków przyprostokątnych b obliczana jest w taki sposób, że wyznaczamy resztę z dzielenia indeksu badanego trójkąta (pamiętaj, że indeksujemy od 0) przez liczbę 5. Wynik jest mnożony przez liczbę 3, a następnie dodaje się do niego długość boku a danego trójkąta. W programie zapisaliśmy już odpowiednią instrukcję (linia 23).
Długość przeciwprostokątnej obliczysz, korzystając ze wzoru .
Specyfikacja problemu:
Dane:
boki – tablica liczb naturalnych
Wynik:
Program wyświetla przeciwprostokątne utworzonych trójkątów prostokątnych.