Correzione prova pratica del 17 settembre 2003
Correzione prova pratica del 17 settembre 2003
Istruzioni:
il commento iniziale rappresenta il giudizio complessivo sul programma. Nei commenti trovate:
- FIXME: segnalazione di un errore, non necessariamente sono tutti segnalati e non necessariamente sono tutti presi in considerazione
per il voto finale
- TODO: segnala l'assenza di parti di codice
- XXX: segnala qualcosa di non chiaro o inutile ai fini del codice, commenti di ordine generale, errori di battitura o suggerimenti
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 (3) incompleto
/*cognome/nome: De Bernardi Emanuela, matr:155648, postazione di lavoro: stud14*/
/*data della prova: 17/9/2003 - esame di fondamenti di informatica,corso di laurea in Ingegneria Informatica*/
# include <stdio.h>
# include <string.h>
# define SIZE 80 //FIXME se si chiede una stringa di 80 caratteri massimo occorre
// tenere anche in conto il carattere di fine stringa, ergo doveva usare 81
main () {
char stringa[SIZE];
char copia[SIZE];
int i;
int periodo=0;
printf ("inserisci una stringa: ");
scanf("%s",stringa);
/*se la stringa e vuota o se e' piu' lunga di SIZE,il pgm termina,altrimenti*/
//XXX poteva usare strlen()
while (strcmp(stringa,"")!=0) //FIXME attenzione, lei utilizza un ciclo al cui interno stringa non viene toccata,
// di conseguenza se la condizione e' vera dal ciclo non si uscira' mai
{
/*allungo la stringa,intanto la confronto con se stessa intera*/
for (i=0;i<strlen(stringa);i++)
{
if (strcmp(stringa,&stringa[i])==0) /*confronto*/ //FIXME la condizione che lei va ada analizzare e' necessaria, purtroppo non e' sufficiente
/*se sono uguali,ho un periodo e*/
/*inserisco il contatore di caratteri confrontati nella variabile periodo*/
{
if (i < periodo)
periodo=i;
}
}
}
printf("\nil periodo piu' piccolo e': %d\n",periodo);
return 0;}
Se avete commenti o osservazioni su questa pagina
mandate un messaggio di posta elettronica a
bertozzi@CE.UniPR.IT