Pascal/Turbo Pascal - 2.2 tema 7

 
Vista:
sin imagen de perfil

2.2 tema 7

Publicado por Erik (73 intervenciones) el 26/03/2014 16:51:24
Hola, a partir de este codigo hacer lo siguiente:

Program Galeria;
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
uses
    crt;
  (*-- Constantes globales al programa -- *)
   Const
       TAMCOLECCION = 4;
 
   (*-- Tipos globales al programa -- *)
   Type
      coleccion = array[1..tamcoleccion] of real;
 
   (*-- Variables del módulo principal -- *)
    Var
    precios : Coleccion;
 
   (*-- Funciones y procedimientos -- *)
  procedure lee_tabla(var t : coleccion; n : integer);
  var
    i : integer;
  begin
     i := 1;
     writeln('  Entre Precio Cuadro ');
   while i < n + 1 do
   begin
      write('  Numero ',i,' : ');
      readln(t[i]);
      i := i + 1;
   end;
  end;
 
  procedure imprime_tabla(t : coleccion; n : integer);
  var
    i : integer;
  begin
     i := 1;
   writeln('  Los Resultados Son ');
   writeln;
   while i < n + 1 do
   begin
      writeln(' Num. : ',i,'  Precio : ',t[i]:0:2);
      i := i + 1;
   end;
  end;
 
 
 
 
    (*-- Programa Principal -- *)
   Begin
      clrscr;
      lee_tabla(precios, TAMCOLECCION);
      clrscr;
      imprime_tabla(precios, TAMCOLECCION);
      readln;
    End.

Partiendo del programa de la cuestión anterior (que es el codigo pascal de antes), sin modificar los procedimientos y funciones ya codificados, añada una función de nombre suma_coleccion que recorra la tabla y devuelva como resultado de la función, el valor total de la colección de cuadros.

Modifique a continuación el programa principal para que después de leer e imprimir la tabla, calcule la suma de la colección utilizando esta función, y la imprima por pantalla. Nuestro módulo principal debería tener la estructura:

(*-- Variables -- *)
Var
precios : Coleccion;
suma: real;

(*-- Programa Principal -- *)
Begin
lee_tabla(precios, TAMCOLECCION);
imprime_tabla(precios, TAMCOLECCION);

(* Aquí iría la llamada a la función suma_coleccion *)

(* Presentación de resultados *)
writeln('> Valor coleccion: ', suma:0:2);
End.

gracias de antemano
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

2.2 tema 7

Publicado por Diego (98 intervenciones) el 26/03/2014 18:42:57
Hay que reccorrer el arreglo sumando los elementos de el, en este caso son los precios.
luego simplemente haces un llamado a esa función y lo imprimis.


1
2
3
4
5
6
7
8
9
10
11
function  sumar_arreglo( var arreglo : coleccion) : real;
  var
     indice : integer;
     acumulador : real;
  begin
       for indice := 1 to TAMCOLECCION do
           begin
              acumulador := acumulador + arreglo[indice];
           end;
       sumar_arreglo := acumulador;
  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