ragazzi ho un problema con questo programma che viene controllato dall'istruzione "switch" che deve permettere la scelta di quali operazioni svolgere (somma, media, ricerca massimo e minimo) ma nn mi funziona....
codice:
#include <stdio.h>
#define dim 10
int somma (int a[], int n);
float med (int a[], float n);
int max (int a[], int n);
int min (int a[], int n);
int main(){
int a[dim];
float n;
int i, r;
int scelta;
printf("premere 1 per eseguire una somma \n premere 2 per eseguire una media \n premere 3 per cercare il valore massimo \n premere 4 per cercare il valore minimo \n scelta = ");
scanf("%d", &scelta);
printf("inserire dimensioni vettore = ");
scanf("%f", &n);
for(i=0;i<n;i++){
printf("a[%d] = ", i);
scanf("%d", &a[i]);
}
swtich(scelta){
case 1: printf("la somma degli elementi del vettore e' %d\n", somma(a, n)); break:
case 2: printf("la media e' %f\n", med (a, n)); break;
case 3: printf("il valore massimo e' %d\n", max (a, n)); break;
case 4: printf("il valore minimo e' %d\n", min (a, n)); break;
}
system("pause");
return 0;
}
int somma(int a[], int n){
int i, sum;
sum=0;
for(i=0;i<n;i++){
sum=sum+a[i];
}
return sum;
}
float med (int a[], float n){
int i, sum;
float med;
sum=0;
for(i=0;i<n;i++){
sum=sum+a[i];
}
med=sum/n;
return med;
}
int max(int a[], int n){
int max, i;
max=a[0];
for(i=1;i<n;i++){
if(a[i]>max)
max=a[i];
}
return max;
}
int min (int a[], int n){
int min, i;
min=a[0];
for(i=1;i<n;i++){
if(a[i]<min)
min=a[i];
}
return min;
}