Programa en pascal hecho en clases



HOLA GENTE, LES DEJO UN PROGRAMITA QUE HICE N PASCAL RECIEN EN CLASES, ESPERO QUE LES GUSTE!!!

EL PROBLEMA ERA EL SIGUIENTE:
Problema 18. Dada una lista con los datos de N libros de una biblioteca,
conteniendo la siguiente información:
• Título del libro
• Autor
• Tema
• Número de páginas
• Fecha de edición

Se pide determinar lo siguiente:

a) Frecuencia de letras usadas en los títulos de los libros.
b) Conjunto de consonantes usadas en Autor.
c) Una lista con los títulos cuyas páginas sumadas no superen el valor de 1000


program libreria;
uses crt;
type
fecha=record
dia:1..31;
mes:1..12;
anio:1800..2020;
end;
libros=record
titulo:string[20];
autor:string[20];
temamatematicas,contabilidad,elementos);
paginas:integer;
fecha1:fecha;
end;
vector=array[1..100] of libros;
var
x:vector; n:integer;

procedure carga (var x:vector; var n:integer);
var
i,op:integer;
begin
writeln(' Ingrese cantidad de libros '); readln(n);
for i :=1 to n do
begin
clrscr;
writeln(' Ingrese titulo: '); readln(x.titulo);
writeln(' Ingrese autor: '); readln(x.autor);
writeln(' Ingrese tema: "-1- para matematicas, -2- para contabilidad, -3- para elementos" ');
read(op);
case op of
1: x.tema:= matematicas;
2: x.tema:= contabilidad;
3: x.tema:= elementos;
end;
writeln(' Ingrese cantidad de paginas: '); readln(x.paginas);
writeln(' Ingrese fecha: ');
writeln;
writeln(' DIA: '); readln(x.fecha1.dia);
writeln(' MES: '); readln(x.fecha1.mes);
writeln(' ANIO: '); readln(x.fecha1.anio);
end;
end;

procedure frecuencia( x:vector; n:integer);
var
i,c,j:integer; k:char; pal:string;
begin
c:=0;
for j:=1 to n do
begin
pal:='';
pal:=x[j].titulo;

for k:='A' to 'Z' do
begin
for i:=1 to length (pal) do
begin
if upcase(pal)=k then
c:=c+1;
end;
writeln(' La cantidad de ',k,' es: ',c);
c:=0;
end;
end;
end;
procedure consonantes( x:vector; n:integer);

var
i:integer; conj:set of char; pal:string;
begin
conj:=[];
conj:= ['A'..'Z']-['A','E','I','O','U'];
writeln(' El conjunto de consonantes es: ');
for i:=1 to n do
begin
pal:=''; pal:=x.autor;
for i:=1 to length(pal) do
begin
if upcase(pal) in conj then
write(' ',pal,' ');
end;
end;
end;
procedure titulos( x:vector; n:integer);
var i:integer;
begin
writeln(' La lista de titulos con paginas menor a 1000 es : ');
for i:=1 to n do
begin
if x.paginas <= 1000 then
writeln(x.titulo);

end;
end;
begin
carga(x,n);
frecuencia(x,n);
consonantes(x,n);
titulos(x,n);
readkey;
end.

Fuentes de Información - Programa en pascal hecho en clases

El contenido del post es de mi autoría, y/o, es un recopilación de distintas fuentes.

Dar puntos
21 Puntos
Votos: 3 - T!score: 7/10
  • 0 Seguidores
  • 2.184 Visitas
  • 4 Favoritos

14 comentarios - Programa en pascal hecho en clases

@nolovuelvoahacer Hace más de 3 años
y como lo ejecuto? o algo asi? (perdona la ignorancia )
@M05K1T0 Hace más de 3 años
que hace precisamente?
@nolovuelvoahacer Hace más de 3 años
matiastamaltodo dijo:te dejo el ejecutable man...bajalo y ejecuta nomas!
http://www.megaupload.com/?d=GMKY5WSK


Estoy en Linux....... Imposible ejecutar un .exe amigo
@rafaelputaro Hace más de 3 años -2
Es tan al pedo Pascal.
Se debería arrancar directamente con C o C++
@melist Hace más de 3 años +2
Yo aprendí en Python.
@Tonami Hace más de 3 años
jaja yo tambien tube qe hacerlo donde estudias??
@juanykarina2007 Hace más de 3 años +1
sabes pascal y programas basic cobol , entiendes los nuevos son basados en ellos
Programa en pascal hecho en clasesfuente
@AsefadojFesa Hace más de 3 años
jajaja gracias! porque no lo hice en clases! y porq no lo entendia... te dejo +10 compa!
@RicardSega Hace más de 3 años
Yo en la escuela hacia y hago programas recursivos, con pilas, colas, arboles, etc. Ya pascal no usamos, pasamos al c++ builder
@__EFL__ Hace más de 3 años +2
ar
i,c,j:integer; k:char; pal:string;
begin
c:=0;
for j:=1 to n do
begin
pal:='';
pal:=x[j].titulo;
for k:='A' to 'Z' do
begin
for i:=1 to length (pal) do
begin
if upcase(pal)=k then
c:=c+1;
end;
writeln(' La cantidad de ',k,' es: ',c);
c:=0;
end;
end;
end;
procedure consonantes( x:vector; n:integer);
var
i:integer; conj:set of char; pal:string;
begin
conj:=[];
conj:= ['A'..'Z']-['A','E','I','O','U'];
writeln(' El conjunto de consonantes es: ');
for i:=1 to n do

codigo