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
Dies ist eine alte Version des Dokuments!
Lösungsvorschläge Übungen 3
A1
/** * aufaufgabe01Summe() berechnet die Summe aller Arrayelemente * * @return Summe aller Arrayelemente */ public int aufgabe01Summe() { int summe = -1; 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]); } }