Visualizzazione dei risultati da 1 a 10 su 10

Discussione: [C] - Media array

  1. #1

    [C] - Media array

    Ciao a tutti, sono un nuovo membro, nuovo anche alla programmazione in C che sto studiando in università in questo momento. Ho scritto questo codice:
    codice:
    #include <stdio.h>
              #include <stdlib.h>
              int arrayMAX(int size, int var_array[]){
              int ans, i;
              float m;
              ans=0;
              for(i=0; i<size; i++)
              ans=ans+var_array[i];
              m=ans/size;
              printf("%f", m);
              }
    
              #define M 30
              int main(int argc, char*argv[]){
              int size, i;
              int array[M];
              scanf("%d", &size);
              if(size>M)
              scanf("%d", &size);
              for(i=0; i<size; i++)
              scanf("%d", &array[i]);
    
              arrayMAX(size, &array[size]);
              return(0);
              }
    Che funziona, ma mi stampa un valore senza senso anzichè m. Siccome si tratta dell'incipit di un programma che poi crea un nuovo array contenente solo i valori del primo array superiori a m, mi serve che stampi il valore giusto. Grazie in anticipo per le risposte!

  2. #2
    Utente di HTML.it L'avatar di linoma
    Registrato dal
    Mar 2010
    Messaggi
    1,346
    passi come array l'ultimo elemento
    Per gli Spartani e Sparta usa spartan Il mio github

  3. #3
    Scusa la ridondanza, ma puoi essere più preciso? Non sono sicuro di aver capito dove sbaglio

  4. #4
    Utente di HTML.it L'avatar di linoma
    Registrato dal
    Mar 2010
    Messaggi
    1,346
    scusami tu ma ho difficoltà a leggere il codice, lo identi?
    Per gli Spartani e Sparta usa spartan Il mio github

  5. #5
    codice:
              #include <stdio.h>
              #include <stdlib.h>
              int 
              arrayMAX(int size, int var_array[]){
              
                      int ans, i;
                      float m;
                      ans=0;
                      for(i=0; i<size; i++)
              
                           ans=ans+var_array[i];
    
                      m=ans/size;
                      printf("%f", m);
                      }
    
              #define M 30
              int main(int argc, char*argv[]){
              
                      int size, i;
                      int array[M];
                      scanf("%d", &size);
                      if(size>M)
              
                           scanf("%d", &size);
              
                      for(i=0; i<size; i++)
                      scanf("%d", &array[i]);
    
                      arrayMAX(size, &array[size]);
                      return(0);
                      }

  6. #6
    Utente di HTML.it L'avatar di linoma
    Registrato dal
    Mar 2010
    Messaggi
    1,346
    bene, grazie nn riuscvivo a copoiare ed incollare

    codice:
    arrayMAX(size, &array[size]);
    Per gli Spartani e Sparta usa spartan Il mio github

  7. #7
    Ok, il problema è che non capisco dove stia l'errore nel passare in tal senso l'elemento array.

  8. #8
    Anzi ho capito! Ti ringrazio per l'aiuto

  9. #9
    Anche io sono al primo anno di informatica! Un casino!! XD

  10. #10
    Utente di HTML.it L'avatar di linoma
    Registrato dal
    Mar 2010
    Messaggi
    1,346
    Se il resto del codice funziona, in pratica ti leggi tutti valori casuali enon quelli effettivamente inseriti
    Per gli Spartani e Sparta usa spartan Il mio github

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.