Skip to the content.

contributions welcome GitHub stars GitHub repo size in bytes

💻EJEMPLOS


EJEMPLO 1) Teniendo en cuenta la tabla, calcular la memoria estatica, dinamica y tel tiempo de ejecución.

| Tipo de dato | Memoria | | ————- | ————- | | Char | 1 byte | | Integer | 6 byte | | Real | 8 byte | | Boolean | 1 byte | | String | Longitud + 1 byte | | Puntero | 4 byte |

program Ejercicio5;
const 
  dimF = 100;
type
  rango = 1..dimF;
  vector = array [rango] of ^real;
var
  v:vector;
  dimL,i:integer;
 begin
  dimL:=50;
  for i:=1 to dimL do
  begin
    new(v[i]);
    read(v[i]^);
  end;
  for i:=1 to 25 do 
    v[i]:=nil;
  for i:=26 to 50 do
    dispose(v[i]);
end.

💾🧍‍♂️ Memoria Estatica.

var
  v:vector;  100 * 4 = 400 Es un vector de punteros
  dimL,i:integer; 6 + 6 = 12

Memoria estatica = 400 + 12

Memoria estatica = 412

💾🏃 Memoria Dinamica.

 begin
  dimL:=50;
  for i:=1 to dimL do
  begin
    new(v[i]); (4(nodo) + 8(real)) * dimL
    read(v[i]^);
  end;
  for i:=1 to 25 do 
    v[i]:=nil;
  for i:=26 to 50 do
    dispose(v[i]); -((4(nodo) + 8(real)) * 25)
end.

Resultado:

Memoria Dinamica = ((4(nodo) + 8(real)) * dimL) + -(((4(nodo) + 8(real)) * 25)

Memoria Dinamica = ((4(nodo) + 8(real)) * 100) + -(((4(nodo) + 8(real)) * 25)

Memoria Dinamica = (12 * 100) + -(12 * 25)

Memoria Dinamica = (1200) - (300)

Memoria Dinamica = 900

Memoria Total = Memoria Estatica + Memoria Dinamica

Memoria Total = 412 + 900

Memoria Total = 1312

⌚💀🔪 Tiempo de Ejecución.

 begin
  dimL:=50;  + 1ut
  for i:=1 to dimL do  (3*100 + 2)
  begin
    new(v[i]);  + 1ut
    read(v[i]^);
  end; 
  = (3*100 + 2) + (100 * 1ut) 
  = 302ut + 100ut 
  = 402ut
  for i:=1 to 25 do  (3*25 + 2)
    v[i]:=nil; + 1ut
  = (3 * 25 + 2) + (25 * 1ut) 
  = 102ut
  for i:=26 to 50 do (3 * 25 + 2)
    dispose(v[i]); + 1ut
  = (3 * 25 + 2) + (25 * 1ut) 
  = 102ut
end.

Resultado = 1ut + 402ut + 102ut + 102ut

Resultado = 607ut </table>