Java Array, Sortierfunktionen, ...

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Java Array, Sortierfunktionen, ...

    Quellcode

    1. /**
    2. *
    3. * @author Torben Brodt
    4. * @version 1.0
    5. *
    6. * <p />Liest n ganze Zahlen ein und gibt folgendes aus
    7. * <ul>
    8. * <li> Quersumme</li>
    9. * <li> Array in richtiger Reihenfolge</li>
    10. * <li> Array in umgekehrter Reihenfolge</li>
    11. * <li> nur gerade Zahlen sortiert (+Summe)</li>
    12. * <li> nur ungerade Zahlen sortiert (+Summe)</li>
    13. * </ul>
    14. * <p />Funktioniert mit Java < 1.5
    15. */
    16. public class A1_Arrays_und_mehr {
    17. /**
    18. * @param args
    19. */
    20. public static void main(String[] args) {
    21. // TODO Auto-generated method stub
    22. int anzahl = eingabe("Wieviel Zahlen sollen abgefragt werden: ");
    23. int[] zahlen = new int[anzahl];
    24. for(int i=0; i<anzahl; i++)
    25. zahlen[i] = eingabe("Geben Sie die "+(i+1)+". Zahl ein: ");
    26. System.out.print("\nZahlen in richtiger Reihenfolge: ");
    27. ausgabe(zahlen);
    28. System.out.print("\nZahlen in umgekehrer Reihenfolge: ");
    29. ausgabe(sortArr(zahlen));
    30. System.out.print("\nQuersumme: ");
    31. System.out.print(quersumme(zahlen));
    32. System.out.print("\nSumme gerader Zahlen: ");
    33. System.out.print(quersummeCase(zahlen, "gerade"));
    34. System.out.print("\nSumme ungerader Zahlen: ");
    35. System.out.print(quersummeCase(zahlen, "ungerade"));
    36. }
    37. static int[] sortArr(int[] eingabe)
    38. {
    39. int temp, k = eingabe.length;
    40. for(int j=0; j<Math.ceil(eingabe.length/2); j++)
    41. {
    42. k--;
    43. temp = eingabe[j];
    44. eingabe[j] = eingabe[k];
    45. eingabe[k] = temp;
    46. }
    47. return eingabe;
    48. }
    49. static void ausgabe(int[] eingabe)
    50. {
    51. for(int ausgabe : eingabe)
    52. System.out.print(ausgabe+" ");
    53. }
    54. static int quersumme(int[] eingabe)
    55. {
    56. int summe = 0;
    57. for(int i=0; i<eingabe.length; i++)
    58. summe += eingabe[i];
    59. return summe;
    60. }
    61. static int quersummeCase(int[] eingabe, String bedingung)
    62. {
    63. int summe = 0;
    64. for(int i=0; i<eingabe.length; i++)
    65. if((bedingung == "gerade" && eingabe[i]%2 == 0) || (bedingung == "ungerade" && eingabe[i]%2 != 0))
    66. summe += eingabe[i];
    67. return summe;
    68. }
    69. static int eingabe(String text)
    70. {
    71. System.out.print(text);
    72. java.util.Scanner input = new java.util.Scanner(System.in);
    73. return input.nextInt();
    74. }
    75. }
    Alles anzeigen



    Ausgabe:
    Wieviel Zahlen sollen abgefragt werden: 5
    Geben Sie die 1. Zahl ein: 9
    Geben Sie die 2. Zahl ein: 1
    Geben Sie die 3. Zahl ein: 7
    Geben Sie die 4. Zahl ein: 8
    Geben Sie die 5. Zahl ein: 4

    Zahlen in richtiger Reihenfolge: 9 1 7 8 4
    Zahlen in umgekehrer Reihenfolge: 4 8 7 1 9
    Quersumme: 29
    Summe gerader Zahlen: 12
    Summe ungerader Zahlen: 17