PDA

Ver la Versión Completa : Revertir numeros


Jose Meneses
15-04-2009, 23:45:15
Hola amigos, otra vez le doy gracias al foro por permitirme a preguntar cosas que yo no sé. El día de hoy me dejaron una tarea acerca de vectores y stringgrids de ingresar un numero en una columna ej: 1498234 y en la columna de abajo de el stringgrid tiene que desplegar el numero reverso ej: 4328914, OJO : no se pueden usar DOWNTO y hay que ponerle el limite de columnas que el usuario quiere, también tiene que ser en windows application,, muchas gracias por su atención y por la intención de ayudarmme...:):):):)

Caro
16-04-2009, 02:41:33
Hola Jose, no entiendo muy bien donde exactamente esta tu duda, sería bueno que intentaras hacerlo y nos dijeras donde te estas trancando, te pongo el ejemplo para invertir el numero.


var
Num, Aux, Dig : Integer;
begin
Num := StrToInt(StringGrid.Cells[TuColumna, TuFila]);
Aux := 0;
While Num>0 Do
begin
Dig := Num Mod 10;
Aux := Aux*10 + Dig;
Num := Num Div 10;
end;
StringGrid.Cells[TuNuevaColumna, TuFila] := IntToStr(Aux);


Saluditos

DarkMan
17-04-2009, 00:01:26
Dándote el valor en formato string es incluso más fácil que pasándolo a integer:

...
var
Temp: String;
Buffer : Integer;
Resultado: String;
begin
Resultado:='';
Temp := StringGrid.Cells[TuColumna, TuFila];

For Buffer:=0 to Length(Temp)-1 do
Resultado:= Resultado + Temp[ Length(Temp)- Buffer ];

StringGrid.Cells[TuNuevaColumna, TuFila] := Resultado;
...


OJO : no se pueden usar DOWNTO

Pues no entiendo por qué, quedaría más fácil aún:

...
var
Temp: String;
Buffer : Integer;
Resultado: String;
begin
Resultado:='';
Temp := StringGrid.Cells[TuColumna, TuFila];

For Buffer:=Length(Temp) downto 1 do
Resultado:= Resultado + Temp[ Buffer ];

StringGrid.Cells[TuNuevaColumna, TuFila] := Resultado;
...

Caro
17-04-2009, 05:07:44
Hola, también se tiene la función ReverseString.


StringGrid.Cells[TuNuevaColumna, TuFila] := ReverseString(StringGrid.Cells[TuColumna, TuFila])


Saluditos

Jose Meneses
23-04-2009, 00:01:25
Caro mil gracias, ademas no sabia lo del reverse string, me has ayudado!! mil mil gracias:):):):):):):)