Buch erstellen
Diese Seite zum Buch hinzufügen
Diese Seite zum Buch hinzufügen
Buch erstellen
Diese Seite aus Buch entfernen
Diese Seite aus Buch entfernen
Lösungsvorschläge Übungen 3
A1
/** * aufaufgabe01Summe() berechnet die Summe aller Arrayelemente * * @return Summe aller Arrayelemente */ public int aufgabe01Summe() { int summe = 0; for (int i=0; i<this.anzahl; i++) { summe = summe + daten[i]; } return summe; }
A2
/** * aufgaufgabe02ZaehleNullen() Gibt die Zahl den Nullen im Array zurück * * @return Zahl der Nullen */ public int aufgabe02ZaehleNullen() { int numNull = 0; for (int i=0; i<this.anzahl; i++) { if ( daten[i] == 0 ) { numNull++; } } return numNull; }
A3
/** * aufgabe03FindeLetzteNull() Gibt den Index des Elements mit der letzten Null zurück * * @return Index des Elements mit der letzten Null */ public int aufgabe03FindeLetzteNull() { int letzteNullIndex = -1; for(int i=0; i<this.anzahl; i++) { if ( daten[i] == 0 ){ letzteNullIndex = i; } } return letzteNullIndex; }
A4
/** * aufgabe04FindeErsteNull() Gibt den Index des Elements mit der ersten Null zurück * * @return Index des Elements mit der ersten Null */ public int aufgabe04FindeErsteNull() { for(int i=0; i<this.anzahl; i++) { if ( daten[i] == 0 ){ return i; } } return -1; }
A5
/** * aufgabe05Enthaelt1() Wahr, wenn die Zahlenreihe mindestens eine 1 enthaelt * * @return Wahr, wenn 1 vorhanden, sonst falsch */ public boolean aufgabe05Enthaelt1() { for(int i=0; i<this.anzahl; i++) { if ( daten[i] == 1 ){ return true; } } return false; }
A6
/** * aufgabe06Enthaelt2Und5()a Wahr, wenn die Zahlenreihe mindestens eine 2 * und eine 5 enthaelt * * @return Wahr, wenn 1 u. 5 vorhanden, sonst falsch */ public boolean aufgabe06Enthaelt2Und5() { boolean enthaelt2 = false; boolean enthaelt5 = false; for(int i=0; i<this.anzahl; i++) { if ( daten[i] == 2 ) { enthaelt2 = true; } if ( daten[i] == 5 ) { enthaelt5 = true; } } return (enthaelt2 && enthaelt5); }
A7
/** * aufgabe07EnthaeltFixpunkt() Wahr, wenn die Zahlenreihe mindestens einen * Fixpunkt enthält * * @return Wahr, wenn Fixpunkt vorhanden, sonst falsch */ public boolean aufgabe07EnthaeltFixpunkt() { for(int i=0; i<this.anzahl; i++) { if ( daten[i] == i ){ return true; } } return false; }
A8
/** * aufgabe08ZaehleWiederholungen() Gibt die Zahl dert Wiederholungen zurück. * Drei aufeinanderfolgende Zahlen sind zwei Wdh (wie kann man das anders zaehlen, * was muss man im Code aendern?) * * @return Zahl der Wdh */ public int aufgabe08ZaehleWiederholungen() { int numWdh = 0; for(int i=0; i<this.anzahl-1; i++) { if (daten[i] == daten[i+1]) { numWdh++; } } return numWdh; }
A9
/** * aufgabe09ZaehleDreierWiederholungen() Gibt die Zahl der dreier Wiederholungen zurück. * Vier aufeinanderfolgende Zahlen sind zwei 3er Wdh (wie kann man das anders zaehlen, * was muss man im Code aendern?) * * @return Zahl der Wdh */ public int aufgabe09ZaehleDreierWiederholungen() { int numWdh = 0; for(int i=0; i<this.anzahl-2; i++) { if (daten[i] == daten[i+1] && daten [i+1] == daten[i+2]) { numWdh++; } } return numWdh; }
A10
/** * aufgabe10LaengsteSerie() Gibt die Zahl der Elemente der längsten Serie zurück. * * @return Laenge der laengsten Serie */ public int aufgabe10LaengsteSerie() { int laengsteSerie = 1; int aktuelleSerie = 1; int letztesElement = -1; int aktuellesElement; for(int i=0; i<this.anzahl; i++) { aktuellesElement = daten[i]; if ( letztesElement == aktuellesElement ) { aktuelleSerie++; } else { if (aktuelleSerie > laengsteSerie) { laengsteSerie = aktuelleSerie; aktuelleSerie = -1; } } letztesElement = aktuellesElement; } return laengsteSerie; }
A11
public int aufgabe11Zweitgroesste() { int groesstes; int zweitgroesstes; if (daten[0] > daten[1] ) { groesstes = daten[0]; zweitgroesstes = daten [1]; } else { groesstes = daten[1]; zweitgroesstes = daten [0]; } for (int i=2; i<daten.length; i++) { if (daten[i] >= groesstes ) { zweitgroesstes = groesstes; groesstes = daten[i]; } else if (daten[i] > zweitgroesstes) { zweitgroesstes = daten[i]; } } return zweitgroesstes; } </java> ++++ ==== A12 ==== ++++ Lösungsvorschlag Aufgabe 12 | <code java> /** * Eröht jedes Element des Arrays um 1 */ public void aufgabe12Plus1() { for(int i=0; i<this.anzahl; i++) { daten[i] = daten[i] + 1; } System.out.println("------ Erhöht um eins -------"); for (int i=0; i<this.anzahl; i++) { System.out.println( i + " : " + daten[i]); } }