Programación General > Pascal

 Actualizar un grafico

(1/2) > >>

Tripa:
hola a todos yo otra vez

tengo una duda aver si me pueden ayudar???????

tengo que hacer un programa el cual pueda incluir, modificar, excluiry mostrar  las ventas de una empresa. tiene que imprimir en un grafico de barras por meces los montos en  millones.

mi pregunta es la siguiente  :huh: como hago para unir y que se modifique el grafico al modificar las cantidades??.

si me pudiesen ayudar les agradeceria.

atte TrIp@

mau:
Puedes hacer un procedimiento que modifique el gráfico con base a las variables que ya debes tener.

Ejemplo
var
Unidades: integer;
Costo: integer;
Venta: integer;

Cuando modificas en pantalla algun valor (cargas la variable con el nuevo valor)
Entra a el procedimiento


Readln(Unidades);
Readln(Venta);
Costo := (Venta / 1.5) * Unidades;

#Con esta instruccion harás la llamada al procedimiento que te modificará el gráfico#

ModificarGrafico Unidades, Costo, Venta

#y el procedimiento, del que vale solo el encabezado, esta abajo#

procedure ModificarGrafico (UnidadesGr: integer;CostoGr: integer;VentaGr: integer;);
  begin
          #Aqui pones el código que llena el gráfico#
           #Lo usual es borrar el que esta en pantalla y graficar el nuevo con los         valores nuevos#
    end
  end;



Espero que con esto te hagas una idea.
Y si estoy mal, me corrigen, que hace años que no toco Pascal,  :hola:

Tripa:
Pura Vida MAU

si ya me hice una idea con tu ejemplo gracias por molestarte.

pura vida

Tripa:
mau Ayudame, o el que pueda

aqui esta el codigo del programa del que anterior mente les dige pero no se como pornerle un grafico de barra con base en las ganancias de los meses
se los pongo para ver si me pueden ayudar


--- Código: Text --- program examen_3; uses crt;typemeces = recordene,feb,mar,abr,may,jun,jul,ago,sep,oct,nov,dic:{longint}real;end;varop: char;mes:meces;  procedure inicio;beginclrscr;gotoxy(27, 25);textcolor(3);writeln('CALCULO DE VENTAS MENSUALES');delay(1600);textcolor(white);end; procedure incluir;beginclrscr;highvideo;gotoxy(20, 2); Writeln('---------------INCLUIR---------------');lowvideo;textcolor(3);gotoxy(5, 5); writeln('Digite la ganancia de cada mes, en millones');textcolor(white);gotoxy(3, 10); Writeln('ENERO = ');gotoxy(12, 10); readln(mes.ene);gotoxy(3, 12); Writeln('FEBRERO = ');gotoxy(14, 12); readln(mes.feb);gotoxy(3, 14); Writeln('MARZO = ');gotoxy(12, 14); readln(mes.mar);gotoxy(3, 16); Writeln('ABRIL = ');gotoxy(12, 16); readln(mes.abr);gotoxy(3, 18); Writeln('MAYO = ');gotoxy(11, 18); readln(mes.may);gotoxy(3, 20); Writeln('JUNIO = ');gotoxy(12, 20); readln(mes.jun);gotoxy(3, 22); Writeln('JULIO = ');gotoxy(12, 22); readln(mes.jul);gotoxy(3, 24); Writeln('AGOSTO = ');gotoxy(13, 24); readln(mes.ago);gotoxy(3, 26); Writeln('SEPTIEMBRE = ');gotoxy(17, 26); readln(mes.sep);gotoxy(3, 28); Writeln('OCTUBRE = ');gotoxy(14, 28); readln(mes.oct);gotoxy(3, 30); Writeln('NOVIEMBRE = ');gotoxy(16, 30); readln(mes.nov);gotoxy(3, 32); Writeln('DICIEMBRE = ');gotoxy(16, 32); readln(mes.dic);end;procedure ene;begingotoxy(10, 20);writeln('El mes es ENERO y la cantidad anterior es: ', mes.ene:9:2);gotoxy(10, 22);writeln('Digite la cantidad por la que se quiere modificar: ');gotoxy(62, 22);readln(mes.ene);end; procedure feb;begingotoxy(10, 20);writeln('El mes es FEBRERO y la cantidad es: ', mes.feb:9:2);gotoxy(10, 22);writeln('Digite la cantidad por la que se quiere modificar: ');gotoxy(62, 22);readln(mes.feb);end; procedure mar;begingotoxy(10, 20);writeln('El mes es MARZO y la cantidad anterior es: ', mes.mar:9:2);gotoxy(10, 22);writeln('Digite la cantidad por la que se quiere modificar: ');readln(mes.mar);gotoxy(62, 22);readln(mes.mar);end; procedure abr;begingotoxy(10, 20);writeln('El mes es ABRIL y la cantidad anterior es: ', mes.abr:9:2);gotoxy(10, 22);writeln('Digite la cantidad por la que se quiere modificar: ');readln(mes.abr);gotoxy(62, 22);readln(mes.abr);end; procedure may;begingotoxy(10, 20);writeln('El mes es MAYO y la cantidad anterior es: ', mes.may:9:2);gotoxy(10, 22);writeln('Digite la cantidad por la que se quiere modificar: ');readln(mes.may);gotoxy(62, 22);readln(mes.may);end; procedure jun;begingotoxy(10, 20);writeln('El mes es JUNIO y la cantidad anterior es: ', mes.jun:9:2);gotoxy(10, 22);writeln('Digite la cantidad por la que se quiere modificar: ');readln(mes.jun);gotoxy(62, 22);readln(mes.jun);end; procedure jul;begingotoxy(10, 20);writeln('El mes es JULIO y la cantidad anterior es: ', mes.jul:9:2);gotoxy(10, 22);writeln('Digite la cantidad por la que se quiere modificar: ');readln(mes.jul);gotoxy(62, 22);readln(mes.jul);end; procedure ago;begingotoxy(10, 20);writeln('El mes es AGOSTO y la cantidad anterior es: ', mes.ago:9:2);gotoxy(10, 22);writeln('Digite la cantidad por la que se quiere modificar: ');readln(mes.ago);gotoxy(62, 22);readln(mes.ago);end; procedure sep;begingotoxy(10, 20);writeln('El mes es SEPTIEMBRE y la cantidad anterior es: ', mes.sep:9:2);gotoxy(10, 22);writeln('Digite la cantidad por la que se quiere modificar: ');readln(mes.sep);gotoxy(62, 22);readln(mes.sep);end; procedure oct;begingotoxy(10, 20);writeln('El mes es OCTUBRE y la cantidad anterior es: ', mes.oct:9:2);gotoxy(10, 22);writeln('Digite la cantidad por la que se quiere modificar: ');readln(mes.oct);gotoxy(62, 22);readln(mes.oct);end; procedure nov;begingotoxy(10, 20);writeln('El mes es NOVIEMBRE y la cantidad anterior es: ', mes.nov:9:2);gotoxy(10, 22);writeln('Digite la cantidad por la que se quiere modificar: ');readln(mes.nov);gotoxy(62, 22);readln(mes.nov);end; procedure dic;begingotoxy(10, 20);writeln('El mes es DICIEMBRE y la cantidad anterior es: ', mes.dic:9:2);gotoxy(10, 22);writeln('Digite la cantidad por la que se quiere modificar: ');readln(mes.dic);gotoxy(62, 22);readln(mes.dic);end; procedure modificar; varop1:char;beginclrscr;gotoxy(22, 1);Writeln('---------------MODIFICAR---------------');gotoxy(12, 5);textcolor(3);writeln('DIGITE LA LETRA RESPECTIVA AL MES QUE DESEA MODIFICAR');gotoxy(12, 7);writeln('PARA EXCLUIR EL MES PRESIONE "0" (CERO) '); textcolor(green);gotoxy(5, 40);writeln('A - ENERO ');gotoxy(25, 40); writeln('E - MAYO ');gotoxy(44,40);writeln('I - SEPTIEMBRE');gotoxy(5, 41);writeln('B - FEBRERO ');gotoxy(25, 41); writeln('F - JUNIO');gotoxy(44,41);writeln('J - OCTUBRE');gotoxy(5, 42);writeln('C - MARZO ');gotoxy(25, 42); writeln('G - JULIO');gotoxy(44,42);writeln('K - NOVIEMBRE');gotoxy(5, 43);writeln('D - ABRIL ');gotoxy(25, 43); writeln('H - AGOSTO');gotoxy(44,43);writeln('L - DICIEMBRE');textcolor(white);op1:=readkey;  case (op1) of      'A','a': ene;     'B','b': feb;     'C','c': mar;     'D','d': abr;     'E','e': may;     'F','f': jun;     'G','g': jul;     'H','h': ago;     'I','i': sep;     'J','j': oct;     'K','k': nov;     'L','l': dic;  end;end;  procedure menuprincipal;   beginclrscr;gotoxy(30,10);textcolor(yellow); writeln('MENU PRINCIPAL');textcolor(white);highvideo; textbackground(blue);gotoxy(33, 14); writeln('Incluir');gotoxy(33, 16); writeln('Modificar O Excluir');gotoxy(33, 18); writeln('Grafica');lowvideo;textbackground(black);gotoxy(5, 30); writeln('Presione la primer letra de la pababra para ingresar en ella');gotoxy(25, 40); writeln('Para SALIR presione "S" ');op:=readkey;   case (op) of        'I','i': incluir;        'M','m': modificar;               {        'G','g': grafica;}end;end; procedure fin;begin    clrscr;gotoxy(30, 25);    writeln('fin del programa');    delay(1000);    clrscr;end;begininicio;repeatmenuprincipal;until (op = 's') or (op= 'S');finend.  

COMO LE INCERTO UN GRAFICO A ESO!!!!

Attakinsky:
Para mí es una gran aberración hacer un  PROCEDURE  para cada mes. Deberías hacerlo como uno solo y hacer que sea dinámico, es decir tu envias como parámetro el mes a trabajar.

Piensalo un poco, así tu codigo será más pequeño y más fácil de depurar.

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

Ir a la versión completa