Avatar billede mick Nybegynder
09. oktober 1999 - 12:54 Der er 3 løsninger

Chr værdi -> Variabel

Jeg har følgende kode :

FOR teller := 97 TO 122 DO BEGIN
temp := Chr(teller);
ListBox1.Items.Add(temp+IntToStr(???));
END;

Her skrives bogstaverne fra a til z på skærmen. Men så har jeg også 26 variabler med navn fra a til z (integer). Hvordan får jeg Delphi til at skrive den variabel i (???), som svarer til den verdi temp har?

Eks: teller=97 -> temp="a"
Værdien af variablen med navnet a skal så skrives i (???).

Håper i forstår min kaotiske forklaring!
Avatar billede jany Nybegynder
09. oktober 1999 - 15:22 #1
Hvis jeg forstår deg riktig så har du variabler med navnene: a,b,c..z?

Er det ikke enklere å bruke en array?

Som:
  minvar : array [1..26] of char;
(eller string, hva som helst)

Er ikke helt sikker på hva du mener her...
Avatar billede primeware Nybegynder
09. oktober 1999 - 17:20 #2
Const
  MineNavne : Array[1..26] of String = ('Arne','Bente',....osv');

Begin
FOR teller := 97 TO 122 DO BEGIN
temp := Chr(teller);
ListBox1.Items.Add(temp+Minenavne[Teller-96]);
END;

Ved ikek om det er dette du leder efter, men sådan forstår jeg dit spørgsmål
Avatar billede erikjacobsen Ekspert
09. oktober 1999 - 19:51 #3
Hvis du rent faktisk har 26 variabler som dette:

  var a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z: integer;

vil den eneste måde være følgende:
   
    xxx:=17;
    case chr(teller) of
      'a': a:=xxx;
      'b': b:=xxx;
      'c': c:=xxx;
osv.
      'z': z:=xxx;
    end;

(det havde været trivielt i PHP :-) )

MEN du skal i stedet for lave et array, meget nemmere:

  var a: array ['a'..'z'] of integer;

for så:

    xxx:=17;
    a[chr(teller)]:=xxx;

Bingo.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester