Salve ragazzi nello svolgere questo esercizio ho riscontrato difficoltà per quanto riguarda la somma dei numeri eliminati (come richiesto dalla seguente traccia). Il programma così com'è funziona e svolge la sua corretta funzione, solo che nella stampa del numero da un valore sballato (anche perchè non ho inserito comandi per la medesima) potreste aiutarmi? Grazie in anticipo.
Siano assegnati in ingresso, da tastiera, un vettore di interi V, il suo riempimento n ed un intero k.
Si scriva un programma che elimini dal vettore V tutti gli elementi il cui valore è maggiore di k
e calcoli il numero num di elementi eliminati. Si stampino quindi il vettore V modificato ed il valore num.
Il programma deve essere articolato in funzioni (ad es.: input, output, elimina).
Suggerimento: la funzione elimina riceve in ingresso n, V e k e restituisce come valore di ritorno num.
codice:
#include <iostream>
#include <stdlib.h>
using namespace std;
void input (float v[], int &n, int &k);
void elimina (float v[], int n, int numero, int k);
void output (float v[], int numero);
int main (){
float v[100];
int n,numero,k;
input (v,n,k);
elimina (v,n,numero,k);
output (v,numero);
system("Pause");
return 0;
}
void input (float v[], int &n, int &k){
cout<<"Inserisci la cardinalita del vettore V:\n";
cin>>n;
cout<<"Riempi il vettore:\n";
for (int i=0; i<n; i++){
cin>>v[i];
}
cout<<"Inserisci il valore di K intero:\n";
cin>>k;
}
void elimina (float v[], int n, int numero, int k){
int i;
bool elimina=false;
elimina=0;
while(!elimina){
if(i>k){
elimina=true;
}
else{
elimina++;
}}}
void output (float v[], int numero){
cout<<"Il vettore modificato e': "<<elimina<<"\n";
cout<<"Il numero di vettori eliminati e': "<<numero<<"\n";
}