Struktogramm mit Array

... komplette Frage anzeigen

1 Antwort

A1

int mittelwert(int[] zahl) {

int summe = 0;

for (int x = 0; x < zahl.length; x++) {

summe+=zahl[x];

}

return summe/zahl.length;

A2 a)

d=3,7*5 = 18,5

b) Korrekt, weil sowohl x als auch y den gleichen Wert ergeben

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von RomanKrechting
25.01.2013, 15:29

super danke !.. jz weiß ich leider nich wie das im struktogramm aussieht. :( zu 2b) da steht if (x==y) also 2 mal "=" ist das ´wichtig? 18,5 habe ich auch..37/10 dann *5.. hast du ne begründung? ah und wo hast du das m in aufgabe 1? danke dir!

0
Kommentar von ultrarunner
25.01.2013, 15:34

2a) stimmt nicht, denn die Variablen sind als integer deklariert. Somit liefert die Division nicht 3,7. sondern 3. Insgesamt kommt daher 15 heraus.

2b) hat das Problem, dass die Variablen als double deklariert sind. Es können also Rundungsfehler auftreten. Somit kann trotz "theoretisch" gleicher Werte der Vergleich mit == fehlschlagen. Aus diesem Grund sollte man Fließkommazahlen niemals auf exakte Gleichheit überprüfen.

1

Was möchtest Du wissen?