Richiesta spiegazione esercizio

di Anonimizzato19053 il
10 risposte
Salve a tutti sono uno studente di ingegneria civile al primo anno e devo affrontare l'esame di informatica sul linguaggio C e programmazione..Ho avuto un e-mail dal professore del precedente esame e non riesco a trovare la soluzione di questo esercizio. Riuscireste a fornirmi anche una breve spiegazione della soluzione e dello svolgimento...grazie mille

Dire che cosa stampa il seguente frammento
di programma.
(int i,N=3,K=4;
for(i=0;i<=M;i++) {
N=N+1;
}
while(N>K) {
N=N-K;
}
printf("N=%d\n",N);

10 Risposte

  • Ma scusa, non puoi scriverlo, compilarlo ed eseguirlo per capire cosa stampa? Almeno per iniziare.

    (a parte il fatto che manca il valore di M)
  • Direi che l'hai postato incompleto.
    comunque per capire cosa stampa non c'è niente di meglio che farsi lo schemino ed "eseguire mentalmente" il programma aggiornando i valori delle variabili usate.
  • Scusatemi ma M è uguale a 3.. vi chiedo scusa ma non sono molto pratico siccome è la prima volta che faccio programmazione...grazie
  • Ok, è la prima volta. Ma saprai inserire un programma, compilarlo ed eseguirlo, no?
  • No purtroppo no sono alle basi poiché ho seguito poche lezioni e non so i procedimenti da eseguire in questo esercizio e non so cosa stampA... Vi sarei grato se riuscite a darmi una mano nella soluzione grazie
  • Basta leggere dal tuo libro come funziona il ciclo for e il ciclo while .... Non c'è tanto da studiare... Provaci
  • E' proprio questo il problema chiedo a voi se nell'esercizio la parte del for va risolta stampo quella oppure devo fare l'istruzione sia del for e del while...sono parecchi giorni che cerco istruzioni sia del libro che da internet pero non trovo una soluzione...chiedo scusa se sono ripetitivo ma purtroppo ho l'esame fra una decina di giorni... grazie di nuovo
  • Prima esegui la for e poi la while ... alla fine ottieni il valore con la printf ...

    Fornirti un valore finale dell'esercizio non ha senso per affrontare il tuo esame.

    Devi ragionarci su anche perché è semplicissimo.

    Comincia dalla for ... cosa vuol dire

    for(i=0;i<=M;i++) {


    ?
  • Ad ogni ciclo si incrementa di uno il valore fino a che non è rispettata la condizione e si interrompe il ciclo. Il punto è che non capisco se una volta uscito dal for, devo risolvere il while. E poi non capisco se mi stampa solo il valore del for, o solo quello del while o tutti e due.
    Grazie
  • Dopo la for continua con la while

    Quello che stampa è l'ultima riga, viene stampato il valore di N che non appartiene al fir o alla while ma a tutto il programma. Devi tenere conto di con varia N dall'inizio alla fine
Devi accedere o registrarti per scrivere nel forum
10 risposte