allego il testo.
questo [ il codice che ho scritto:
- Codice: Seleziona tutto
#include<stdio.h>
void occorrenze(int v[], int k, int i, int *occ_min, int *occ_max){
if(v[i+1]==-1){
*occ_min=0;
*occ_max=0;
}
if(i<0){
if(v[0]==k)
*occ_min++;
return;
}
if(v[i]==k && v[i+1]==-1)
*occ_max++;
if(v[i]==k && v[i-1]<k)
*occ_min++;
if(v[i]==k && v[i+1]>k)
*occ_max++;
occorrenze(v, k, i-1, occ_min, occ_max);
return;
}
int main(){
int v[100], i, k, occ_max, occ_min;
scanf("%d", &k);
for(i=0;i<=100 && v[i-1]!=-1;i++){
scanf("%d", &v[i]);
}
occorrenze(v, k, i-2, &occ_min, &occ_max);
printf("%d %d", occ_min, occ_max);
return 0;
}
- Codice: Seleziona tutto
credo che il problema sia nelle chiamate delle funzioni e nei puntatori
dove sbaglio?
grazie