Pascal/Turbo Pascal - Problemas pascal

   
Vista:
Imágen de perfil de carlos

Problemas pascal

Publicado por carlos (4 intervenciones) el 07/04/2016 06:10:17
multiplos
pares-e-impares

Hola, pues me dejaron de tarea hacer estos problemas, pero mi profesor no ha atendido correctamente mis dudas y realmente no se como empezar a hacer estos programas, si me pudieran ayudar estaría muy agradecido.

Gracias por su atención
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

Problemas pascal

Publicado por dario (20 intervenciones) el 09/04/2016 05:19:45
Hola, no entiendo bien el ejercicio Nro 1. Podrias poner un ejemplo.
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
Imágen de perfil de carlos

Problemas pascal

Publicado por carlos (4 intervenciones) el 09/04/2016 05:52:59
Hola, gracias por responder. Se supone que puede hacerse con una estructura cíclica ya sea Repeat-Until, While-Do o For-Do.
Cada vez que coloques un número y lo dividas entre otro número que desees el módulo debe de ser 0, para que aparezca el mensaje de que el número es múltiplo de tal o no.
Por ejemplo, colocas el número 30 y el otro número es 1 por lo que el módulo nos dará 0 (operación sin residuo) y aparecerá el mensaje de que si es múltiplo, pero si ponemos 7 como el divisor , entonces el residuo será mayor a 1 por lo que el número no es múltiplo del otro. Sobre el contador, eso realmente no lo entiendo.

Muchas 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

Problemas pascal

Publicado por ramon (2072 intervenciones) el 12/04/2016 16:43:36
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
[Mira esto a ver si ayuda ]
 
program multiplos;
 uses
    crt;
  var
    numero, inicio, cuantos, contador : integer;
    alantatras : char;
    arraynum : array[1..100] of integer;
 
   procedure numeros_multiplos(n : integer);
   var
     e, ep : integer;
   begin
      contador := 0;
      e := 1;
      for ep := 1 to n do
      if n mod ep = 0 then
      begin
      arraynum[e] := ep;
      e := e + 1;
      end;
      contador := e;
   end;
 
   procedure presenta(nm, des, cuan : integer; direc : char);
   var
     ss, cc, gg, tt : integer;
   begin
      numeros_multiplos(nm);
      gg := 1;
      if direc = 'D' then
      begin
      if contador > des then
      begin
      cc := contador;
      ss := des;
      end
    else
       begin
         cc := des;
         ss := contador;
       end;
      for tt := ss to cc do
      begin
         if arraynum[tt] > 0 then
         begin
         write('  ',arraynum[tt]);
         gg := gg + 1;
         end;
         if gg > cuan then
         break;
      end;
    end;
      if direc = 'I' then
      begin
      for tt := des downto 1 do
      begin
         if arraynum[tt] > 0 then
         begin
         write('  ',arraynum[tt]);
         gg := gg + 1;
         end;
         if gg > cuan then
         break;
      end;
    end;
   end;
 
   begin
      clrscr;
      presenta(72,10,5,'D');
      readkey;
   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

Problemas pascal

Publicado por Ricardo (4 intervenciones) el 17/04/2016 01:04:07
No necesitas un array para este problema. Eliminalo y tendrás menos restricciones.
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

Problemas pascal

Publicado por ramon (2072 intervenciones) el 17/04/2016 13:37:18
El contador es para saber cuantos números se an cargado en el array para la presentación.
pero si no necesitas tener array y quieres presentar solo los números as esto.

1
2
3
4
5
6
7
8
9
10
procedure numeros_multiplos(n : integer);
   var
     ep : integer;
   begin
      for ep := 1 to n do
      if n mod ep = 0 then
      begin
      write(' ',ep);;
      end;
   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