AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Programm Hilfe

Ein Thema von boxer123 · begonnen am 18. Okt 2011 · letzter Beitrag vom 30. Okt 2011
Antwort Antwort
Seite 1 von 2  1 2   
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.401 Beiträge
 
Delphi 12 Athens
 
#1

AW: Programm Hilfe

  Alt 23. Okt 2011, 11:09
Was ist für dich der Sinn?

Bzw., wo ist das Problem?




Schonmal etwas von Codeformatierung/Codeausrichtung gehört?

Dabei würde dir auffallen, daß dir absteigende sortierung nicht sortieren kann, da sie sich nicht innerhalb der Schleife befindet.

Und wozu zahltexteins:=zahltext und das Andere innerhalb der Schleife?
Es verändert sich darin doch garnicht.



Was machst du mit den Werten in a und b? (nach der Sortierung)



Und warum die globalen Variablen, wo sie doch nur lokal (innerhalb der Prozedur) gnutzt werden
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (23. Okt 2011 um 11:15 Uhr)
  Mit Zitat antworten Zitat
boxer123

Registriert seit: 18. Okt 2011
96 Beiträge
 
#2

AW: Programm Hilfe

  Alt 23. Okt 2011, 11:11
Ich denke es gibt kein problem in dem quelltext, aber wenn ich starte und eine 4stellige zahl im edit fenster eingebe, dann kommt project1 fehler oder so.

ich habe es mir so vorgestellt, wenn er was in zahltext drin ist geordnet hat,das soll er in zahltexteins speichern.

Geändert von boxer123 (23. Okt 2011 um 11:17 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.662 Beiträge
 
Delphi 12 Athens
 
#3

AW: Programm Hilfe

  Alt 23. Okt 2011, 11:16
Hast Du Dir einmal angeschaut, welchen Wert i nach der ersten Schleife hat?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
boxer123

Registriert seit: 18. Okt 2011
96 Beiträge
 
#4

AW: Programm Hilfe

  Alt 23. Okt 2011, 11:19
ah ja ihn wurde noch kein wert zugewiesen
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.662 Beiträge
 
Delphi 12 Athens
 
#5

AW: Programm Hilfe

  Alt 23. Okt 2011, 11:21
Das bedeutet also, dass Dein Vergleich falsch ist.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Bjoerk

Registriert seit: 28. Feb 2011
Ort: Mannheim
1.384 Beiträge
 
Delphi 10.4 Sydney
 
#6

AW: Programm Hilfe

  Alt 23. Okt 2011, 11:53
Hab‘s mal durchgespielt. Das wird so nicht funktionieren, da du die Differenz in einer repeat until Schleife immer neu berechnen und sortieren mußt und diese auch mal nur eine dreistellige Zahl sein kann. Die mod div Variante war da eleganter (speichert z.B. 483 als 0483) oder du überprüfst die Länge von Differenz selbst und füllst entsprechend mit Nullen auf.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.401 Beiträge
 
Delphi 12 Athens
 
#7

AW: Programm Hilfe

  Alt 23. Okt 2011, 11:25
Mit "oder so" können wir nichts anfangen.

Eine ordentliche Fehlermeldung wäre schon angebracht.


Zitat:
Das bedeutet also, dass Dein Vergleich falsch ist.
Man könnte ja mal im Debugger das Ganze Schritt für Schritt durchgehen.
Und mit einer ordentlichen Codeausrichtung sagt es eigentlich auch schon alles.
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (23. Okt 2011 um 11:27 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.662 Beiträge
 
Delphi 12 Athens
 
#8

AW: Programm Hilfe

  Alt 23. Okt 2011, 11:29
Ich empfehle folgende Lektüre: http://de.wikipedia.org/wiki/Bubblesort. Da ist sogar eine kleine Animation zum Nachvollziehen dabei. Alternativ gibt es auch in der DP entsprechende Codes/Tutorials zum Thema Sortieren.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
boxer123

Registriert seit: 18. Okt 2011
96 Beiträge
 
#9

AW: Programm Hilfe

  Alt 23. Okt 2011, 11:55
ich versteh eins nicht wir wissen ja das ist eine 4stellige zahl ist. Wieso also repeat machen wir das doch mit der for schleife
  Mit Zitat antworten Zitat
Bjoerk

Registriert seit: 28. Feb 2011
Ort: Mannheim
1.384 Beiträge
 
Delphi 10.4 Sydney
 
#10

AW: Programm Hilfe

  Alt 23. Okt 2011, 12:15
Hast du doch in #1 geschrieben, so oft wiederholen bis das Ergebnis der vorletzten Iteration dem Ergebnis der letzten Iteration entsprich (also 6174).

Delphi-Quellcode:
function GetFirstKaprekarsConstant(const Value: int64): int64;
var
  T, MinValue, MaxValue, PrevResult: int64;
  Number: array [1..10] of int64;
  I, J, N, Count: integer;
begin
  Result:= 0;
  N:= Length(IntToStr(Value));
  if (N in [3, 4, 6, 8, 9, 10]) and (Value > 0) then
  begin
    Result:= Value;
    Count:= 0;
    repeat
      PrevResult:= Result;
      for I:= 1 to N do
      begin
        *** Number[I] berechnen;
      end;
      *** Number sortieren
      *** MinValue und MaxValue berechnen
      Result:= MaxValue-MinValue;
    until (Result = PrevResult) or (Count > 1000);
    if Count > 1000 then Result:= 0; // Kein Ergebnis gefunden
  end;
end;

procedure TForm1.Button3Click(Sender: TObject);
var
  Value: int64;
begin
  Edit2.Text:= '';
  if TryStrToInt64(Trim(Edit1.Text), Value) then
    Edit2.Text:= IntToStr(GetFirstKaprekarsConstant(Value));
end;
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2   

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:29 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