Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Fr Jul 18, 2025 11:52

Foren-Übersicht » Programmierung » OpenGL
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 126 Beiträge ]  Gehe zu Seite Vorherige  1, 2, 3, 4, 5, 6, 7 ... 9  Nächste
Autor Nachricht
 Betreff des Beitrags:
BeitragVerfasst: Sa Jul 18, 2009 17:36 
Offline
DGL Member

Registriert: Mi Jul 15, 2009 18:29
Beiträge: 52
also so genau hab ich es nicht betrachtet =)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Jul 19, 2009 12:50 
Offline
DGL Member

Registriert: Mi Jul 15, 2009 18:29
Beiträge: 52
hallo alle zusammen,
habe ne mail vom prof erhalten wegen mein programm:
Sie müssen zuerst die Polynomkoeffizienten berechnen (via lin. Gl.syst.)
und dann verwenden Sie günstigerweise das Horner-Schema zur
Polynomwertberechnung beim Zeichnen.

sagt das euch was?


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Jul 19, 2009 13:05 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Okt 04, 2006 15:42
Beiträge: 78
Wohnort: Bonn
Programmiersprache: Python, C++, Delphi
Das Horner-Schema ist einfach ein anderer Term für ein Polynom, der ohne Potenzen auskommt
und dadurch etliche Multiplikationen oder Exponential/Logarithmusfunktionen auf der FPU einspart.
Dadurch kann man effizient den Wert eines Polynoms (dargestellt durch ein Array der Koeffizienten)
an einer beliebigen Stelle x berechnen.

Prinzipiell basiert es darauf, dass ein Faktor "x" für jeden Koeffizienten "mitgenommen" wird, angefangen
wird bei dem Koeffizienten der höchsten Potzenz - dadurch wird quasi als Nebeneffekt potenziert, ohne dass
man wirklich die Potenz berechnen muss.

Wenn es dich interessiert, findest du mehr Infos auf Wiki. Falls nicht hier der Code:

Code:
  1. {$mode delphi}
  2.  
  3. var
  4.   coeff: array [0..3] of single = (3.0, 2.0, 0.0, 1.0); // 3 + 2x + x^3
  5.  
  6. function horner(x: single): single;
  7. var
  8.   i: integer;
  9. begin
  10.   result := coeff[3];
  11.   for i := 2 downto 0 do result := result * x + coeff[i];
  12. end;
  13.  
  14. begin
  15.   writeln(horner(3.0):1:1);
  16.  
  17.   // 3 + 2*3 + 3*3*3 = 36
  18. end.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Jul 19, 2009 13:07 
Offline
DGL Member

Registriert: Mi Jul 15, 2009 18:29
Beiträge: 52
könnte ich es in mein programm einfügen?
bis zu welchem grad geht das denn dieser code was du reingetan hast?


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Jul 19, 2009 13:18 
Offline
Guitar Hero
Benutzeravatar

Registriert: Do Sep 25, 2003 15:56
Beiträge: 7810
Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Versuch den Code doch bitte zuerst zu verstehen.
Dann wirst du festellen, dass der Code so wie er da steht nicht bis 8, 20, 100 oder sonstwieweit geht. Wie weit er geht steht im Code.

PS: Was genau studierst du?

_________________
Blog: kevin-fleischer.de und fbaingermany.com


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Jul 19, 2009 13:21 
Offline
DGL Member

Registriert: Mi Jul 15, 2009 18:29
Beiträge: 52
also so wie ich verstanden habe geht er bis 3. grad.
studiere wirtsschaftsinfo


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Jul 19, 2009 13:23 
Offline
Guitar Hero
Benutzeravatar

Registriert: Do Sep 25, 2003 15:56
Beiträge: 7810
Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
3.Grad. Ja so hab ich den Code auch verstanden.
So, und jetzt solltest du den mal selbstständig bis auf 5.Grades erweitern und deine Lösung hier reinstellen.
So sehen die Leute die dir helfen dass du es ernsthaft selbst probierst.

Bachelor?

