Originariamente inviato da Celebron
non capisco perchè assegni a vet i valori di vetm e vetmin
scusa non dovresti fare l'esatto contrario?
Ci ho provato ma non funge.
codice:
#include <cstdlib>
#include <iostream>
#include <math.h>
#define max 100
using namespace std;
int main(int argc, char *argv[])
{
int vet[max],i,a[max],m=0,b[max],min=0,n,k;
cout<<"Inserisci il valore da assegnare a K"<<endl;
cin>>k;
do{
cout<<"Inserisci la dimensione del vettore."<<endl;
cin>>n;
}
while (n<1 || n>100);
for (i=0;i<n;i++)
{
cout<<"Inserisci il numero da inserire nel vettore"<<endl;
cin>>vet[i];
}
for (i=0;i<n;i++)
{
if (vet[i]>=k)
{
a[m]=vet[i];
m++;
}
else
{
b[min]=vet[i];
min++;
}
}
cout<<"I valori maggiori uguali a K sono "<<a[m]<<endl;
cout<<"Mentre quelli minori sono "<<b[min]<<endl;
system("PAUSE");
return EXIT_SUCCESS;
}
Ho modificato il nome dei due vettori da creare "a" e "b" (piu semplice non potevo xD).
Cioè io ho pensato nel secondo for di controllare se l' elemento dell' indice di vet fosse >= di k se cosi fosse assegno quel determinato indice all' indice di a e dopo incrementarlo, e viceversa (else).
Il problema sta che nei risultati finali viene una cosa del tipo :
I valori maggiori uguali a K sono 878784459
Mentre quelli minori sono 87875454