Help!!Confronto elementi di un vettore...

stellacometa
Ciao a tutti avrei un problemino molto importante da risolvere..
In pratica caricando man mano gli elementi uno ad uno di un vettore si deve vedere se questi sono maggiori di un numero dato in precedenza. Ad esempio: "i:=0 se a>b then max=a else if i<9 (Gli elementi del vettore sono in tutto 10) then i:=i+1..e la faccio ritornare alla prima condizione)". Il prof ha detto che non posso fare cosi perche altrimenti si dovrebbe fare imbastardire il programma! Dice che c'è la struttura nidificata, (qui c'ero arrivata). Potete darmi una mano facendomi vedere l'algoritmo che dovrebbe venire per risolvere questo problema? Ve ne sarei immensamente grata!!
Grazie

Risposte
fireball1
Sei fortunata! [;)]
Ho da poco fatto ciò nel corso di Laboratorio di Programmazione e Calcolo!
Eccoti l'algoritmo in linguaggio C!

/* QUESTO PROGRAMMA TROVA LA MASSIMA COMPONENTE DI UN
VETTORE FORNITO IN LETTURA */
#include <stdio.h>
#include <stdlib.h>
main()
{int n,i;float max;
float v[31];
printf("\n\n\n\nquante componenti ha il vettore");
printf(" che devo leggere?");
printf("\n n= ");scanf("%d",&n);
while (n>30)
{ printf("\n\n\n attenzione!!");
printf("\n le componenti del vettore sono troppe");
printf("\nscegli di nuovo quante componenti deve");
printf(" avere il vettore che devo leggere");
printf("\n n= ");scanf("%d",&n); }
for(i=1;i<=n;i++)
{ printf("\n dammi la componente numero");
printf(" %d del vettore x ",i);
scanf("%f",&v[i]); }
max=v[1];
for(i=2;i<=n;i++) if (max<v[i]) max=v[i];
printf("\n\n\n\n massima componente=%f",max);
system ("PAUSE");return 0; }

stellacometa
uao che fortuna grazie...
Senti avrei un ultimo favore da chiederti per questo problema..potresti farmi vedere il diagramma a blocchi??
Thank's!!!

fireball1
Non ho fatto questo programma (né faccio gli altri, in C) col diagramma a blocchi.
Non lo abbiamo studiato, e penso anche sia inutile.

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.