teilstrings kopieren,wurzel ziehen und arrays <- gelöst

Für Fragen von Einsteigern und Programmieranfängern...
mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Re: hallo ich brauch HILFE !!!! wurzel ziehen auf seite 3/4

Beitrag von mschnell »

Hallo Stephanie H.,

Lass doch bitte die bekloppten Überschriften und verwende möglichst kurze und prägnante. Du willst doch ernst genommen werden, oder ?

Wir sind hier nicht bei Facebook oder so.

-Michael

Stephanie H.
Beiträge: 91
Registriert: Sa 6. Feb 2010, 15:58
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit

Re: hallo ich brauch HILFE !!!! wurzel ziehen auf seite 3/4

Beitrag von Stephanie H. »

dann antwortet mir aber keiner...!!

Jochen ich versteh nicht was du mir damit ssagen willst...?!

Targion
Beiträge: 688
Registriert: Mi 3. Okt 2007, 21:00
OS, Lazarus, FPC: Linux (L 0.9.29 FPC 2.4.2)
CPU-Target: x86_64

Re: hallo ich brauch HILFE !!!! wurzel ziehen auf seite 3/4

Beitrag von Targion »

Die antwortet hier schon jemand, nur ein wenig warten musst du ^^ Soweit ich weis, ist es noch nie vorgekommen, dass wir wen vergessen haben.

Zu deinem Problem: Gib' doch mal vor dem "sqrt(Wuzel)" den Wert der Zahl aus, z:b. grafisch mittels ShowMessage(IntToStr(Wurzel))

Stephanie H.
Beiträge: 91
Registriert: Sa 6. Feb 2010, 15:58
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit

Re: hallo ich brauch HILFE !!!! wurzel ziehen auf seite 3/4

Beitrag von Stephanie H. »

hey aus wurzel kommt manchmal was negatives raus...
und was jetzt... ?

Targion
Beiträge: 688
Registriert: Mi 3. Okt 2007, 21:00
OS, Lazarus, FPC: Linux (L 0.9.29 FPC 2.4.2)
CPU-Target: x86_64

Re: hallo ich brauch HILFE !!!! wurzel ziehen auf seite 3/4

Beitrag von Targion »

Den negativen Fall abfangen:

Code: Alles auswählen

if Wurzel < 0 then
begin
 ShowMessage('Zahl < 0, kann keine Wurzel ziehen!');
 exit;
end;

Stephanie H.
Beiträge: 91
Registriert: Sa 6. Feb 2010, 15:58
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit

Re: hallo ich brauch HILFE !!!! wurzel ziehen auf seite 3/4

Beitrag von Stephanie H. »

der musst die aber ziehen!!

ich hab wieder probleme mit den kopieren von teilstrings

