Salve ragazzi nello svolgere questo esercizio ho incontrato difficoltà nel calcolare i numeri di elementi eliminati dal vettore. Il programma così com'è funziona solo che la funzione numero da un valore sballato perchè non è stata inserita(nel void elimina), 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.
*/
#include <iostream>
#include <stdlib.h>
using namespace std;
/*devo eliminare valori del vettore > k e calcolare il num di elementi eliminati*/
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 elementi eliminati e': "<<numero<<"\n";
}