Pascal/Turbo Pascal - Guardar Matriz en archivo

 
Vista:

Guardar Matriz en archivo

Publicado por Diego Fajardo (8 intervenciones) el 30/06/2002 04:04:06
necesito el procedimiento para almacenar una matriz en un archivo
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:Guardar Matriz en archivo

Publicado por JimmyG (3 intervenciones) el 30/06/2002 07:58:15
Debes crear un archivo de registro y este a su ves debe tener en su (s )campo(s) la matriz.
Si no puedes con el, me avisas, con gusto te ayudaré, en este momento es tarde y estoy un poco cansado! Perdona!
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 yax

RE:Guardar Matriz en archivo

Publicado por yax (1 intervención) el 19/04/2014 23:26:42
Hola, yo necesito lo mismo!

se como almacenar datos "planos" en un archivo, y por otra parte, sé como formar una matriz, pero no se como guardar la matriz en un archivo.

lo que pasa es que el archivo lo guardo con un: < assign(variable,'c:\ubicacion\nombre del archivo.txt');
pero eso solo me guarda la variable de tipo text, y en el caso de la matriz el tipo es matriz
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:Guardar Matriz en archivo

Publicado por ramon (2158 intervenciones) el 20/04/2014 19:29:24
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
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
{Mirar este ejemplo a ver si ayuda}
 
 program matrizes;
 uses
   crt;
 const
     max = 10;
 
 type
   matriz = array[1..max,1..max] of integer;
   string3 = string[3];
  var
    f : text;
    tempo, dato : matriz;
    i, t : integer;
 
 
   procedure cargamatriz(var d : matriz);
   var
     x, y, p : integer;
    begin
       randomize;
       for x := 1 to max do
       begin
         for y := 1 to max do
         begin
            p := random((max * max)) + 1;
            d[y,x] := p;
         end;
       end;
    end;
 
   procedure guardamatriz(m : matriz);
   begin
      i := 1;
      assign(f,'Misdatos.txt');
     {$I-} reset(f); {$I+}
       if ioresult <> 0 then
       begin
          rewrite(f);
          for t := 1 to max do
          begin
          write(f,m[t,i]);
          write(f,' ');
          end;
          write(f,#10#13);
          close(f);
         for i := 2 to max do
         begin
          append(f);
          for t := 1 to max do
          begin
          write(f,m[t,i]);
          write(f,' ');
          end;
          write(f,#10#13);
          close(f);
        end;
      end;
   end;
 
  procedure cargadatos(var tp : matriz);
  var
     da : char;
     l, error, nut : integer;
     numero : string3;
  begin
     assign(f,'Misdatos.txt');
     {$I-} reset(f); {$I+}
      if ioresult <> 0 then
      begin
         writeln('   Error De Archivo No Encontrado Pulse Una Tecla ');
         readkey;
      end
   else
     begin
         l := 1;
         i := 1;
         t := 1;
         while not eof(f) do
         begin
            read(f,da);
            if da = #10 then
            begin
            read(f,da);
            end;
            if da <> ' ' then
            begin
               numero[l] := da;
               numero[0] := chr(l);
               l := l + 1;
            end
         else
            begin
               val(numero,nut,error);
               if error <> 0 then
               begin
                  delete(numero,error,1);
                  val(numero,nut,error);
               end;
               tp[i,t] := nut;
               i := i + 1;
               if i > max then
               begin
                  t := t + 1;
                  i := 1;
               end;
               l := 1;
            end;
         end;
         close(f);
     end;
  end;
 
  begin
     textcolor(15);
     TextBackground(0);
     clrscr;
     assign(f,'Misdatos.txt');
   {$I-} reset(f); {$I+}
   if ioresult = 0 then
   begin
      writeln('Se Borra El Archivo');
      delay(120);
      close(f);
      erase(f);
   end;
      clrscr;
      writeln('           Matriz Cargada ');
      writeln;
      cargamatriz(dato);
      for t := 1 to max do
      begin
        for i := 1 to max do
        begin
           write('  ',dato[i,t]);
        end;
          writeln;
      end;
         guardamatriz(dato);
         writeln;
         cargadatos(tempo);
         writeln;
         for t := 1 to max do
         begin
           for i := 1 to max do
           begin
             write('  ',tempo[i,t]);
           end;
          writeln;
      end;
      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