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
 programma Pascal: sotto-sequenze in un arrray
 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  

Sinkler
Croce & Delizia

gattino


Regione: Puglia
Prov.: Bari
Città: Molfetta


Inserito il - 09/07/2005 : 16:26:01  Mostra Profilo  Visita l'Homepage di Sinkler  Clicca per vedere l'indirizzo MSN di Sinkler Invia a Sinkler un Messaggio Privato  Rispondi Quotando
Qualcuno ha fatto questo esercizio:
"Scrivere un programma Pascal che avendo in input un vettore di numeri interi calcoli la lunghezza massima tra le sotto-sequenze di elementi contigui uguali e visualizzi il risultato.
ES: Dato [1,2,2,2,4,2,1,1] il risultato sarà 3 relativo alla sequenza [2,2,2]"

mi serve solo la procedura per calcolare la sottosequenza

tremenda
Utente assiduo

tweety


Regione: Puglia
Prov.: Ba
Città: Bari


Inserito il - 09/07/2005 : 17:07:30  Mostra Profilo  Visita l'Homepage di tremenda  Clicca per vedere l'indirizzo MSN di tremenda Invia a tremenda un Messaggio Privato  Rispondi Quotando
Ti ricordi l'appello?Forse ce l'ho io!

"And I feel that love is dead I'm loving angels instead..."
Torna all'inizio della Pagina

Sinkler
Croce & Delizia

gattino


Regione: Puglia
Prov.: Bari
Città: Molfetta


Inserito il - 09/07/2005 : 17:08:41  Mostra Profilo  Visita l'Homepage di Sinkler  Clicca per vedere l'indirizzo MSN di Sinkler Invia a Sinkler un Messaggio Privato  Rispondi Quotando
magari!
è l'appello del 14/01/2004

Modificato da - Sinkler in data
Torna all'inizio della Pagina

tremenda
Utente assiduo

tweety


Regione: Puglia
Prov.: Ba
Città: Bari


Inserito il - 09/07/2005 : 17:11:36  Mostra Profilo  Visita l'Homepage di tremenda  Clicca per vedere l'indirizzo MSN di tremenda Invia a tremenda un Messaggio Privato  Rispondi Quotando
Forse è questo!Vedi se funziona xkè nn ho il pascal e nn mi ricordo!



Allegato: appgennaio02.zip
1,07 KB

"And I feel that love is dead I'm loving angels instead..."
Torna all'inizio della Pagina

Sinkler
Croce & Delizia

gattino


Regione: Puglia
Prov.: Bari
Città: Molfetta


Inserito il - 09/07/2005 : 17:13:43  Mostra Profilo  Visita l'Homepage di Sinkler  Clicca per vedere l'indirizzo MSN di Sinkler Invia a Sinkler un Messaggio Privato  Rispondi Quotando
si è quello però nn funziona bene quella procedura che cerco io
cmq grazie mille cerco di aggiustarlo
Torna all'inizio della Pagina

Chilavert
admin

vacca


Regione: Puglia
Prov.: BA
Città: Bari


Inserito il - 09/07/2005 : 17:32:22  Mostra Profilo  Visita l'Homepage di Chilavert Invia a Chilavert un Messaggio Privato  Rispondi Quotando
sottoseq.zip

program sottosequenza;
const DIM = 100;
type vettore = array[1..DIM] of integer;
var
___k: integer;
___a: vettore;

procedure insvett(var a: vettore; k: integer);
var
___i, x: integer;
begin
___writeln('Inserimento vettore');
___writeln;
___for i:=1 to k do
______begin
______write('Inserisci elemento ', i, ': ');
______readln(x);
______a[i]:= x
___end
end;

function sottoseq(var a: vettore; k: integer): integer;
var
___i, l, x, max: integer;
begin
___l:= 1;
___x:= a[1];
___max:= 0;
___for i:= 2 to k do
______if (x = a[i]) then
_________l:= l + 1
______else begin
_________if (max < l) then
____________max:= l;
_________l:= 1;
_________x:= a[i]
______end;
___sottoseq:= max;
end;

begin
___write('Lunghezza del vettore: ');
___readln(k);
___insvett(a, k);
___writeln;
___writeln('La sottosequenza piu'' lunga e'' di ', sottoseq(a,k), ' elementi');
___readln
end.

E' un bene per il Prof. Xxxxxxx che sappia con chi ha a che fare.
Pensa a studiare e non agli esempi, o ad altre strade per così dire,
che questa volta mi sa che non attacca. [cit.]

Tutti professori dall'esterno, e poi parlano persone che per prendere un voto decente
ripetono l'esame 30 volte e poi fanno i sapientoni con chi segue la prima volta vedi chilavert [cit.]
Torna all'inizio della Pagina

genius
dott. ing. cav. ...FN

Genio


Regione: Puglia
Prov.: Bari
Città: Molfetta - Caput Mundi


Inserito il - 10/07/2005 : 13:20:01  Mostra Profilo  Visita l'Homepage di genius  Clicca per vedere l'indirizzo MSN di genius  Invia a genius un messaggio Yahoo! Invia a genius un Messaggio Privato  Rispondi Quotando
x sinkler: nella tua procedura crea_vett c'è un errore:

for i:= 1 to n <- deve essere fino a n-1 altrimenti ti da index out of bound perkè fai A[i] = A[i+1] e quindi all'ultima iterata hai A[n] = A[n+1]

"...e se non hai morale
e se non hai passione
se nessun dubbio ti assale
perché la sola ragione che ti interessa avere
è una ragione sociale
soprattutto se hai qualche dannata guerra da fare
non farla nel mio nome
non farla nel mio nome
che non hai mai domandato la mia autorizzazione
se ti difenderai non farlo nel mio nome
che non hai mai domandato la mia opinione..."

Un blog farlocco
Torna all'inizio della Pagina

Sinkler
Croce & Delizia

gattino


Regione: Puglia
Prov.: Bari
Città: Molfetta


Inserito il - 10/07/2005 : 16:50:06  Mostra Profilo  Visita l'Homepage di Sinkler  Clicca per vedere l'indirizzo MSN di Sinkler Invia a Sinkler un Messaggio Privato  Rispondi Quotando
Citazione:
Messaggio inserito da genius

x sinkler: nella tua procedura crea_vett c'è un errore:

for i:= 1 to n <- deve essere fino a n-1 altrimenti ti da index out of bound perkè fai A[i] = A[i+1] e quindi all'ultima iterata hai A[n] = A[n+1]



ah ho capito, ma è la procedura calcola nn crea_vett, cmq grazie siccome mi usciva nn c'avevo fatto caso!
riscrivo tutto:

////////////////////////////////////////////////////////////
program SottoSequenza(input,output);
const size=50;
type interi=array[1..size] of integer;
var
vettA : interi;
num : integer;

(*Crea vettore di interi*)
procedure crea_vett(var A:interi; K:integer);
var i:integer;
begin
_for i:=1 to K do
__begin
___writeln;
___writeln('Inserisci un numero intero nella posizione n.',i,':');
___readln(A[i]);
__end;
end;

(* Stampa vettore *)
procedure stampa(var A:interi; K:integer);
var i:integer;
begin
_write('[');
__for i:=1 to K do
___begin
____write(' ',A[i],' ');
___end;
__write(']');
end;

(* Calcosa la massima sottosequenza *)
procedure calcola(var A:interi; K:integer);
var i,seq,max:integer;
begin
seq:=1;
max:=0;
_for i:=1 to K-1 do
___begin
_____if (A[i]=A[i+1]) then
_________begin
___________seq:=seq+1;
_________end
_____else
_______if (max<seq) then
________begin
_________max:=seq;
_________seq:=1;
________end;
___end;
__if (max<seq) then
___max:=seq;
_writeln('La lunghezza della sottosequenza e'':',max);
end;

(* MAIN *)
begin
writeln('Quanti elementi vuoi inserire nel vettore?');
read(num);
crea_vett(vettA,num);
writeln;
writeln('Vettore in ingresso:');
stampa(vettA,num);
writeln;
writeln;
calcola(vettA,num);
readln;
end.
////////////////////////////////////////////////////////////
prova6.zip

nella funzione di Chila manca un if alla fine:

function sottoseq(var a: vettore; k: integer): integer;
var
___i, l, x, max: integer;
begin
___l:= 1;
___x:= a[1];
___max:= 0;
___for i:= 2 to k do
______if (x = a[i]) then
_________l:= l + 1
______else begin
_________if (max < l) then
____________max:= l;
_________l:= 1;
_________x:= a[i]
______end;
___if (max<seq) then
____max:=seq;
___sottoseq:= max;
end;
Torna all'inizio della Pagina

Chilavert
admin

vacca


Regione: Puglia
Prov.: BA
Città: Bari


Inserito il - 10/07/2005 : 19:02:51  Mostra Profilo  Visita l'Homepage di Chilavert Invia a Chilavert un Messaggio Privato  Rispondi Quotando
brava Sinka

E' un bene per il Prof. Xxxxxxx che sappia con chi ha a che fare.
Pensa a studiare e non agli esempi, o ad altre strade per così dire,
che questa volta mi sa che non attacca. [cit.]

Tutti professori dall'esterno, e poi parlano persone che per prendere un voto decente
ripetono l'esame 30 volte e poi fanno i sapientoni con chi segue la prima volta vedi chilavert [cit.]
Torna all'inizio della Pagina
  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,22 secondi.

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