

Studia grazie alle numerose risorse presenti su Docsity
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Prepara i tuoi esami
Studia grazie alle numerose risorse presenti su Docsity
Prepara i tuoi esami con i documenti condivisi da studenti come te su Docsity
Trova i documenti specifici per gli esami della tua università
Preparati con lezioni e prove svolte basate sui programmi universitari!
Rispondi a reali domande d’esame e scopri la tua preparazione
Riassumi i tuoi documenti, fagli domande, convertili in quiz e mappe concettuali
Studia con prove svolte, tesine e consigli utili
Togliti ogni dubbio leggendo le risposte alle domande fatte da altri studenti come te
Esplora i documenti più scaricati per gli argomenti di studio più popolari
Ottieni i punti per scaricare
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI - ESERCITAZIONE: GLI ALGORITMI. Scrivere un algoritmo in pseudocodice e un diagramma a blocchi per il seguente problema: trovare il massimo fra N numeri interi positivi. Spiegare a parole il problema, la soluzione individuata, il diagramma ottenuto e le istruzioni in pseudocodice.
Tipologia: Esercizi
1 / 3
Questa pagina non è visibile nell’anteprima
Non perderti parti importanti!


ALGORITMI. Scrivere un algoritmo in pseudocodice e un diagramma a blocchi per il seguente problema: t rovare il massimo fra N numeri interi positivi. Spiegare a parole il problema, la soluzione individuata, il diagramma ottenuto e le istruzioni in pseudocodice. Attenzione! Esercizi senza la spiegazione per esteso saranno ritenuti NULLI
int main(void) {
//dichiaro le variabili che andrò ad utilizzare
int n=1; int v=0; int i=0;
//Attenzione: inizializzo max = 0 in modo che sicuramente non sarà maggiore dei numeri che verranno
inseriti, in quanto l’esercizio ci dice che i valori inseriti sono interi positivi.
int max=0;
//chiedo quanti numeri inserire
printf("Quanti numeri inserire? :"); scanf("%i",&n); //inizializzo i per il conto alla rovescia i = n; //inizio il ciclo do {
//leggo il valore da confrontare
printf("\nInserisci valore : "); scanf("%i",&v);
//se il nuovo valore è maggiore del valore massimo finora individuato, uso il nuovo valore come massimo
if (v > max) { max = v; } //decremento per il conteggio alla rovescia i--; }
//imposto la condizione di uscita dal ciclo
while(i > 0);
//stampo il valore massimo individuato printf("\nIl massimo e': %i\n",max);
return 0;
}
Spiegare a parole il problema: il problema richiede di trovare il massimo fra N numeri interi positivi, ossia bisogna prima chiedere su quanti numeri cercare il maggiore e poi confrontare i numeri che man mano vengono letti per individuare il più grande.
La soluzione individuata: utilizzo una variabile di appoggio “maggiore” con l’obiettivo che contenga sempre il valore più grande tra i numeri letti. Leggo i numeri utilizzando un ciclo.