Strumenti Utente

Strumenti Sito


informatica:sol:laboratorio21:esercitazionib:esercitazione6

Differenze

Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.

Link a questa pagina di confronto

Prossima revisione
Revisione precedente
informatica:sol:laboratorio21:esercitazionib:esercitazione6 [20/03/2021 alle 09:05 (4 anni fa)] – creata Massimo Torquatiinformatica:sol:laboratorio21:esercitazionib:esercitazione6 [15/04/2021 alle 03:38 (4 anni fa)] (versione attuale) – [Esercizio 5] Massimo Torquati
Linea 36: Linea 36:
 ===== Esercizio 5 ===== ===== Esercizio 5 =====
  
-Completare il codice seguente in modo che il programma calcoli i primi 13 numeri di Fibonacci utilizzando per ogni chiamata ''doFib'' un processo distinto.+Completare il codice seguente in modo che il programma calcoli i primi 13 numeri di Fibonacci utilizzando per ogni chiamata ''doFib'' un processo distinto. La funzione ''doFib'', ritorna al processo padre il valore calcolato tramite l'exit status (''exit'').
  
 <code> <code>
Linea 46: Linea 46:
 /*  /* 
  * Calcola ricorsivamente il numero di Fibonacci dell'argomento 'n'.  * Calcola ricorsivamente il numero di Fibonacci dell'argomento 'n'.
- * La soluzione deve forkare un nuovo processo che esegue una sola  + * La soluzione deve effettuare fork di processi con il vincolo che  
- chiamata di 'doFib'+ ogni processo esegua 'doFib' al più una volta  
- * Se doPrint e' 1 allora la funzione lo stampa, altrimenti il + * Se l'argomento doPrint e' 1 allora la funzione stampa il numero calcolato  
- numero calcolato va passato al processo padre.+ * prima di passarlo al processo padre. 
  */  */
 static void doFib(int n, int doPrint); static void doFib(int n, int doPrint);
Linea 63: Linea 63:
     }     }
     arg = atoi(argv[1]);     arg = atoi(argv[1]);
-    if(arg < 0 || arg > NMAX){ +    if(arg <0 || arg > NMAX){ 
- fprintf(stderr, "num deve essere compreso tra e 13\n");+ fprintf(stderr, "num deve essere compreso tra e 13\n");
  return EXIT_FAILURE;  return EXIT_FAILURE;
     }        }   
informatica/sol/laboratorio21/esercitazionib/esercitazione6.1616231142.txt.gz · Ultima modifica: 20/03/2021 alle 09:05 (4 anni fa) da Massimo Torquati

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki