Forum by laureateci.it
[ Home | REGOLE FORUM | Tutti i blog | Profilo | Registrati | CHAT | Discussioni Attive | Discussioni Recenti | Segnalibro | Msg privati | Sondaggi Attivi | Utenti | Download Informatica | Download ICD | Download TPS | Download Magistrale | Download Specialistica | Giochi | Cerca nel web | cerca | faq | RSS ]
Nome Utente:
Password:
Salva Password
Password Dimenticata?

 Tutti i Forum
 INFORMATICA - Primo Anno
 Programmazione
 Laboratorio coso B
 Nuova Discussione  Rispondi
 Versione Stampabile Bookmark this Topic Aggiungi Segnalibro
I seguenti utenti stanno leggendo questo Forum Qui c'è:
Autore Discussione Precedente Discussione Discussione Successiva  

eliopiu
Utente bagnino

poeta


Regione: Puglia
Prov.: Foggia
Città: Foggia


Inserito il - 07/02/2005 : 17:08:51  Mostra Profilo  Visita l'Homepage di eliopiu  Clicca per vedere l'indirizzo MSN di eliopiu Invia a eliopiu un Messaggio Privato  Rispondi Quotando
Laboratorio di Programmazione 31 gennaio 2005 Corso B
Scrivere un programma in Pascal in grado di :
- Caricare da tastiera un vettore di record dove ogni singolo elemento rappresenta una data nel formato giorno,mese,anno
- Visualizza il vettore caricato
- Calcolare e visualizzare la data massima e minima presenti all'interno del vettore

Esempio

INPUT 12/1/2005,31/12/2004,2/1/1990,1/2/1991;
OUTPUT MIN = 2/1/1990 MAX = 12/1/2005

Non riesco a risolvere il terzo punto nel caso di date con lo stesso anno... Chi mi da una mano??

program arraydirecord (input,output);
uses crt;
type data = record
giorno : 1..31;
mese : 1..12;
anno : 1990..2006;
end;
const
Max_ele = 4;
var
vet: array[1..Max_ele]of data;
n:integer;
function immissione:integer;
var
n,i:integer;
begin
writeln;
writeln('IMMISSIONE GIORNO - MESE - ANNO');
writeln;
repeat
write('Quante date desideri inserire ? (max 4) : ');
readln(n);
until (n>=1) and (n<=4);
writeln;
for i:=1 to n do
begin
write('Giorno : ');
readln(vet[i].giorno);
write('Mese : ');
readln(vet[i].mese);
write('Anno : ');
readln(vet[i].anno);
writeln;
end;
writeln;
write('Premi invio per continuare...');
readln;
immissione:=n;
end;
procedure visualizza(n:integer);
var
i:integer;
begin
clrscr;
writeln;
writeln('DATE ');
for i:=1 to n do
begin
writeln;
writeln(' DATA ',i);
write(vet[i].giorno,'/',vet[i].mese,'/',vet[i].anno);
writeln;
end;
writeln;
write('Premi invio per continuare...');
readln;
end;
procedure minmax(n:integer);
var
i,minanno:integer;
begin
clrscr;
writeln('MASSIMO E MINIMO');
minanno:=vet[1].anno;
for i:=2 to n do
if vet[i].anno < minanno then
minanno:=vet[i].anno;
writeln;
writeln('MIN = ',minanno);
readln;
end;
begin
n:=immissione;
visualizza(n);
minmax(n);
end.

  Discussione Precedente Discussione Discussione Successiva  
 Nuova Discussione  Rispondi
 Versione Stampabile Bookmark this Topic Aggiungi Segnalibro
Vai a:
Forum by laureateci.it © 2002 - 2012 Laureateci Communications Torna all'inizio della Pagina
Il DB ha risposto in 0,23 secondi.

TargatoNA.it | SuperDeejay.Net | Antidoto.org | Brutto.it | Equiweb.it | Snitz Forum 2000