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
 ITPS - Secondo Anno
 Algoritmi e Strutture Dati + Lab.
 Esercizi su Specifiche Algebriche e Semantiche

Nota: Devi essere registrato per poter inserire un messaggio.
Per registrarti, clicca qui. La Registrazione è semplice e gratuita!

Larghezza finestra:
Nome Utente:
Password:
Modo:
Formato: GrassettoCorsivoSottolineatoBarrato Aggiungi Spoiler Allinea a  SinistraCentraAllinea a Destra Riga Orizzontale Inserisci linkInserisci EmailInserisci FlashInserisci Immagine Inserisci CodiceInserisci CitazioneInserisci Lista Inserisci Faccine
   
Icona Messaggio:              
             
Messaggio:

  * Il codice HTML è OFF
* Il Codice Forum è ON

Smilies
Approvazione [^] Arrabbiato [:(!] Bacio [:X] Bevuta [:273]
Caldo [8D] Compiaciuto [8)]    
compleanno [:269]
Davvero Felice [:D] Diavoletto [}:)] Disapprovazione [V] Domanda [?]
Felice [:)] Fumata [:29] Goloso [:P] Imbarazzato [:I]
Infelice [:(] Morte improvvisa da [:62]
Morto [xx(] Occhio Nero [B)] Occhiolino [;)] Palla 8 [8]
pc [:205]    
Riproduzione [:76]
Scioccato [:O]      

   Allega file
  Clicca qui per inserire la tua firma nel messaggio.
Clicca qui per sottoscrivere questa Discussione.
    

V I S U A L I Z Z A    D I S C U S S I O N E
FabioAkaDragonDJ Inserito il - 31/08/2010 : 09:52:10
ragazzi vi chiedo aiuto ho un pò di problemi a risolvere questi esercizi nel senso che so la procedura ma evidentemente salto qualcosa infatti agli appelli li sbaglio sempre, ecco volevo sapere se magari qualcuno mi poteva spiegare in linea di massima come ragionare per svolgerli correttamente

come esercicio guida va bene questo


Vi ringrazio
2   U L T I M E    R I S P O S T E    (in alto le più recenti)
Spidey Inserito il - 17/09/2010 : 13:16:58
Ciao a tutti, stamattina ho provato a risolvere anche il secondo punto dell'esercizio, eccolo quà:

declare: R, R', R'' : Rubrica, n, n' : NM, t : T.

I costruttori, secondo me, sono: creaRubrica() e aggiungiNumero(R, n, t).

aggiornaNumero(creaRubrica(), n, t) =
if inRubrica(R, n) then
aggiornaNumero(R, n, t)
else
error

rimuoviNumero(creaRubrica(), n) = error

inRubrica(creaRubrica(), n) = false

trovaNumero(creaRubrica(), n) = error

numeroContatti(creaRubrica()) = 0

inclusa(creaRubrica(), R') =
if numeroContatti(R') == 0 then
true
else
false

------------------------------------------------

aggiornaNumero(aggiungiNumero(R, n, t), n', t') =
if inRubrica(R', n') then
aggiornaNumero(R', n', t')
else
error

rimuoviNumero(aggiungiNumero(R, n, t), n') =
if n=n' then
R
else
rimuoviNumero(R', n')

inRubrica(aggiungiNumero(R, n, t), n') =
if n=n' then
true
else
inRubrica(R', n')

trovaNumero(aggiungiNumero(R, n, t), n') =
if n=n' then
t
else
trovaNumero(R', n')

numeroContatti(aggiungiNumero(R, n, t)) =
if numeroContatti(R) == 0 then
1
else
numeroContatti(R) + 1 [OPPURE numeroContatti(R')]

inclusa(aggiungiNumero(R, n, t), R'') =
if numeroContatti(R) == 0 then
if numeroContatti(R'') == 1 AND inRubrica(R'', n) then
true
else
false
else
inclusa(R', R'')


L'indentazione non c'è (sul forum non viene mantenuta) ma si capisce, basta leggere con attenzione. Ciao ciao.
Spidey Inserito il - 16/09/2010 : 21:12:03
Ciao FabioAkaDragonDJ, ti scrivo la mia soluzione personale al primo punto dell'esercizio che hai postato, non garantendoti la sua correttezza:

- TIPI:
booleano: insieme dei valori di verità {true, false}.
intero: insieme I dei numeri interi #8712; N.
nome: insieme infinito NM qualsiasi dei nomi.
telefono: insieme infinito T qualsiasi dei numeri di telefono.
rubrica: insieme R=(NM,T) formato dalle coppie (n,t) con n #8712; NM e t #8712; T.

- OPERATORI:

creaRubrica()=R
post: R=(NM,T) con N=#8709; e T=#8709;.

aggiungiNumero(R, n, t)=R'
pre: R=(NM,T), n #8713; NM e t #8713; T.
post: R'=(NM',T'), R'= R U {(n,t)}

aggiornaNumero(R, n, t)=R'
pre: R=(NM,T), n #8712; N e t #8712; T.
post: R'=(NM',T) e NM'=NM - {n} U {n}.

rimuoviNumero(R, n)=R'
pre: R=(NM,T) e (n,t) #8712; R.
post: R'=(NM',T'), R'=R - {(n,t)}.

inRubrica()=b
post: b=true se (n,t) #8712; R; b=false, altrimenti.

trovaNumero(R, n)=t
pre: R=(NM,T), R#8800;#8709; e #8707; i=1...m | n di m = n => (n di m, t di m) #8712; R.
post: t = t di m

numeroContatti(R)=i
post: i=|R|, dove |R| è la cardinalità dell'insieme R.

inclusa(R, R')=b
post: b=true se per ogni (n di m, t di m) #8712; R #8707; (u di m, l di m) #8712; R', n=u e t=l; b=false, altrimenti.


Ciao ciao.

Forum by laureateci.it © 2002 - 2012 Laureateci Communications Torna all'inizio della Pagina
Il DB ha risposto in 0,03 secondi.

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