Pascal/Turbo Pascal - preguntas!

 
Vista:

preguntas!

Publicado por vicky (2 intervenciones) el 26/04/2009 02:29:13
Les hago estas dos preguntatitas:

¿El valor límite o final del FOR puede ser cambiado dentro del lazo?

¿las variables locales (declaradas dentro de un proceso) aparecen en memoria desde que se empieza a ejecutar el programa?

GRACIAS.-
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:preguntas!

Publicado por Pablo Garcia Alvarez (10 intervenciones) el 26/04/2009 13:51:18
La primera pregunta: NO
en un for indicas las veces que se hará el bucle antes de empezarlo:
Ejemplo: FOR i:=1 TO 10
En un WHILE si:
Ejemplo:
a:=1;
WHILE a<10 DO
BEGIN
WRITELN(a);
INC(a);
END;

Y respecto a la segunda pregunta no estoy seguro...

PD: si me equivoque en algo corrijanme :)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:preguntas!

Publicado por vicky (2 intervenciones) el 26/04/2009 20:25:34
y si tengo

for i:=1 to nro

x ejemplo,nro es una variable
no puedo cambiar la variable nro a dentro de las acciones del for?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:preguntas!

Publicado por Pablo Garcia Alvarez (10 intervenciones) el 27/04/2009 13:22:39
que yo sepa te tira error el compilador...en un for va incrementandose (o decrementandose, segun, pero en tu caso incrementa) y si le modificas el contador dentro del bucle te da error al compilar, pruebalo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:preguntas!

Publicado por vivky (1 intervención) el 27/04/2009 13:47:34
es verdad,grax!

y sobre la segunda preguta,¿las variables locales (declaradas dentro de un proceso) aparecen en memoria desde que se empieza a ejecutar el programa?, q pensas?

saludos.-
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:preguntas!

Publicado por Ezequiel (1 intervención) el 27/04/2009 23:02:30
una consultaa... ?¿coomo hago un programa para q me pase un numero arabigo a uno romano?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:preguntas!

Publicado por MARTIN (74 intervenciones) el 07/05/2009 19:49:11
Los numeros romanos tienen, como sabrás, un uso limitado y, además, un mismo signo solo se puede repetir 3 veces seguidas; por ello este código fuente que te envio solo te convertirá correctamente hasta el 3999.
Espero te sirva de algo.
Un saludo: martin

program Convertir_arabes_a_romanos;
uses crt;
var
NumArabe, i, j : integer;
NumRomano : string;

begin
clrscr;

write('Introduce el numero arabigo: ');
readln(NumArabe);

NumRomano := '';

i := Numarabe div 1000;
case i of
1 : NumRomano := NumRomano+'M';
2 : NumRomano := NumRomano+'MM';
3 : NumRomano := NumRomano+'MMM'
end;

NumArabe := NumArabe Mod 1000;
i := NumArabe div 100;
case i of
1 : NumRomano := NumRomano+'C';
2 : NumRomano := NumRomano+'CC';
3 : NumRomano := NumRomano+'CCC';
4 : NumRomano := NumRomano+'CD';
5 : NumRomano := NumRomano+'D';
6 : NumRomano := NumRomano+'DC';
7 : NumRomano := NumRomano+'DCC';
8 : NumRomano := NumRomano+'DCCC';
9 : NumRomano := NumRomano+'CM'
end;

NumArabe := NumArabe Mod 100;
i := NumArabe div 10;
case i of
1 : NumRomano := NumRomano+'X';
2 : NumRomano := NumRomano+'XX';
3 : NumRomano := NumRomano+'XXX';
4 : NumRomano := NumRomano+'XL';
5 : NumRomano := NumRomano+'L';
6 : NumRomano := NumRomano+'LX';
7 : NumRomano := NumRomano+'LXX';
8 : NumRomano := NumRomano+'LXXX';
9 : NumRomano := NumRomano+'XC'
end;

NumArabe := NumArabe Mod 10;
case NumArabe of
1 : NumRomano := NumRomano+'I';
2 : NumRomano := NumRomano+'II';
3 : NumRomano := NumRomano+'III';
4 : NumRomano := NumRomano+'IV';
5 : NumRomano := NumRomano+'V';
6 : NumRomano := NumRomano+'VI';
7 : NumRomano := NumRomano+'VII';
8 : NumRomano := NumRomano+'VIII';
9 : NumRomano := NumRomano+'IX'
end;
textcolor(14);
gotoxy(34,12);
write(NumRomano)
end.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar