Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   modular 0.0? (https://www.delphipraxis.net/182373-modular-0-0-a.html)

Kuehter 23. Okt 2014 16:27

AW: modular 0.0?
 
um zurück zukommen auf dieses Thema noch mal, kann mir bitte einer einen schnipsel programmcode für die Lösung zeigen, weil das mit dem null auffüllen bekomm ich einfach nicht hin und nein die zahlen werden nicht negativ und auch nicht 4 stellig das ist des weiterem im Programm abgefangen, dass geht nur darum das wenn ich ne 33 darin stehen habe, da 033 stehen habe oder nur 33

DeddyH 23. Okt 2014 16:49

AW: modular 0.0?
 
Erklär doch nochmal genau, was Deine Funktion eigentlich tun soll. Mir erscheint der Code viel zu kompliziert, aber solange wir nicht wissen, was er eigentlich bezwecken soll, kann man nur schlecht alternative Vorschläge machen.

Bjoerk 23. Okt 2014 17:01

AW: modular 0.0?
 
TE will wohl Zahlen splitten und wieder zusammensetzen. Scheint eine div mod Übungsaufgabe zu sein?
Ich habe die function auch nicht kapiert. Am besten du schreibst dir eine function die nur eine Zahl splittet. Und was auf alle Fälle schon mal fehlt:

Delphi-Quellcode:
 
  for I := Low(Result) to High(Result) do
    Result[I] := 0;

Namenloser 23. Okt 2014 17:52

AW: modular 0.0?
 
Alternative, einfache Lösung:
Delphi-Quellcode:
if Zahl > 99 then
  { Drei- oder mehrstellig }
else if Zahl > 9 then
  { Zweistellig }
else
  { Einstellig }
else
  { Null oder negativ }
Ich versteh aber den Sinn auch nicht. Ein Integer hat immer 32 Bit, die „unbenutzen“ Stellen sind automatisch mit 0 aufgefüllt. Natürlich im Binärsystem, aber damit rechnet ein Computer ja normalerweise auch.

Klaus01 23. Okt 2014 21:45

AW: modular 0.0?
 
.. sollte das Thema nicht mit format zu erschlagen sein?

Delphi-Quellcode:
showMessage(format('0 padded decimal = <%.3d>', [33]));
Grüße
Klaus

Dejan Vu 24. Okt 2014 02:42

AW: modular 0.0?
 
Ich würde einfach mal das 'Result' vorher auf 0 setzen. Dann sollte da auch nichts dazugedichtet werden. Das gleiche würde ich noch mit 'onenumber' vor jeder While-Schleife machen, denn sonst steht dort ja das Ergebnis des vorherigen Durchlaufs drin.

Bisher macht die Funktion folgendes (numbers= (123,456) = > [1,2,3,4,5,6]) so wie ich das um diese Tageszeit verstanden habe.

Kuehter 24. Okt 2014 07:17

AW: modular 0.0?
 
Ja Dejan Vu deins hat geholfen jetzt wird aus 33 = 033 vielen dank

p80286 24. Okt 2014 11:10

AW: modular 0.0?
 
Zitat:

Zitat von Klaus01 (Beitrag 1277239)
.. sollte das Thema nicht mit format zu erschlagen sein?

Delphi-Quellcode:
showMessage(format('0 padded decimal = <%.3d>', [33]));
Grüße
Klaus

Nicht ganz, er möchte für jede Dezimalstelle einen Numerischen Wert haben, wobei mir der Vorschlag gefällt
Delphi-Quellcode:
dummystr:=Format('%.3',[wert]);
for i:=1 to 3 do
 zahlarray[i-1]:=byte(dummystr[i]);
Gruß
K-H

DeddyH 24. Okt 2014 11:16

AW: modular 0.0?
 
Sofern ich überhaupt verstanden habe, was eigentlich erreicht werden soll: würde es nicht mit DIV und MOD ohne größere Verbiegungen auch gehen?

himitsu 24. Okt 2014 11:18

AW: modular 0.0?
 
Zitat:

Zitat von DeddyH (Beitrag 1277274)
Sofern ich überhaupt verstanden habe, was eigentlich erreicht werden soll: würde es nicht mit DIV und MOD ohne größere Verbiegungen auch gehen?

Ja, wie ich bereits erwähnte -> einfach immer alle Stellen durchrechnen und nicht gleich bei 0 abbrechen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:20 Uhr.
Seite 2 von 3     12 3      

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 by Thomas Breitkreuz