irgendwie helft ihr mir gar nicht richtig, außer pluto...
also vor meiner tollen überschrift habt ihr euch gar nicht gemeldet :(

Benutzeravatar
theo
Beiträge: 10867
Registriert: Mo 11. Sep 2006, 19:01

Re: hallo ich brauch HILFE !!!! wurzel ziehen auf seite 3/4

Beitrag von theo »

Stephanie H. hat geschrieben: irgendwie helft ihr mir gar nicht richtig, außer pluto...
Vielleicht solltest du mal richtige Fragen stellen.
Allzu faul/doof solltest du dich nicht anstellen, sonst macht es keinen Spass dir zu helfen.

Stephanie H.
Beiträge: 91
Registriert: Sa 6. Feb 2010, 15:58
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit

Re: teilstrings kopieren und wurzel ziehen

Beitrag von Stephanie H. »

ja tschuldigung
ok hier ist mal eine ''richtige'' Frage:
was ist das? :
An unhandled exception occured at $004190B2 :
EConvertError : '''' is an invalid integer
$004190B2
$00401910 main, line 88 of project.lpr

das steht immer in mein Programm das schließt sich dann immer ganz schnell...

und das ist mein quellcode

Code: Alles auswählen

xkoordinate:= StrToInt(Copy(name,1, Pos(' ',name)-1));    // Zeile 88
             ykoordinate:= StrToInt(Copy(name,Pos(' ', name)+1,Length(name)));
 
             X[i]:=xkoordinate;
             Y[i]:=ykoordinate;

pluto
Lazarusforum e. V.
Beiträge: 7192
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Re: teilstrings kopieren und wurzel ziehen

Beitrag von pluto »

Irgendwie bewegen wir uns im Kreis. Ich dachte das hätten wir schon gelöst.
Er erwartet eine Natürliche ganze Zahl. Irgendetwas ist an deiner Zahl nicht inordnung. Gibt die Zahl mal aus.
MFG
Michael Springwald

Stephanie H.
Beiträge: 91
Registriert: Sa 6. Feb 2010, 15:58
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit

Re: teilstrings kopieren und wurzel ziehen

Beitrag von Stephanie H. »

ich weiß aber i-wie hat sich das nicht gespeicher :s

Stephanie H.
Beiträge: 91
Registriert: Sa 6. Feb 2010, 15:58
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit

Re: teilstrings kopieren und wurzel ziehen

Beitrag von Stephanie H. »

also jetzt steht da was anderes im pogramm, namlich:
An unhandled exception occured at $00419132 :
EConvert : ''650163'' is an invalid integer // 650163 ist der 1. wert
$00419132
$00401938 main, line 89 of project.lpr

pluto
Lazarusforum e. V.
Beiträge: 7192
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Re: teilstrings kopieren und wurzel ziehen

Beitrag von pluto »

EConvert : ''650163'' is an invalid integer // 650163 ist der 1. wert
Komisch. Das Sieht für mich aus wie eine Zahl. Werden vielleicht noch Steuerzeichen Kopiert ?
Verwende mal zum Testen StrToInt(Trim(Copy(name,1, Pos(' ',name)-1)));.
und bei deiner zweiten Zeile Ebenfalls.
MFG
Michael Springwald

Stephanie H.
Beiträge: 91
Registriert: Sa 6. Feb 2010, 15:58
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit

Re: teilstrings kopieren und wurzel ziehen

Beitrag von Stephanie H. »

das klappt :mrgreen:
also jedenfalls das er die werte ausgibt und mit den teilstrings kopieren...
ich hab mir das von seite 2 und 3 noch mal angeguckt...


jetzt hab ich aber noch ein anderes problemchen und zwar das hier:

Code: Alles auswählen

FOR i := 0 to Zeilenanzahl do begin
FOR a := 0 to Zeilenanzahl do begin
              if i <> a then 
                   begin
                        Xa := X[i];
                        Ya := Y[i];
                        Xb := X[a];
                        Yb := Y[a];
                        Wert1  := sqr(Xa - Xb);    
                        Wert2  := sqr(Ya - Yb);   
                        Abstaende[a,i] := sqrt(Wert1 + Wert2);   // <- irgendwas ist hier falsch...
                   end;
         end;
         end;

pluto
Lazarusforum e. V.
Beiträge: 7192
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Re: teilstrings kopieren und wurzel ziehen

Beitrag von pluto »

das klappt :mrgreen:
also jedenfalls das er die werte ausgibt und mit den teilstrings kopieren...
Dann die Frage: Verwendest du UTF8 Zeichen ? Damit würde sich das Problem erklären.

Code: Alles auswählen

Abstaende[a,i] := sqrt(Wert1 + Wert2);   // <- irgendwas ist hier falsch...
Tolle aussage: Ist Irgendwie Falsch *G*....
Ist bei deinem Array, die Zeilen Anzahl, genauso Groß wie die Spalten Anzahl ? Was mir überflüssig erscheint ist auch die abfrage: "if i <> a then ..." Theoretisch gesehen kann das nur am Anfang passieren: Wemm i und a 0 sind. Aber das wäre doch richtig. Du möchtest doch auch bei deinem X Array in 0 schreiben oder ?

Zu deinem Problem: Kommt da die Bekannte AV ?
Was mich verwirrt: Zwei mal verwendest du ein Normalen 1D Array und einmal dann ein 2D Array. Ich könnte mir höchsten Vorstellen, dass a und i für den 2D Array zu Hoch sind.

PS: Eins muss man dir lassen, du bist Hartnäckig. Seit Tagen versuchst du schon das Problem zu lösen. Andere hätte vielleicht schon längst aufgegeben......
MFG
Michael Springwald

Stephanie H.
Beiträge: 91
Registriert: Sa 6. Feb 2010, 15:58
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit

Re: teilstrings kopieren und wurzel ziehen

Beitrag von Stephanie H. »

nöö also eigentlich benutze ich nur zahlen...

nein ich hab die spalten und zeilengröße niicht definiert...
also ich will da eigentlich so ne tabelle haben so wie beim 1x1 sag ich jetzt mal...
also die 66.Spalte entspricht die 66.Zeile...
also ich hab da so irgendwie max. 1000 Zeilen und Spalten
und joa
also ich errechne da einen Abstand
und der Abstand von punkt 1 zu punkt 5 ist ebenhalt in zeile 1 und spalte 5 oder in zeile 5 und spalte 1
joa und zu dieses ''überflüssigen'' if also ich will da nicht den abstand von punkt 1 zu punkt 1 errechnen das ist ja null...

was ist AV?

also ich hätte bei den 2 1D array auch 1 2d array benutzen können aber hab ich nicht...
auf jeden fall das eine array entspricht die x-koordinate und das andere array die y-koordinate
und die 1. zeile der beiden x- und y- arrays sind die koordinaten von punkt 1
muss du nicht verstehen :D

Antworten