Il testo del problema è il seguente: Si richieda all'utente di inserire un array di n caratteri, i numeri inseriti nell'array dovranno essere positivi, dopo ciò l'utente inserirà un numero k, se è presente nell'array bisognerà stampare la posizione,
se è presente due volte dovrà stampare l'ultima posizione, se non è presente dovrà stampare -1.
Diciamo che non ho ancora inserito il controllo dei numeri positivi suppongo con un WHILE giusto?ma come?..
E poi non mi ritrovo con la posizione in quanto mi da sempre la posizione 0..
#include <iostream>
using namespace std;
/*Si richieda all'utente di inserire un array di n caratteri, i numeri inseriti nell'array dovranno essere positivi, dopo ciò l'utente inserirà un numero k, se è presente nell'array bisognerà stampare la posizione,
se è presente due volte dovrà stampare l'ultima posizione, se non è presente dovrà stampare -1*/
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
int main(int argc, char** argv) {
int i,n,vector[i],k,posizione;
cout <<" Quanti caratteri vuoi inserire nell'array : ";
cin >> n;
for (i=0; i<n; i++)
{
cout << "Inserire dato positivo nell'array : ";
cin >> vector[i];
}
cout << " Nell'array sono presenti i seguenti numeri : ";
for (i=0; i<n; i++)
{
cout << vector[i] << " " << endl;
}
cout << " Inserire un valore k da ricercare nell'array ";
cin >> k;
posizione = 0;
for (i=0; i<n; i++)
{
if (vector[i]=k)
{
vector [i] = k;
posizione = i;
cout << " numero trovato nella posizione " << posizione << endl;
}
for (i=0; i<n; i++)
{
if (vector[i]!=k)
{
posizione == -1;
cout << " Numero trovato nella posizione " << posizione << endl;
}
return 0;
}
}
}
Scusate la mia ignoranza ma sono nuovo nel mondo del c++.