PDA

Visualizza la versione completa : 2 diventa 16 in c++


fior95
19-02-2013, 21:46
Ciao :) !!!
Ho svolto questo programma in c++ che dovrebbe riordinare un vettore di tipo int ma mi è sorto uno strano problema, infatti quando inserisco in input il 2, in alcuni casi diventa 16 :( !!!!
Spero in un vostro aiuto , grazie mille :)

ecco il sorgente :



#include<iostream>

using namespace std;

void carica(int vett[]);
void mostra(int vett[]);
void ordina(int vett[]);

int main()
{
int vet[10];
carica(vet);
mostra(vet);
ordina(vet);
cout<<endl;
mostra(vet);
system("pause");
return 0;
}
void carica(int vett[])
{
int i;
for(i=0;i<10;i++)
{
cout<<"inserisci il "<<i+1<<" numero "<<endl;
cin>>vett[i];
}
}
void mostra(int vett[])
{
int i;
for(i=0;i<10;i++)
{
cout<<"il "<<i+1<<"numero e' "<<vett[i]<<endl;
}
}
void ordina(int vett[])
{
int i,s,c;
for(i=1;i<10;i++)
{
c=i;
while(vett[c]<vett[c-1])
{
s=vett[c];
vett[c]=vett[c-1];
vett[c-1]=s;
if(c>0)
c--;
}
}
}

MItaly
19-02-2013, 21:50
Se non posti il codice che dà problemi è difficile darti il benché minimo aiuto... :stordita:

fior95
19-02-2013, 21:54
Scusatemi , ho appena modificato il messaggio !!!

MItaly
19-02-2013, 22:03
Tip: quando posti codice, racchiudilo tra tag
... , altrimenti perde l'indentazione.

Loading