Correzione prova pratica del 3 ottobre 2003

Correzione prova pratica del 3 ottobre 2003


Istruzioni:

il commento iniziale rappresenta il giudizio complessivo sul programma. Nei commenti trovate: Il codice presentato non è necessariamente identico a quello consegnato in quanto possono essere state effettuate modifiche per renderlo compilabile e/o per la corretta indentazione.

//XXX (2) incompleto, scarsa pratica e conoscenza del linguaggio
//<PELIZZA>< LARA><151103><larap83@libero.it><CAD12>

//<03/10/03>-esame di Fondamenti di Informatica A-Corso di laurea in Ingegneria Elettronica


#include<iostream.h>

#include<string.h>


int main(){
  int DL;
  char s[15],t[15];
  do {cout<<"Inserire una stringa s"<<endl;
    cin>>s; //FIXME e se la stringa conteneva spazi? era corretto utilizzare cin.getline()

    cout<<"Inserire una stringa t"<<endl;
    cin>>t; //FIXME come sopra

    if (*s && *t)cout<<"<<s<<"<<endl; //XXX ????

    cout<<"<<t<<"<<endl;
  } while(*s && *t); // FIXME questa condizione non mi fa uscire dal ciclo. Ma ha mai provato a svolgere qualche esercizio?

  int n, m;   
  n=strlen(s);
  m=strlen(t);
  if (n=0){ DL=m;
    cout<<DL<<endl;
  } //FIXME nel caso doveva anche terminare

  if (m=0){DL=m;
    cout<<DL<<endl;
  } //FIXME come sopra


  int costo=0;           

  int i, j, d[m+1][n+1];
  for (i=0,j=0;i<n;i++)
    for (i=0,j=0;j<m;j++)
      d[m+1][n+1]; //FIXME operazione nulla (pero' ripetuta nxm volte)


  //FIXME a parte che non ha inizializzato la matrice da qui in poi ci vorrebbe un ciclo, io

  //      non lo vedo.


  if(s[i]<=0 && s[i]>=n-1 && t[j]<=0 && t[j]<=m+1) //FIXME ???

  {    
    if (t[j]=s[i])costo=0; //FIXME == 

    else costo=1;

    int n1,n2,n3;
    n1=d[j+1][i]+1; 
    n2=d[j][i+1]+1;
    n3=d[i][j] + costo;
    int min;     
    if( n1 <= n2 && n1 <= n3) min= n1;
    if( n2 <= n1 && n2 <= n3) min= n2;
    if( n3 <= n1 && n3 <= n2) min= n3;
    d[j+1][i+1] = min; 

    d[m][n]= DL;
    cout<<"La Distanza di Levenshtein e' "<<DL<<endl;
  }                                     


  // F



Se avete commenti o osservazioni su questa pagina
mandate un messaggio di posta elettronica a bertozzi@CE.UniPR.IT