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

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
pruefungen:bachelor:algoks:loesungss13 [18.07.2016 11:48] Yannikpruefungen:bachelor:algoks:loesungss13 [12.01.2018 18:30] (aktuell) anigerheu
Zeile 24: Zeile 24:
 Fuer die restlichen Exponenten (E < -2 && E >1) sind die zugehoerigen Fuer die restlichen Exponenten (E < -2 && E >1) sind die zugehoerigen
 FP auszerhalb von [1,8]. FP auszerhalb von [1,8].
 +
 +noch neuerer Lösungsvorschlag ;)   :
 +
 +laut Aufgabenstellung soll die Mantissenlänge t = 3 sein. Das ist für E = 1 nicht gewährleistet. Daher gehört die 8 nicht mehr zu der Lösung.
 +
  
 ====== A3 ====== ====== A3 ======
Zeile 53: Zeile 58:
  
 **c)** **c)**
-Forenloesung erklaert es imo. ganz gut+Forenloesung erklaert es imo. ganz gut (aber wsh schwer auffindbar) \\ 
 +a0 = 0 \\ 
 +a1 = -1 \\ 
 +a2 = -0.5 \\ 
 +a3 = 5/8 \\ 
 + 
 +a(x) = -x - 0.5*x*(x-1) + 5/8 *x*(x-1)*(x-2) = (5/8)x^3 - (7/4)x^2 - (13/8)x + 3/4 \\
  
 **d)** **d)**
Zeile 69: Zeile 80:
 **c)** **c)**
 (2, 2) = (1/2, 1/6, 1/3) (2, 2) = (1/2, 1/6, 1/3)
 +
 +**d)**
 +- Gerade tau = 1 geht durch T und liegt parallel zur Gerade RS \\
 +- die Menge liegt über Gerade RT und links und rechts von der Gerade ST (links eingeschränkt durch Gerade tau = 1!)
  
 **e)** **e)**
 M: w00 = w01 = w10 = w11 = 1/4 M: w00 = w01 = w10 = w11 = 1/4
 Q: w00 = 2/5, w10 = 4/15, w01 = 1/5, w11 = 2/15 Q: w00 = 2/5, w10 = 4/15, w01 = 1/5, w11 = 2/15
 +  
 +====== A6 ======
 +**a)**
 +I: Tangentengleichheit in den Endpunkten, variationsreduzierend \\
 +II: Endpunktinterpolation, Tangentengleichheit in Endpunkten \\
 +III: konvexe Hülle, variationsreduzierend \\
  
 +(-ohne Garantie-)
 +
 +====== A7 ======
 +
 +
 +**d)**
 +  if(kp.size()==1)
 +    return kp;
 +  std::vector<vec3> n;
 +  for(int i = 0; i < kp.size() - 1; i++){
 +    vec3 tmp = (1.0-u)*kp[i] + u*kp[i+1];
 +    n.pushBack(tmp);
 +  }
 +  return deCasteljau(n,u)[0];
 +  
 ====== A7 ====== ====== A7 ======
  
Zeile 105: Zeile 141:
  
 ====== A9 ====== ====== A9 ======
-**c)** +**b)**\\ 
-*Vorschlag, kann gerne verbessert werden*+  float xold = 0; 
 +  do{ 
 +    xold=x0; 
 +    x0 = (float)f(xold)/df(xold): 
 +    maxIterations--; 
 +  }while(maxIterations>=0 && epsilon > std::abs(x0-xold)) 
 +  return x0; 
 + 
 +**c)** \\
   int count = 0;   int count = 0;
   int[] erg = new int[maxIterations + 2];   int[] erg = new int[maxIterations + 2];
Zeile 114: Zeile 158:
     long zahler = erg[count]*f(erg[count+1]) + erg[count+1] * f(erg[count])     long zahler = erg[count]*f(erg[count+1]) + erg[count+1] * f(erg[count])
     long nenner = f(erg[count+1]) - f(erg[count])     long nenner = f(erg[count+1]) - f(erg[count])
-    erg[count + 2] = zahler/nenner; +    erg[count + 2] = (float)zahler/nenner; 
-  }while(count < maxIterations && Math.abs(erg[count + 2] - erg[count)>epsilon))+  }while(count < maxIterations && std::abs(erg[count + 2] - erg[count)>epsilon))
   return count+2;   return count+2;
-