Untitled
/* Scrivere un sottoprogramma che riceve in ingresso un array di interi v, un intero k e qualsiasi altro parametro ritenuto necessario. Il sottoprogramma calcola e restituisce il massimo della somma di k elementi contigui dell’array. Nel caso in cui il numero degli elementi nell’array è inferiore a k il sottoprogramma restituisce la somma degli elementi presenti nell’array. Esempio: Ricevendo in ingresso v = [1 2 -4 1 3 -5 2 10 -1 0] k = 7 esistono quattro possibili somme di 7 elementi contigui e il valore massimo restituito dal sottoprogramma è pari a 10. */ #include <stdio.h> int massimaSomma(int *v, int k, int dim) { if(dim<=k) { int somma=0; for(int i=0; i<dim; i++) { somma+=v[i]; } return somma; } int numFinestre = dim - k +1; int massimo =0; int primaFinestra = 1; for(int i=0; i<numFinestre; i++) { int sommaCorrente =0; for(int j=i; j<i+k; j++) { sommaCorrente+=v[j]; } } return massimo; } int main() { // Write C code here printf("Try programiz.pro"); return 0; }
Leave a Comment