AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Integerwerte -> Suchen welcher Wert am dichtesten drann ist!
Thema durchsuchen
Ansicht
Themen-Optionen

Integerwerte -> Suchen welcher Wert am dichtesten drann ist!

Ein Thema von Erebos · begonnen am 19. Feb 2010 · letzter Beitrag vom 19. Feb 2010
Antwort Antwort
Erebos

Registriert seit: 3. Jan 2010
12 Beiträge
 
#1

Integerwerte -> Suchen welcher Wert am dichtesten drann i

  Alt 19. Feb 2010, 17:55
Hey Leute ich habe eine Textdatei mit verschiedenen Werten z.B. [202,199,33,12,1,23,111]
Und dann habe ich ein Programm welches eine Zufallszahl ausgibt ... ich weiß das ich wenn ich die Textdatei in eine Stringlist
lade, und per Zufall die Zahl 33 kommt, ich mit hilfe von "indexof(InttoStr(33))" sagen kann das diese Zahl in der Textdatei steht...

Nun meine Frage, was wenn aber per Zufall 133 ausgespuckt wird, diese Zahl ist nicht in meiner Stringlist enthalten, ich möchte aber wissen welche Zahl dichter drann ist!=?

In dem Fall wäre am dichtesten (im Beispiel von 133) (und dem Textdateibeispiel) am dichtesten die Zahl 111 ...

Wie setze ich das nun in Quelltext bzw in eine Funktion um?

Liebe Grüße
Erebos
  Mit Zitat antworten Zitat
Benutzerbild von xZise
xZise

Registriert seit: 3. Mär 2006
Ort: Waldbronn
4.303 Beiträge
 
Delphi 2009 Professional
 
#2

Re: Integerwerte -> Suchen welcher Wert am dichtesten dra

  Alt 19. Feb 2010, 17:59
Ich denke, da musst schon selber gucken.
Also bei jedem Wert überprüfen, wie weit weg er von der Zufallszahl ist (bei dir z.B. 22) und den kleinsten Wert dann nehmen.

Beachte aber dass es keine negativen Entfernungen gibt Die 9 ist zur 11 genauso weit entfernt wir die 13 zur 11.

MfG
Fabian
Fabian
Eigentlich hat MS Windows ab Vista den Hang zur Selbstzerstörung abgewöhnt – mkinzler
  Mit Zitat antworten Zitat
Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#3

Re: Integerwerte -> Suchen welcher Wert am dichtesten dra

  Alt 19. Feb 2010, 18:02
Du lädst die ganzen Zahlen aus der Textdatei in eine Liste oder ein Array, und wenn du deine Zufallszahl hast, gehst du das Array durch und rechnest jeweils die Differenz aus. Dazu noch eine Variable mit der minimalen bisherigen Differenz und fertig

Pseudocode:
Code:
var min, zahl, zahlen[];
for int i = 0 to length(zahlen)-1
begin
  if abs(zahlen[i] - zahl) < min then
    min = abs(zahlen[i] - zahl);
end;
return min;
(Ja ich hab zu lange C# ürogrammiert ^^)
  Mit Zitat antworten Zitat
Benutzerbild von xZise
xZise

Registriert seit: 3. Mär 2006
Ort: Waldbronn
4.303 Beiträge
 
Delphi 2009 Professional
 
#4

Re: Integerwerte -> Suchen welcher Wert am dichtesten dra

  Alt 19. Feb 2010, 18:08
Naja dann kann ja noch etwas Eigenleistung gebracht werden

MfG
Fabian
Fabian
Eigentlich hat MS Windows ab Vista den Hang zur Selbstzerstörung abgewöhnt – mkinzler
  Mit Zitat antworten Zitat
Erebos

Registriert seit: 3. Jan 2010
12 Beiträge
 
#5

Re: Integerwerte -> Suchen welcher Wert am dichtesten dra

  Alt 19. Feb 2010, 18:33
danke danke
Wenn ich das hab poste ich das mal... in Pascal^^
  Mit Zitat antworten Zitat
Antwort Antwort


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 23:12 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz