• Viernes 8 de Noviembre de 2024, 12:41

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Temas - ALCEST

Páginas: [1]
1
Pascal / Error En Free Pasacal Al Compilar
« en: Miércoles 3 de Octubre de 2007, 01:18 »
Hola!
bueno ahi va mi consulta. Cuando Intento compilar me sale el siguiente mensaje en Free Pasacal:

"Program generated a signal 291. Save your sources and restart the IDE" reinicio el IDE pero sigue el mismo problema.


Citar
program parcial2004_ej3;
uses
        crt;
type
        dia=1..31;
        mes=1..12;
        anio=0..99;
        cargo=(Gerente,Supervisor,Jefe_secc,Administrativo);
        horas=0..23;
        minu=0..59;
        actividades=record
                   descrip:string[50];
                   dd:dia;
                   mm:mes;
                   aa:anio;
                   hr:horas;
                   min:minu;
                   end;

        act_empleado=array[1..100]of actividades;

        empleado=record
                dni:longint;
                nombre:string[50];
                carg:cargo;
                lis_act:act_empleado;
                end;

        lis_emp=array[1..100]of empleado;
var
        l_e:lis_emp;
        n:byte;

procedure carga_empleados(var l_e1:lis_emp;var n1:byte);
type
        rango=1..4;conjunto=set of rango;
var
        i,j,m:byte;conj:conjunto;op:byte;
begin
     clrscr;
     conj:=[1,2,3,4];
     write('Ingrese cantidad de empleados a cargar: ');
     readln(n1);
     writeln;
     for i:=1 to n1 do
        with l_e1 do
            begin
                 write('Ingrese D.N.I.: ' );
                 readln(dni);
                 write('Ingrese nombre: ');
                 readln(nombre);
                 writeln;
                 repeat
                       writeln('Elija cargo');
                       writeln('----- -----');
                       writeln('(1) - Gerente');
                       writeln('(2) - Supervisor');
                       writeln('(3) - Jefe_Secc');
                       writeln('(4) - Administrativo');
                       writeln;
                       readln(op);
                       case op of
                           1:carg:=Gerente;
                           2:carg:=Supervisor;
                           3:carg:=Jefe_secc;
                           4:carg:=Administrativo;
                       else
                           writeln('Opción incorrecta, intente de nuevo');
                       end;
                 until op in conjunto;
                 write('Ingrese cantidad de actividades para este empleado:');
                 readln(m)
                 for j:=1 to m do
                    with act_empleado[j] do
                        begin
                             writeln('Ingrese descripción de la actividad: ');
                             readln(descrip);
                             writeln('Ingreso de inicio de actividad');
                             writeln;
                             write('Día: (dd)');
                             readln(dd);
                             write('Mes: (mm)');
                             readln(mm);
                             write('Año: (aa)');
                             readln(aa);
                             write('Hora: (hh)');
                             readln(hr);
                             write('Minutos: (mm)');
                             readln(min);
                             readln;
                        end;
            end;
end;

Si alguien me ayuda les estaría agradecido
Gracias

2
Pascal / Programa Encuesta
« en: Miércoles 5 de Septiembre de 2007, 00:07 »
Hola

Bueno si alguien tiene tiempo y sugiere alguna mejora sera bienvenida, a continuación el enunciado del problema.

Un grupo de personas completan un cuestionario respondiendo si leen los diarios A, B o C. Realice un programa q informe cuantas personas leen sólo el diario A, cuantos leen los tres diarios, cuantos no leen diarios y cuantos no leen el diario A pero si algun otro.


Citar
program tp3ej1;
uses
        crt;
var
        op_a,op_b,op_c,opcion:char;
        leen_abc,solo_leen_a,no_leen,leen_solo_b_o_c:integer;
        bandera:boolean;
begin
    clrscr;
    leen_abc:=0;
    solo_leen_a:=0;
    no_leen:=0;
    leen_solo_b_o_c:=0;
    repeat
        clrscr;
        bandera:=false;
        repeat
             writeln('Usted lee el diario A ? (S/N): ');
             readln(op_a);
             op_a:=upcase(op_a);
             if op_a='S' then
                bandera:=true
             else
                if op_a='N' then
                  bandera:=true;
        until bandera;
        bandera:=false;
        repeat
             writeln('Usted lee el diario B ? (S/N): ');
             readln(op_b);
             op_b:=upcase(op_b);
             if op_b='S' then
                bandera:=true
             else
                if op_b='N' then
                  bandera:=true;
        until bandera;
        bandera:=false;
        repeat
             writeln('Usted lee el diario C ? (S/N): ');
             readln(op_c);
             op_c:=upcase(op_c);
             if op_c='S' then
                bandera:=true
             else
                if op_c='N' then
                  bandera:=true;
        until bandera;

        if op_a = 'S' then
          begin
           if op_b = 'S' then
             begin
              if op_c = 'S' then
                 leen_abc:=leen_abc+1
             end
           else
               if op_c = 'N' then
                  solo_leen_a:=solo_leen_a+1
          end
        else
           begin
            if op_b = 'N' then
              begin
               if op_c = 'N' then
                  no_leen:=no_leen+1
               else
                   leen_solo_b_o_c:=leen_solo_b_o_c+1
              end
            else
                leen_solo_b_o_c:=leen_solo_b_o_c+1
           end;

        writeln('Ingrese F para finalizar encuesta');
        writeln('Ingrese C para continuar encuesta');
        readln(opcion);
        opcion:=upcase(opcion);
    until opcion = 'F';
    clrscr;
    writeln(solo_leen_a,' personas sólo leen el diario A.');
    writeln(leen_abc,' personas leen los diarios A,B,C.');
    writeln(no_leen,' personas no leen ningún diario.');
    writeln(leen_solo_b_o_c,' personas leen los diarios B o C.');
    readln;
end.


:comp:

3
Pascal / Tipos De Datos
« en: Sábado 25 de Agosto de 2007, 23:11 »
Me piden que defina tipos para un registro con número y palo de naipe

alguien me recomienda algo mejor q lo siguiente?

Citar
program palo_diamante;
uses
        crt;
type
        rango = 1..13;
        vector=array[rango] of string;
        diamantes = record
                vec_diamantes:vector;
                end;



var
        palo_diamantes:diamantes;
        i:byte;

begin
     clrscr;
     with palo_diamantes do
        begin
            vec_diamantes[1]:='As';
            vec_diamantes[2]:='2';
            vec_diamantes[3]:='3';
            vec_diamantes[4]:='4';
            vec_diamantes[5]:='5';
            vec_diamantes[6]:='6';
            vec_diamantes[7]:='7';
            vec_diamantes[8]:='8';
            vec_diamantes[9]:='9';
            vec_diamantes[10]:='10';
            vec_diamantes[11]:='Valet';
            vec_diamantes[12]:='Dame';
            vec_diamantes[13]:='Roi';
        end;
     writeln('Palo de diamantes: ');
     writeln('---- -- --------- ');
     with palo_diamantes do
        for i:=1 to 13 do
          begin
              write('Carta Nº ',i,': ');
              writeln(vec_diamantes,' de Diamantes');
          end;
     readln;
end.

saludos y gracias!

Páginas: [1]