Autor Beitrag
Binchen1987
Hält's aus hier
Beiträge: 13



BeitragVerfasst: Mi 16.01.08 20:01 
Habe folgenden Quelltext zur Berechnung von sin(x) aber es kommt der Fehler, dass y nicht initialiert wurde... was muss ich ändern?

ausblenden volle Höhe Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
procedure TForm1.Button2Click(Sender: TObject);
var x,G,y,nenn:real;
k,i:integer;
const epsilon=0.0005;
begin
x:=StrToFloat(Edit1.Text);
If (x>=1.0and (x<=1.5then
begin
y:=0;
G:=x;
k:=1;
repeat
y:=y+G;
nenn:=1;
k:=k+2;
for i:=2 to k do
begin
nenn:=nenn*1;
G:=(-1*G*x*x)/nenn;
end;

until abs (G) < epsilon;
end;
Edit2.text:= FloatToStr(y);
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
edit1.clear;
edit2.clear;
end;

end.


Und habt ihr eine Idee für ein Unterprogramm eines Programms welches die Unternehem von vielen ermittelt, die einen Umsatz unter 1000€ errichen?

Vielen Dank für eure Hilfe!!!
LG

Moderiert von user profile iconGausi: Delphi-Tags hinzugefügt
Yogu
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2598
Erhaltene Danke: 156

Ubuntu 13.04, Win 7
C# (VS 2013)
BeitragVerfasst: Mi 16.01.08 20:08 
Hallo und :welcome: im Delphi-Forum, user profile iconBinchen1987!

Wo genau tritt denn der Fehler auf? Kannst du uns vielleicht die Zeilennumer nennen?
Und warum codest du den Sinus neu, den gibt es doch schon mit Delphi mitgeliefert !?

Grüße,
Yogu
Gausi
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 8549
Erhaltene Danke: 478

Windows 7, Windows 10
D7 PE, Delphi XE3 Prof, Delphi 10.3 CE
BeitragVerfasst: Mi 16.01.08 20:11 
Auch von mir ein :welcome:

Das ist ja kein Fehler, sondern nur eine Warnung, oder? Der tritt auf, weil du y nur einen Wert zuweist, wenn die obere Bedingung erfüllt ist, hinterher aber auf jeden Fall darauf zugreifst. Wenn die Bedingung nun nicht erfüllt wurde, ist y nicht definiert, sonder enthält irgendeinen Fantasiewert, der dann zu einer unsinnigen Anzeige führt. Daher die Warnung.

_________________
We are, we were and will not be.
Mitmischer 1703
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 754
Erhaltene Danke: 19

Win 7, Debian
Delphi Prism, Delphi 7, RAD Studio 2009 Academic, C#, C++, Java, HTML, PHP
BeitragVerfasst: Mi 16.01.08 20:56 
user profile iconYogu hat folgendes geschrieben:

Und warum codest du den Sinus neu, den gibt es doch schon mit Delphi mitgeliefert !?


Auch meinerseits ein :welcome:

Sinus ist in der Unit Math unter sin, Cosinus unter cos definiert, für beide zusammen ist sincos schneller

_________________
Die Lösung ist nicht siebzehn.
Binchen1987 Threadstarter
Hält's aus hier
Beiträge: 13



BeitragVerfasst: Mi 16.01.08 21:21 
Stimmt, ist eine Warnung. Programm wird trotzdem gestartet. Aber es läuft nicht richtig. Es wird immer bei jeder beliebigen Eingabe derselbe Wert ausgegeben.
Muss es so für die Uni programmieren, daher kann ich den feritigen Programmen bedienen sondern muss alleine ran;)
nagel
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 708

Win7, Ubuntu 10.10

BeitragVerfasst: Mi 16.01.08 21:27 
Hab jetzt nicht ganz verstanden was du da machst, aber ich vermute mal, dass der/ein Fehler in Zeile 18 liegt:
ausblenden Delphi-Quelltext
1:
nenn:=nenn*1;					

Oder hat das irgendeinen Sinn?
Binchen1987 Threadstarter
Hält's aus hier
Beiträge: 13



BeitragVerfasst: Mi 16.01.08 21:37 
Nee, das stimmt schon, war so im Struktogramm vorgegeben
nagel
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 708

Win7, Ubuntu 10.10

BeitragVerfasst: Mi 16.01.08 21:40 
Bist du dir da sicher? Was soll das bringen, bei jedem Schleifendurchlauf mit 1 zu multiplizieren?
Ich vermute eher, dass das ein i sein sollte.
Binchen1987 Threadstarter
Hält's aus hier
Beiträge: 13



BeitragVerfasst: Mi 16.01.08 21:47 
Juhu danke;)))) es funktioniert hab mich wirklich verschrieben;) Hab nochmal aufs Struktogramm geschaut;)Dankeschön