Pascal/Turbo Pascal - REpeat until....

 
Vista:
sin imagen de perfil
Val: 6
Ha aumentado su posición en 2 puestos en Pascal/Turbo Pascal (en relación al último mes)
Gráfica de Pascal/Turbo Pascal

REpeat until....

Publicado por almudena (64 intervenciones) el 30/10/2012 12:26:28
Hola, de nuevo por aqui, os cuento
Estoy haciendo unos ejercicios, pero tengo un problema con uno. Este ejercicio se divide en 2 partes. El enunciado de la primera parte es este:

"Realizar un programa que utilizando una estructura repetitiva (bucle) presente por pantalla los números del 1 al 10 separados por un guión. El resultado debe ser parecido a:

1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 - 10 -"

Esta 1º parte ya la he hecho

El problema es la 2º parte. El enunciado de la 2º parte es:

"Modifique el programa de la cuestión anterior para que solicite al usuario desde y hasta que número quiere presentar por pantalla. Añadir un control a este programa para asegurar que el valor final sea mayor que el inicial. En caso contrario se deberá volver a pedir los valores al usuario.

El resultado debe ser parecido a:

Introduzca valor inicial: 6
Introduzca valor final: 14

6 - 7 - 8 - 9 - 10 - 11 - 12 - 13 - 14 -"

Podria ser algo asi?

program Repeticion_nume2;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
var valorInicial, valorFinal : Integer;
Begin
valorInicial : ;
valorFinal : ;
REPEAT
          Write ' Introduzca Valor Inicial: ' ;
          Readln (ValorInicial);
          Write 'Introduzca Valor Final: ';
          Readln (ValorFinal);
     UNTIL (ValorInicial<ValorFinal) ;
REPEAT
           Write(valorInicial,' - ');
           valorInicial:=valorInicial+1;
        UNTIL valorInicial>valorFinal;
		readln;
end.
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
sin imagen de perfil
Val: 6
Ha aumentado su posición en 2 puestos en Pascal/Turbo Pascal (en relación al último mes)
Gráfica de Pascal/Turbo Pascal

REpeat until....

Publicado por almudena (64 intervenciones) el 30/10/2012 13:05:38
RESUELTO perdonen las molestias
gracias
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
Imágen de perfil de xve

REpeat until....

Publicado por xve (25 intervenciones) el 30/10/2012 15:33:26
Hola Almudena, como lo has resulto? nos puedes comentar?
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
sin imagen de perfil
Val: 6
Ha aumentado su posición en 2 puestos en Pascal/Turbo Pascal (en relación al último mes)
Gráfica de Pascal/Turbo Pascal

REpeat until....

Publicado por almudena (64 intervenciones) el 30/10/2012 15:36:59
Por ejemplo el primer repeat-until sobraria se dan valores al valorinicial y final y listo
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

REpeat until....

Publicado por antonio (2 intervenciones) el 05/05/2016 16:32:24
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Program Bucle;
var valorinicial, valorfinal conta:integer;
begin
write ('Introduzca valor inicial: ');
readln (valorinicial);
write ('Introduzca valor final: ');
readln (valorfinal);
while (valorinicial>valorfinal) do
 begin
 write ('Introduzca valor inicial: ');
 readln (valorinicial);
 write ('Introduzca valor final: ');
 readln (valorfinal);
 end;
 for numero := valorinicial to valorfinal do
write (conta,'-');
readkey;
yo hice esto me podrias decir el fallo?
lo antes posible
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

REpeat until....

Publicado por ramon (2158 intervenciones) el 31/10/2012 16:32:21
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
{Te dejo este ejemplo puesto que si entras un valor mayor en el primer numero que en el
 segundo veras que tendrás error esto te ayudara suerte}
 
program numeros;
 uses
    crt;
 var
   tt, num1, num2 : integer;
 
 begin
    clrscr;
    write(' Entre 1§ numero : ');
    readln(num1);
    write(' Entre 2§ numero : ');
    readln(num2);
    if num1 > num2 then
    begin
    tt := num1;
    num1 := num2;
    num2 := tt;
    end;
    clrscr;
    tt := num1;
    repeat
    if tt < num2 then
    write(tt,'-')
  else
    write(tt);
    tt := tt + 1;
    until tt > num2;
    readln;
  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
sin imagen de perfil
Val: 35
Ha disminuido 1 puesto en Pascal/Turbo Pascal (en relación al último mes)
Gráfica de Pascal/Turbo Pascal

REpeat until....

Publicado por Enrique Martin (15 intervenciones) el 03/02/2019 13:55:00
Aqui dejo otra solución por si ayuda a alguien:


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
Program PideCadenaNumeros;
 
 var
 (*Declaramos el contador del bucle y los dos numeros que
   pediremos al usuario/a, todos de tipo entero*)
   contador: integer;
   num1: integer;
   num2: integer;
 
 begin
  (*Iniciamos el cuerpo del programa con el bucle iterativo Repeat-until
    para asegurarnos que el primer numero siempre sera menor que el segundo*)
 
   repeat
    writeln ('Recuerde el primer numero siempre menor que el segundo');
    writeln;
    write ('Introduzca primer numero:   ');
    readln(num1);
    writeln;
    write ('Introduzca segundo numero:  ');
    readln(num2);
    writeln;
   (*En until establecemos la condicion para dejar de repetir el bucle*)
   until (num1<num2);
 
   (*Cuando la condicion se cumple iniciamos la siguiente sentencia,
     otro bucle que recorrerá los numeros entre num1 y num2,
     durante su recorrido mostrará por pantalla los resultados*)
 
   for contador := num1 to num2 do
     write( contador, ' - ');
     readln();
 end.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar