Du befindest dich hier: FSI Informatik » Prüfungsfragen und Altklausuren » Prüfungen im Bachelor-Studium (1. - 5. Semester) » aud » Aufgabe 1

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige ÜberarbeitungVorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
Nächste ÜberarbeitungBeide Seiten, nächste Überarbeitung
pruefungen:bachelor:aud:loesungws17 [03.08.2019 12:59] LasagneAlFornopruefungen:bachelor:aud:loesungws17 [05.08.2019 15:22] TOKAMAK
Zeile 101: Zeile 101:
  }  }
  }  }
 +</code>
 +
 +Evtl noch besserer:
 +
 +<code java>
 +for (int i = 0; i < b.length; i++) {
 + b[i] = b[i]? false : true;
 + if(b[i]) break;
 +}
 </code> </code>
  
Zeile 149: Zeile 158:
   for(Cell c : zs) {   for(Cell c : zs) {
     s = s + c.v;     s = s + c.v;
-    vs[c.v] = true; +    vs[c.v] = true;  //hier wird die Zahl auf "true" gesetzt 
-    if (c.v != 0 && vs[c.v] == true) {   // ii)+    if (c.v != 0 && vs[c.v] == true) {   // ii)  //und hier wird deswegen dann immer false zurueckgegeben
       return false;       return false;
     }            }       
 +    //Loesung vs[c.v] erst nach Abfrage auf "true" setzen
 +    //vs[c.v] = true;
   }   }
   if (s > sum && vs[0] == true) { // i)   if (s > sum && vs[0] == true) { // i)
Zeile 258: Zeile 269:
 frac2cf(Frac(n, 1)) = L(n) frac2cf(Frac(n, 1)) = L(n)
  
-frac2cf(Frac(n, d)) = F(n/d,frac2cf(Frac(d,n%d)))+frac2cf(Frac(n, d)) = F(n/d, frac2cf(Frac(d, n%d)))
  
-ich hätte hier: 
-frac2cf(Frac(n,d)) = F((n-n%d)/d, frac2cf(Frac(d,n%d))) 
  
 c) c)
 +
 cf2frac(L(n)) = Frac(n, 1)  cf2frac(L(n)) = Frac(n, 1) 
  
-cf2frac(F(b, cf)) = Frac( num(Frac(b x den(Frac(cf))+den(cf2frac(cf)),den(cf2frac(cf))), 
- 
-den(Frac(b x den(Frac(cf))+den(cf2frac(cf)),den(cf2frac(cf))) 
-) 
- 
-Ich hätte hier: 
 cf2frac(F(b, cf)) = Frac(b * num(cf2frac(cf)) + den(cf2frac(cf)), num(cf2frac(cf))) cf2frac(F(b, cf)) = Frac(b * num(cf2frac(cf)) + den(cf2frac(cf)), num(cf2frac(cf)))
-Das oben macht ja schon teilweise syntaktisch keinen Sinn 
  
 d) d)
  
-same(L(x), L(y)) = if(x==y) then true else false +same(L(x), L(y)) = x==y 
- +
-//sollte man hier nicht immer "true zurückgeben? Es ist ja gefragt, ob sie die gleiche Darstellung haben. Und sie haben die gleiche Darstellung, egal ob x = y oder nicht.// +
- +
-same(F(x, a), F(y, b)) = if(x==y) && same(a==b) then true else false +
- +
-//hier auch einfach true, oder?//+
  
 +same(F(x, a), F(y, b)) = x==y && same(a, b) 
  
 same(F(x, a),L(y)) = false same(F(x, a),L(y)) = false
Zeile 296: Zeile 294:
 a) Alpha  a) Alpha 
  
-b) Beta, Wenn man den Code abtipptsieht man, dass Beta ausgeben wird. Ich vermute, dass das Interface Alpha aufgerufen wirdda dies der statische Typ beim Objekt ag ist. Da der Parameter c der Methode omega int ist, wird hier implizit von char zu int gecastet. Dadurch wird omega(int i) (Klasse Beta) statt omega(char c) (Klasse Gamma) aufgerufen, da **int** hier eben besser passt.+b) Beta, weilsiehe Vorlesungsfolien "Typsicherheit: Es dürfen nur Methoden aufgerufen werdendie schon beim statischen Typ von m (Oberklasse Medium) verfügbar sind." Java ist typsicher und ruft damit die Methode omega der Klasse Beta auf.
  
 c) Gamma  c) Gamma 
Zeile 302: Zeile 300:
 d) 4711 d) 4711
  
-e) Laut API hat out nen static modifier, also Klassenvariable// +e) Klassenvariable
- +
-f) öffentlich, statisch überladen      Anmerkung: Laut API nicht statisch soweit ich das sehe+
  
 +f) öffentlich, überladen
  
 g) 16 überlädt 6 g) 16 überlädt 6