Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   bel. lange Integerzahlen in dynamischen Listen??? (https://www.delphipraxis.net/111224-bel-lange-integerzahlen-dynamischen-listen.html)

Xeni 31. Mär 2008 19:19


bel. lange Integerzahlen in dynamischen Listen???
 
hi,ich hab ein kleines Problem.ich muss bel. lange Integerzahlen addieren und das dynamisch, aber ich vertsteh den dynamischen Ablauf gar nicht :cry: . Wäre schön wenn jemand mir helfen könnte.

mkinzler 31. Mär 2008 19:21

Re: bel. lange Integerzahlen in dynamischen Listen???
 
Was meinst du mit dynamisch?

Xeni 31. Mär 2008 19:34

Re: bel. lange Integerzahlen in dynamischen Listen???
 
ich meine dynamische listen, in dem sinne, dass man den inhalt nicht im array speichert sondern ein extra platz im pc dafür gemacht wird.verstehste?? :?

Die Muhkuh 31. Mär 2008 19:35

Re: bel. lange Integerzahlen in dynamischen Listen???
 
Hi,

nicht so wirklich.

Du meinst wohl eine TList (TObjectList, TStringList, ...)?

Xeni 31. Mär 2008 19:38

Re: bel. lange Integerzahlen in dynamischen Listen???
 
Ja das kann sein, im moment hält unser Lehrer nichts davon uns was beizubringen. deswegen verlier ich langsam den faden, aber wäre toll wenn du mir helfen könntest!

Die Muhkuh 31. Mär 2008 19:39

Re: bel. lange Integerzahlen in dynamischen Listen???
 
Ich könnte Dir jetzt was vom Ochs' und Pferd erzählen, aber ob es Dir was bringt, bezweifle ich.

Könntest Du konkretisieren, woran es hapert?

An der Stelle verweise ich Dich noch auf die Grundlagen-Tutorials bei Delphi-Treff. Vielleicht findest Du dort das passende.

Xeni 31. Mär 2008 19:43

Re: bel. lange Integerzahlen in dynamischen Listen???
 
naja ich muss in zwei listen beliebig lange zahlen eingeben und als ausgabe ein ergebnis haben. das soll mit den listen funktionieren. das heißt ich muss rausfinden wie lang die zahl1 und die zahl2 ist und diese in ziffern unterteilen.diese ziffern muss ich dann addieren und so weiter. das versteh ich auch noch aber wenn es an die umsetzung geht weis ich gar nicht wie und wo ich anfangen muss.

Xeni 31. Mär 2008 19:44

Re: bel. lange Integerzahlen in dynamischen Listen???
 
ach und der link geht bei mir nicht.

Die Muhkuh 31. Mär 2008 19:45

Re: bel. lange Integerzahlen in dynamischen Listen???
 
Da hat sich ein Punkt in die URL eingemogelt. Funktioniert jetzt.

Xeni 31. Mär 2008 19:46

Re: bel. lange Integerzahlen in dynamischen Listen???
 

Xeni 31. Mär 2008 19:47

Re: bel. lange Integerzahlen in dynamischen Listen???
 
doch jetzt.

Fussball-Robby 31. Mär 2008 19:47

Re: bel. lange Integerzahlen in dynamischen Listen???
 
Zitat:

Zitat von Xeni
naja ich muss in zwei listen beliebig lange zahlen eingeben und als ausgabe ein ergebnis haben. das soll mit den listen funktionieren. das heißt ich muss rausfinden wie lang die zahl1 und die zahl2 ist und diese in ziffern unterteilen.diese ziffern muss ich dann addieren und so weiter. das versteh ich auch noch aber wenn es an die umsetzung geht weis ich gar nicht wie und wo ich anfangen muss.

Dann such hier im Forum oder in der Delphi-Hilfe z.B. mal nach TStringList. Da findest du ne Menge.

Mfg

DeddyH 31. Mär 2008 19:48

Re: bel. lange Integerzahlen in dynamischen Listen???
 
Nur mit den beliebig langen Zahlen dürfte es schwierig werden.

Die Muhkuh 31. Mär 2008 19:50

Re: bel. lange Integerzahlen in dynamischen Listen???
 
Zitat:

Zitat von DeddyH
Nur mit den beliebig langen Zahlen dürfte es schwierig werden.

Nicht wenn man in der DP danach sucht. ;)
Mit dem DEC Part II ist dies ja möglich

DeddyH 31. Mär 2008 19:52

Re: bel. lange Integerzahlen in dynamischen Listen???
 
Damit wird er in der Schule auch gut ankommen :mrgreen:

Die Muhkuh 31. Mär 2008 19:54

Re: bel. lange Integerzahlen in dynamischen Listen???
 
Das stimmt natürlich :mrgreen:

