Calcolare la somma dei numeri negativi

di il
4 risposte

Calcolare la somma dei numeri negativi

Salve, devo creare un programma dove dopo aver letto e memorizzato 8 numeri in un array, calcolare la somma di quelli negativi e memorizzare zero al loro posto. Ho scritto un po' di codice ma credo di aver sbagliato proprio il modo in cui calcolare i numeri negativi.. qualcuno può darmi un consiglio?

#include<stdio.h>
#define N 8

void sommaNeg(float a[]){                     
	int i, n=0;
	float somma;
	
	if(a[i]<0){
	for(i=0;i<N;i++){
			a[i]=a[i]-n;                            
			n=a[i];
			somma=a[i];	
		}
	}
	printf("La somma di tutti i valori negativi e': %f", somma);
}

void main(){
	float arrayIn[N];
	int i;
	
	printf("Inserire i numeri dell'array: ");
	for(i=0;i<N;i++){
		scanf("%f",&arrayIn[i]);
	}
	sommaNeg(arrayIn);
}
Sulla sostituzione degli zeri ancora non scrivo nulla perché prima vorrei risolvere questo ahaha

4 Risposte

  • Re: Calcolare la somma dei numeri negativi

    Non credi che la if per il test del numero negativo vada messa DENTRO al for che scorre gli elementi dell'array? Poi, spiega che cosa stai facendo dentro al for...

    Quello che andrebbe fatto, in pseudo-codice è:
    
    per ciascun elemento dell'array {
       se l'elemento i-esimo è negativo {
          somma = somma + elemento i-esimo;
       }
    }
    
  • Re: Calcolare la somma dei numeri negativi

    Devi fare una somma e non c'è neanche un +
  • Re: Calcolare la somma dei numeri negativi

    Se si fa copia e incolla di pezzi di codice di altri esercizi che fanno altro... questo è il risultato
  • Re: Calcolare la somma dei numeri negativi

    SpiritoLibero ha scritto:


    Non credi che la if per il test del numero negativo vada messa DENTRO al for che scorre gli elementi dell'array? Poi, spiega che cosa stai facendo dentro al for...

    Quello che andrebbe fatto, in pseudo-codice è:
    
    per ciascun elemento dell'array {
       se l'elemento i-esimo è negativo {
          somma = somma + elemento i-esimo;
       }
    }
    
    giusto giusto, grazie. Onestamente non so perché mi confondeva molto il fatto di fare la somma tra numeri negativi e non riuscivo a rappresentarlo. Grazie mille !
Devi accedere o registrarti per scrivere nel forum
4 risposte