_________________
Blog: kevin-fleischer.de und fbaingermany.com


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Jul 19, 2009 13:25 
Offline
DGL Member

Registriert: Mi Jul 15, 2009 18:29
Beiträge: 52
ja Bachelor.
das ist mein letzer versuch in dem projekt ansonsten war das studium fürn arsch =(
ich probiere es grad ich mach gleich hochstellen


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Jul 19, 2009 13:30 
Offline
DGL Member

Registriert: Mi Jul 15, 2009 18:29
Beiträge: 52
Code:
  1.  
  2.     {$mode delphi}
  3.      
  4.     var
  5.       coeff: array [0..5] of single = (5.0, 4.0, 3.0, 2.0, 0.0, 1.0);
  6.     function horner(x: single): single;
  7.     var
  8.       i: integer;
  9.     begin
  10.       result := coeff[3];
  11. .     for i := 4 downto 0 do result := result * x + coeff[i];
  12.     end;
  13.      
  14.     begin
  15.       writeln(horner(5.0):1:1);
  16.      
  17.     end.
  18.  


so ??


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Jul 19, 2009 13:36 
Offline
Guitar Hero
Benutzeravatar

Registriert: Do Sep 25, 2003 15:56
Beiträge: 7810
Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Fast.
Code:
  1. result := coeff[3];
muss coeff[5] sein.

_________________
Blog: kevin-fleischer.de und fbaingermany.com


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Jul 19, 2009 13:37 
Offline
DGL Member

Registriert: Mi Jul 15, 2009 18:29
Beiträge: 52
und das wars?
das heisst anstatt meiner matrix aufgaben muss ich das kleine programm einsetzen?
weil wenn du mitbekommen hast, habe ich ja eine linke matrix und die rechte matrix, und dann nochmal die matrix berechnung....muss ich diese ganzen mit deinem programm ersetzen?


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Jul 19, 2009 13:48 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Okt 04, 2006 15:42
Beiträge: 78
Wohnort: Bonn
Programmiersprache: Python, C++, Delphi
Mhm. Ich wollte eigentlich nicht antworten, tue es aber trotzdem - auch um zu sagen
warum mich dein Verhalten "ein bisschen" nervt, jule.

Du hast dir erstens meinen Post nicht durchgelesen - von wegen was das Hornerschema überhaupt
ist oder so. Vielleicht hast du es auch nicht verstanden, aber in dem Fall hättest du auf Wiki gucken
können - oder sonstwo im Internet.
Das Gleiche gilt auch im Prinzip für den Fall, dass du einige Stellen meines Codes rein syntaktisch
nicht verstehst. Pascal hat aber die Eigenschaft, fast schon Pseudocode zu sein; demnach hätte es
bis auf ein paar Schlüsselwörter (über die du dich im Internet informieren hättest können) nichts
gegeben, was man auch nur ansatzweise nicht verstehen kann.

Aber nein, du machst dir gar nicht die Mühe. Irgendein Idiot wird sich schon finden, der dir dein
Programm schreibt, und sich eine Note erarbeitet, die dann fälschlicherweise du erhältst.
Ich werde nicht dieser Idiot sein, weswegen ich auch nicht auf die PM antworten werde. Ich
habe dir schonmal gesagt, dass das hier ein Forum ist - keine Börse für Stellengesuche.


Es bleibt wirklich nur nochmal, wie Flash schon richtig gesagt hat, darauf hinzuweisen, dass du dich
selbst mal anstrengen sollst und auch versuchen sollst, den Code nachzuvollziehen.
Nachvollziehen heißt nicht nur zur Kenntnis nehmen, was das Programm tut, sondern auch warum die
For-Schleife so aufgebaut ist, wie sie aufgebaut ist.

Was mich auch stutzig macht ist, dass du als "dein" Koeffizientenarray (5.0, 4.0, 3.0, 2.0, 0.0, 1.0)
genommen hast. Ich glaube du hast da aus meinen Code eine Zahlenfolge hereininterpretiert, die
gar nicht gegeben ist - die Koeffizienten (vielleicht solltest du das Wort nachschlagen) ergeben sich
aus der Berechnung mittels der Gauss-Elimination und stehen für ein bestimmtes Polynom. Ich habe
dir sogar einen Kommentar hinter das Array gesetzt, damit du siehst, welches Polynom es repräsentiert.


Erstmal genug dazu. Ich denke du wirst es dir sowiso nicht durchlesen.
Hoffe bitte nicht darauf, dass dir die :idea: kommt - sowas "kommt" nicht (meistens), sondern muss hart
erarbeitet werden - wozu du offensichtlich nicht gewillt bist. Aber bitte wundere dich dann auch nicht,
wenn du die Note bekommst, die du dir verdient hast.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Jul 19, 2009 13:53 
Offline
DGL Member

Registriert: Mi Jul 15, 2009 18:29
Beiträge: 52
danke für den lieben langen text und doch ich habe ihn sogar durchgelesen, sieh an.
ich möchte keine 1 oder 2.
ich bekomme keine note. nur ich falle durch wenn ich dieses programm nicht zum laufen bekomme. und wenn es läuft bin ich durch und bekomme wie gesagt keine note ansonten ist mein studium abgebrochen falls ich es net schaffen sollte.....


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Jul 19, 2009 14:02 
Offline
DGL Member
Benutzeravatar

Registriert: Di Sep 20, 2005 13:18
Beiträge: 1054
Wohnort: Dresden
Programmiersprache: C, C++, Pascal, OPL
Ähm, bei uns ist ein Studium abzubrechen, wenn man 3 (!!!) mal durch ne Prüfung rasselt, in anderen Bundesländern reicht es 2 mal durchzurasseln. Ist es nicht etwas spät ne Woche vor dem (mindestens) zweiten Versuch um Hilfe zu betteln. Mensch, wenns dir so wichtig ist, such dir eine(n) Depp(in) an der Informatik-Fakultät und lass es sie/ihn für Geld machen. :?

_________________
Denn wer nur schweigt, weil er Konflikte scheut, der macht Sachen, die er hinterher bereut.
Und das ist verkehrt, denn es ist nicht so schwer, jeden Tag zu tun als ob's der letzte wär’.
Und du schaust mich an und fragst ob ich das kann.
Und ich denk, ich werd' mich ändern irgendwann.

_________________Farin Urlaub - Bewegungslos


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Jul 19, 2009 14:08 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Mär 30, 2007 18:35
Beiträge: 331
juleffm hat geschrieben:
danke für den lieben langen text und doch ich habe ihn sogar durchgelesen, sieh an.
ich möchte keine 1 oder 2.
ich bekomme keine note. nur ich falle durch wenn ich dieses programm nicht zum laufen bekomme. und wenn es läuft bin ich durch und bekomme wie gesagt keine note ansonten ist mein studium abgebrochen falls ich es net schaffen sollte.....


Und das war jetzt dein Versuch etwas nachzuvollziehen bzw. uns zu zeigen, dass du selbst versuchst dir etwas zu erarbeiten? Und nein, das ist nicht das, was dein Programm tun soll. Wäre auch ein bisschen komisch wenn ein paar Zeilen das tun könnten. Du hast den Code nicht nur nicht verstanden sondern weißt nicht einmal was er tut:

Zitat:
Dadurch kann man effizient den Wert eines Polynoms (dargestellt durch ein Array der Koeffizienten) an einer beliebigen Stelle x berechnen.


http://de.wikipedia.org/wiki/Horner_Schema

Das hat im Prinzip nichts mit deinem Programm zu tun sondern ist nur eine effiziente Variante Werte eines Polynoms zu berechnen.
Selbst dein Prof hat das geschrieben:
Zitat:
verwenden Sie günstigerweise das Horner-Schema zur Polynomwertberechnung


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 126 Beiträge ]  Gehe zu Seite Vorherige  1, 2, 3, 4, 5, 6, 7 ... 9  Nächste
Foren-Übersicht » Programmierung » OpenGL


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 3 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.016s | 15 Queries | GZIP : On ]