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!
					
		
	 
		
								
					
				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...
		
		
	 
	
		
								
					
				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
		
		
	 
	
		
								
					
				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.