Prinzipiell schon.

Xeni 31. Mär 2008 19:54

Re: bel. lange Integerzahlen in dynamischen Listen???
 
ich glaub das ist zu hoch für mich,ich gebe jetzt auf. oder ich finde einfach irgendwo genau das programm das ich brauch,ICH schaff das nicht. :wall:

Neutral General 31. Mär 2008 19:57

Re: bel. lange Integerzahlen in dynamischen Listen???
 
Hi,

Ich vermute (!) es soll vielleicht möglich sein beliebig lange Zahlen als String einzugeben, die dann addiert werden.

Vielleicht soll er das dann ja so machen:

'27' + '15'

:arrow: StrToInt('7') + StrToInt('5') = 2 R 1

:arrow: StrToInt('2') + StrToInt('1') + 1 = 4

Result := IntToStr(4) + IntToStr(2);
:arrow: '42'

Also die einzelnen Ziffern manuel schriftlich addieren.

Die Muhkuh 31. Mär 2008 20:00

Re: bel. lange Integerzahlen in dynamischen Listen???
 
Zitat:

Zitat von Neutral General
Also die einzelnen Ziffern manuel schriftlich addieren.

Ich addier hier gar nichts...

Bei Dir gibt 27 + 15 = 6?

Quark...

Xeni 31. Mär 2008 20:01

Re: bel. lange Integerzahlen in dynamischen Listen???
 
das könnte ich machen, aber das soll ich nicht. das würd ich glaub ich noch schaffen!warum sagt ihr immer "er"???

Die Muhkuh 31. Mär 2008 20:03

Re: bel. lange Integerzahlen in dynamischen Listen???
 
Andere Frage: Weißt Du überhaupt, was genau Du machen musst? Aufgabenstellung?

Ich hab das Gefühl, dass Du weißt, dass Du Zahlen aus Listen addieren sollst, aber hier gibt es ein breites Spektrum an Lösungen.

mkinzler 31. Mär 2008 20:04

Re: bel. lange Integerzahlen in dynamischen Listen???
 
Warum bist du sicher, dass du das so nicht sollst?
Zitat:

warum sagt ihr immer "er"???
Weil man deinem Namen dein Geschlecht nicht ansieht und die Meissten, die sich hier tummeln "er"s sind.

DeddyH 31. Mär 2008 20:04

Re: bel. lange Integerzahlen in dynamischen Listen???
 
Zitat:

Zitat von Xeni
warum sagt ihr immer "er"???

Schier geraten :mrgreen:

Xeni 31. Mär 2008 20:05

Re: bel. lange Integerzahlen in dynamischen Listen???
 
tja falsch!

Neutral General 31. Mär 2008 20:06

Re: bel. lange Integerzahlen in dynamischen Listen???
 
Hi Xeni.

Das Problem ist, dass alle anderen Möglichkeiten, beliebig große Zahlen darzustellen und mit ihnen zu rechnen, nicht gerade einfach sind.

Man könnte sich zwar eine eigene Klasse schreiben die das ermöglicht, aber das ist denke ich mal nicht so einfach und sowas wird euer Lehrer von euch in der Schule bestimmt nicht verlangen.

Ich glaube das größte Problem ist, dass hier niemand genau weiß, was du überhaupt machen sollst..

Gruß
Neutral General

Die Muhkuh 31. Mär 2008 20:06

Re: bel. lange Integerzahlen in dynamischen Listen???
 
Beantwortet meine Frage aber noch nicht ;)

[edit] Genau das meine ich, Michael [/edit]

Xeni 31. Mär 2008 20:12

Re: bel. lange Integerzahlen in dynamischen Listen???
 
ne ich glaube nicht, dass ich weis was ich machen soll, aber so was ähnliches:
Type Personentyp = Record
Name, Vorname : String[20];
Strasse : String[40];
PLZ : String[8];
Ort : String[40];
End;

Zeigertyp = ^elementtyp;
elementtyp = Record
Inhalt : Personentyp;
next : Zeigertyp;
End;
Var neu, vor, lauf,pos, anfang : Zeigertyp;
Person : Personentyp;


Procedure init;
Begin { Initialisierung einer leeren Liste }
anfang := nil;
End

Procedure einfuegen;
Begin { Schaffen eines freien Elementes }
new(neu);
{ Eintragen des Inhaltes in freies Element }
neu^.inhalt:=person;
neu^.next:=nil;
{ Suchen der Einfügestelle }
vor:=anfang;
lauf:=anfang;
while (lauf <> nil ) and
(lauf^.inhalt.name <= Person.name) Do
Begin
vor:= lauf; lauf:=lauf^.next;
End;
{ Einfügen in die Struktur }
if vor = lauf Then Begin anfang:=neu;
neu^.next:=lauf End
else Begin vor^.next:=neu; neu^.next:=lauf;
End;
End;

nur muss ich das jetzt mit den zahlen machen und nicht mit namen oder vornamen!

Fussball-Robby 31. Mär 2008 20:13

Re: bel. lange Integerzahlen in dynamischen Listen???
 
Wenn du uns nicht sagen willst/kannst, was genau du machen must, können wir dir nicht helfen. Es gibt dutzende Möglichkeiten, zwei Zahlen über eine StringList zu addieren, wobei das mit beliebig großen wie gesagt schwierig wird.
Außerdem habe ich dir eben schon gesagt, wonach du suchen musst. Wenn du das rein Programmiertechniche dann verstanden hast, kannst du an die Logik gehen, vorher solltest du dir aber mal z.B. die Funktionsweise von Stringlisten anschauen.
Wenn du bei unseren Lösungsvorschlägen immer nur sagst "das ist falsch", dann hilft das uns genau so wenig weiter wie dir.

Mfg

DeddyH 31. Mär 2008 20:14

Re: bel. lange Integerzahlen in dynamischen Listen???
 
So wie das aussieht, handelt es sich um eine verkettete Liste. Dazu sollte sich über die Forensuche einiges finden lassen.

sx2008 31. Mär 2008 20:15

Re: bel. lange Integerzahlen in dynamischen Listen???
 
Ich geb dir jetzt mal einen heissen Tipp: Wie würdest du 2 Zahlen auf dem Papier addieren ???
Richtig, Ziffer für Ziffer addieren und immer schön den Übertrag mitnehmen.
Also du hast 2 Strings:
Delphi-Quellcode:
a := '64637201';
b := '768574';
Was muss man als 1. tun ? Na die kürzere Zahl links mit '0' auffüllen, bis beiden Strings gleich lang sind.
Übertrag auf 0 setzen.
Dann eine for-Schleife (length(a) downto 1) laufen lassen, je eine Ziffer aus a und b rausholen
in Integer wandeln, addieren (+alter Übertrag), neuer Übertrag ermitteln (mod-Funktion und div-Funktion), Ergebnis als Ziffer in den Zielstring "c" kopieren.

So und dann schön eine Funktion machen:
Delphi-Quellcode:
function SAddieren(a,b:string):string;
Dann noch über das Vorzeichen nachdenken, damit du auch neg. Zahlen addieren kannst.

Also mit dieser Anleitung sollte es kein Problem mehr sein, die Hausaufgabe zu lösen.
Als Liste für die vielen Zahlen nimmst du einfach eine Stringliste oder gleich direkt das Property Lines eines TMemo.

Xeni 31. Mär 2008 20:16

Re: bel. lange Integerzahlen in dynamischen Listen???
 
naja ich dank euch,wollt euch nicht zur last fallen. mag es einfach nicht wenn ich das nicht verstehe aber ich versuch noch was im forum zu finden. Mfg

DeddyH 31. Mär 2008 20:18

Re: bel. lange Integerzahlen in dynamischen Listen???
 
Na dann schau mal Hier im Forum suchenverkettete and Liste

Xeni 31. Mär 2008 20:18

Re: bel. lange Integerzahlen in dynamischen Listen???
 
danke das versuch ich mal! :-D

Die Muhkuh 31. Mär 2008 20:19

Re: bel. lange Integerzahlen in dynamischen Listen???
 
Detlef, gib die Suchanfrage ohne search_id an, sonst funktioniert die nicht mehr (was sie ohnehin nicht mehr macht)

DeddyH 31. Mär 2008 20:21

Re: bel. lange Integerzahlen in dynamischen Listen???
 
Na doll, ich hab bloß die URL aus der Adresszeile kopiert :?

Die Muhkuh 31. Mär 2008 20:23

Re: bel. lange Integerzahlen in dynamischen Listen???
 
Kannst ja trotzdem ändern ;)

sx2008 31. Mär 2008 20:24

Re: bel. lange Integerzahlen in dynamischen Listen???
 
Zitat:

Zitat von Xeni
naja ich dank euch,wollt euch nicht zur last fallen. mag es einfach nicht wenn ich das nicht verstehe aber ich versuch noch was im forum zu finden. Mfg

Und warum habe ich mir dann die Finger wundgeschrieben auf Seite 2 ?
Das steht die Lösung für deine Hausaufgabe; du brauchst das nur noch in Pascal umzusetzen.
Für mich wäre das ein Klacks, aber es ist DEIN Job.

Xeni 31. Mär 2008 20:25

Re: bel. lange Integerzahlen in dynamischen Listen???
 
"danke das versuch ich mal!" hab ich doch oben geschrieben und auch schon angefangen! danke!!!


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:21 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz