Pagina 1 di 1

Un problemino di programmazione...

Inviato: venerdì 23 ottobre 2009, 0:57
da SaMMoX
A seguito di un buggettino subdolo che mi ha fatto perdere un pochino di tempo, propongo 'na specie di giochino... Considerate il seguente programma

Codice: Seleziona tutto

#include <stdio.h>

int main(void)
{


   for(i = 10; i >= 0; --i)
      printf("Ubuntu\n");

   return 0;
}
Come si può vedere questo è un programma in C dove, però, manca la dichiarazione di i, che va prima del for. Ecco, io vi dico... Dichiarate i (solo questo!) in modo che il programma precedente stampi infinite volte la scritta Ubuntu (i.e. non esca mai dal ciclo for).

Re: Un problemino di programmazione...

Inviato: domenica 25 ottobre 2009, 13:01
da SaMMoX
Nessuno nessuno? ;D

Re: Un problemino di programmazione...

Inviato: domenica 25 ottobre 2009, 13:42
da marcoscarpetta
COME stringa forse?

Re: Un problemino di programmazione...

Inviato: domenica 25 ottobre 2009, 13:51
da kiroken_
non si può perchè comunque la dichiari dentro al for gli assegni valore 10. E dubito che con float o double possa sbagliare sommando e sottraendo interi.

Re: Un problemino di programmazione...

Inviato: domenica 25 ottobre 2009, 14:46
da SaMMoX
E invece vi dico che si può! E non come stringa, vi do un indizio, deve essere dichiarata come variabile intera. ;D

À vous...

Re: Un problemino di programmazione...

Inviato: domenica 25 ottobre 2009, 15:04
da DAKS
i=0 forse?

Re: Un problemino di programmazione...

Inviato: domenica 25 ottobre 2009, 15:05
da SaMMoX
Quello che si deve fare è dichiarare il tipo di i, non inizializzarla. ;) Di fatto, come è stato detto, viene comunque reimpostata all'inizio del for, per cui...

Re: Un problemino di programmazione...

Inviato: domenica 25 ottobre 2009, 16:02
da kiroken_
ah già troppo java soluzione capita comunque non è un bug

Re: Un problemino di programmazione...

Inviato: domenica 25 ottobre 2009, 16:15
da SaMMoX
No no il bug era riferito al programmino che avevo fatto io. ;D Mi spiego... Stavo scandendo un array di 11 elementi al contrario, se avessi dichiarato i come int e avessi fatto

Codice: Seleziona tutto

for(i = 10; i >= 0; --i)
   Qualche operazione su array[i]
non ci sarebbero stati problemi. Invece volendo fare il figo ho dichiarato i in altro modo, così il programma mi schiantava con un bel segmentation fault. ;D E prima di capire dove stava il bug (nel mio programma s'intende!) un po' mi ci è voluto... Fortuna che esiste gdb...