AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Array mit Zahlen füllen

Ein Thema von Tazidus · begonnen am 26. Apr 2008 · letzter Beitrag vom 28. Apr 2008
Antwort Antwort
Tazidus

Registriert seit: 29. Mär 2005
Ort: Hilchenbach
44 Beiträge
 
#1

Array mit Zahlen füllen

  Alt 26. Apr 2008, 16:22
Hallo,

ich habe mal eine "dumme" Frage.

Ich habe ein Array
Gewichtung : Array [1..9] of Integer; jetzt möchte ich gerne diesem Array Werte zuweisen.

Mit Gewichtung[1] := 1;
Gewichtung [2] := 2;
usw.

klappt ja auch gut.

Aber gibt es nicht eine einfachere Möglichkeit wie z.B.

Gewichtung := (1,2,3,4,5,6,7,8,9); <= dies geht nicht!

Über eine Antwort freue ich mich riesig.
Es gibt nichts Gutes, außer man tut es!
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#2

Re: Array mit Zahlen füllen

  Alt 26. Apr 2008, 16:27
Gewichtung : Array [1..9] of Integer = (1, 2, 3, 4, 5, 6, 7, 8, 9);
  Mit Zitat antworten Zitat
Stefan92

Registriert seit: 9. Jan 2007
146 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: Array mit Zahlen füllen

  Alt 26. Apr 2008, 16:33
Bei MuhKuh's Tipp darst du meines Wissens nicht mit lokalen Prozeduren arbeiten, es sei denn du benutzt das Schlüsselwort "const" statt "var", um eine typisierte Konstante zu erzeugen.
Und globale Variablen kann man auch nur ab Delphi 2.0 so initialisieren.

Gruß

Stefan
  Mit Zitat antworten Zitat
Tazidus

Registriert seit: 29. Mär 2005
Ort: Hilchenbach
44 Beiträge
 
#4

Re: Array mit Zahlen füllen

  Alt 26. Apr 2008, 16:37
Hallo,
danke für diesen Tipp.

Im Prinzip geht das schon, aber ich habe das Problem, dass ich eine Drei-Fall-Unterscheidung machen muß und hierbei ist lediglich die Gewichtung eine andere. Und ich wollte gerne eine Variable benutzen, die ich jeweils dann anpasse.

also sowas in der Art:

Delphi-Quellcode:
...
var
  Gewichtung : Array[1..9] of Integer;
Begin
  ...
  case xyz of
  1: Begin
       Gewichtung := ...
       ...
     end;
  2: Begin
       Gewichtung := ...
       ...
     end;
  3: Begin
       Gewichtung := ...
       ...
     end;
  end;
...

end;
Es gibt nichts Gutes, außer man tut es!
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#5

Re: Array mit Zahlen füllen

  Alt 26. Apr 2008, 16:39
Kann man diese Gewichtungen berechnen?
Dann könntest Du eine For-Schleife nehmen und damit das Array füllen.
  Mit Zitat antworten Zitat
Dax
(Gast)

n/a Beiträge
 
#6

Re: Array mit Zahlen füllen

  Alt 26. Apr 2008, 16:42
Delphi-Quellcode:
type
  TGewichtung = array[1..9] of Integer;

Procedure SetArray(var arr: TGewichtung; values: array of Integer);
var i: Integer;
begin
  for i := Low(arr) to High(arr) do
    if i >= Length(values) then
      arr[i] := 0
    else
      arr[i] := values[i-1];
end;

SetArray(Gewichtung, [1,2,3,4,5,6,7,8,9]);
  Mit Zitat antworten Zitat
Tazidus

Registriert seit: 29. Mär 2005
Ort: Hilchenbach
44 Beiträge
 
#7

Re: Array mit Zahlen füllen

  Alt 26. Apr 2008, 16:51
Im Prinzip wäre all dies möglich, aber die Gewichtung dient der Ermittlung einer Prüfziffer.

Und da ist die Gewichtung einmal [1,2,1,2,1,2,1,2,1] oder [1,3,5,7,9,11,2,4,6] oder aber auch [1,2,3,3,2,1,1,1]

Diese Gewichtung ist leider vorgegeben und kann nicht berechnet werden.
Es gibt nichts Gutes, außer man tut es!
  Mit Zitat antworten Zitat
Stefan92

Registriert seit: 9. Jan 2007
146 Beiträge
 
Delphi 7 Enterprise
 
#8

Re: Array mit Zahlen füllen

  Alt 26. Apr 2008, 19:00
Hast du den Vorschlag von Dax überhaupt gelesen? Damit klappt das doch wunderbar, du rufst seine Prozedur einfach je nach Bedarf mit den entsprechenden Werten auf.

Gruß

Stefan
  Mit Zitat antworten Zitat
Namenloser

Registriert seit: 7. Jun 2006
Ort: Karlsruhe
3.724 Beiträge
 
FreePascal / Lazarus
 
#9

Re: Array mit Zahlen füllen

  Alt 26. Apr 2008, 20:09
Andere Möglichkeit: Lege eine Konstante mit den Initialisierungswerten an und weise diese zu Beginn deiner Variable zu.
  Mit Zitat antworten Zitat
Tazidus

Registriert seit: 29. Mär 2005
Ort: Hilchenbach
44 Beiträge
 
#10

Re: Array mit Zahlen füllen

  Alt 28. Apr 2008, 13:24
Hallo,
ich habe mir die Sache noch einmal angesehen.
Anfangs war ich ja nicht so angetan, von der Möglichkeit mit der function/procedure

Aber jetzt werde ich das wohl so machen. Ist die beste Lösung finde ich.

Danke!
Es gibt nichts Gutes, außer man tut es!
  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 10:35 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