21/07/12 15:45
Dice
Lo devo fare solo in C; ditemi una cosa: adesso ho bisogno di fare questa cosa:
io ho un array; di questo array voglio prendere solo alcuni elementi e metterli in un altro array; io avevo pensato di fare una cosa del genere:
array iniziale: exoyez
io addesso voglio prendere solo le "e" e le "o" e metterle in un altro array
for(i=0; i != 'Lo devo fare solo in C; ditemi una cosa: adesso ho bisogno di fare questa cosa:
io ho un array; di questo array voglio prendere solo alcuni elementi e metterli in un altro array; io avevo pensato di fare una cosa del genere:
array iniziale: exoyez
io addesso voglio prendere solo le "e" e le "o" e metterle in un altro array
for(i=0; i != '{parsed_message}'; i++)
if((a[i] == 'e') || (a[i] == 'o'))
/*prendi e metti in un altro array*/
for(j=0; j!= '{parsed_message}'; j++)
b[j]==a[i];
Dite che può andare bene ?'; i++)
if((a[i] == 'e') || (a[i] == 'o'))
/*prendi e metti in un altro array*/
for(j=0; j!= 'Lo devo fare solo in C; ditemi una cosa: adesso ho bisogno di fare questa cosa:
io ho un array; di questo array voglio prendere solo alcuni elementi e metterli in un altro array; io avevo pensato di fare una cosa del genere:
array iniziale: exoyez
io addesso voglio prendere solo le "e" e le "o" e metterle in un altro array
for(i=0; i != '{parsed_message}'; i++)
if((a[i] == 'e') || (a[i] == 'o'))
/*prendi e metti in un altro array*/
for(j=0; j!= '{parsed_message}'; j++)
b[j]==a[i];
Dite che può andare bene ?'; j++)
b[j]==a[i];
Dite che può andare bene ?
io ho un array; di questo array voglio prendere solo alcuni elementi e metterli in un altro array; io avevo pensato di fare una cosa del genere:
array iniziale: exoyez
io addesso voglio prendere solo le "e" e le "o" e metterle in un altro array
for(i=0; i != 'Lo devo fare solo in C; ditemi una cosa: adesso ho bisogno di fare questa cosa:
io ho un array; di questo array voglio prendere solo alcuni elementi e metterli in un altro array; io avevo pensato di fare una cosa del genere:
array iniziale: exoyez
io addesso voglio prendere solo le "e" e le "o" e metterle in un altro array
for(i=0; i != '{parsed_message}'; i++)
if((a[i] == 'e') || (a[i] == 'o'))
/*prendi e metti in un altro array*/
for(j=0; j!= '{parsed_message}'; j++)
b[j]==a[i];
Dite che può andare bene ?'; i++)
if((a[i] == 'e') || (a[i] == 'o'))
/*prendi e metti in un altro array*/
for(j=0; j!= 'Lo devo fare solo in C; ditemi una cosa: adesso ho bisogno di fare questa cosa:
io ho un array; di questo array voglio prendere solo alcuni elementi e metterli in un altro array; io avevo pensato di fare una cosa del genere:
array iniziale: exoyez
io addesso voglio prendere solo le "e" e le "o" e metterle in un altro array
for(i=0; i != '{parsed_message}'; i++)
if((a[i] == 'e') || (a[i] == 'o'))
/*prendi e metti in un altro array*/
for(j=0; j!= '{parsed_message}'; j++)
b[j]==a[i];
Dite che può andare bene ?'; j++)
b[j]==a[i];
Dite che può andare bene ?
aaa
21/07/12 17:00
orion3
se ho capito bene ciò che devi fare, la condizione d'uscita dei cicli for mi sembrano sbagliate perchè ci dovresti mettere la lunghezza del primo vettore e poi il secondo ciclo è superfluo perchè puoi metterci una variabile,come indice del secondo array, che viene incrementata ogni volta che si entra nell'if...
Ultima modifica effettuata da orion3 21/07/12 17:01
aaa
21/07/12 17:31
orion3
premetto che non so molto di C però se non sbaglio c'è la funzione sizeof() che restitutisce la lunghezza di array statici, quindi il codice dovrebbe essere:
dovrebbe essere così, informati solo su come funziona sizeof() o se esiste qualche altra funzione che ti permetta di sapere la lunghezza di un vettore...
P.S. ogni lettera della tua parola occupa una posizione nell'array ? perchè se non è così dovresti gestire una stringa
j = 0; //inizializzo l'indice del secondo vettore for(i=0; i != sizeof(a); i++){ if((a[i] == 'e') || (a[i] == 'o')) { b[j]=a[i]; //metto l'elemento del vettore a nel vettore b j++; //incremento indice secondo array } }
dovrebbe essere così, informati solo su come funziona sizeof() o se esiste qualche altra funzione che ti permetta di sapere la lunghezza di un vettore...
P.S. ogni lettera della tua parola occupa una posizione nell'array ? perchè se non è così dovresti gestire una stringa
Ultima modifica effettuata da orion3 21/07/12 17:39
aaa
21/07/12 23:11
Dice
Postato originariamente da pierotofy:
Devi solo eliminare i primi due caratteri oppure cercare all'interno della stringa per la presenza di "ex"?
Per i primi due caratteri potresti semplicemente avanzare il puntatore di due...
Devi solo eliminare i primi due caratteri oppure cercare all'interno della stringa per la presenza di "ex"?
Per i primi due caratteri potresti semplicemente avanzare il puntatore di due...
char *str = "exoyezP(x,y,z)"; char *truncated = (str + 2); // "oyezP(x,y,z)"
Ei ei ei
grazie mille !!
La cosa che mi hai detto, funziona,e ti ringrazio molte...
l'unica cosa è che... l'eliminazione di elementi, oltre che nei primi 2 elementi, potrebbe avvenire anche in altre parti...
cosa mi consigli ?
aaa
21/07/12 23:14
Dice
Postato originariamente da orion3:
premetto che non so molto di C però se non sbaglio c'è la funzione sizeof() che restitutisce la lunghezza di array statici, quindi il codice dovrebbe essere:
dovrebbe essere così, informati solo su come funziona sizeof() o se esiste qualche altra funzione che ti permetta di sapere la lunghezza di un vettore...
P.S. ogni lettera della tua parola occupa una posizione nell'array ? perchè se non è così dovresti gestire una stringa
premetto che non so molto di C però se non sbaglio c'è la funzione sizeof() che restitutisce la lunghezza di array statici, quindi il codice dovrebbe essere:
j = 0; //inizializzo l'indice del secondo vettore for(i=0; i != sizeof(a); i++){ if((a[i] == 'e') || (a[i] == 'o')) { b[j]=a[i]; //metto l'elemento del vettore a nel vettore b j++; //incremento indice secondo array } }
dovrebbe essere così, informati solo su come funziona sizeof() o se esiste qualche altra funzione che ti permetta di sapere la lunghezza di un vettore...
P.S. ogni lettera della tua parola occupa una posizione nell'array ? perchè se non è così dovresti gestire una stringa
Due cose:
1) visto che sei alle prime armi, ti informo subito che esiste la funzione strlen, che mi dice quanto è lunga la stringa
2)nella riga di codice che hai messo dentro all'if: b[j]=a[i] così facendo missa che non va bene, perchè visto che non incrementi mai l'indice j, così facendo dovrebbe sostituire sempre lo stesso valore
o sbaglio ? non ne sono sicurissimo neanch'io del punto 2
aaa
22/07/12 22:04
Ultimo
Postato originariamente da Dice:
Due cose:
1) visto che sei alle prime armi, ti informo subito che esiste la funzione strlen, che mi dice quanto è lunga la stringa
2)nella riga di codice che hai messo dentro all'if: b[j]=a[i] così facendo missa che non va bene, perchè visto che non incrementi mai l'indice j, così facendo dovrebbe sostituire sempre lo stesso valore
o sbaglio ? non ne sono sicurissimo neanch'io del punto 2
Postato originariamente da orion3:
premetto che non so molto di C però se non sbaglio c'è la funzione sizeof() che restitutisce la lunghezza di array statici, quindi il codice dovrebbe essere:
dovrebbe essere così, informati solo su come funziona sizeof() o se esiste qualche altra funzione che ti permetta di sapere la lunghezza di un vettore...
P.S. ogni lettera della tua parola occupa una posizione nell'array ? perchè se non è così dovresti gestire una stringa
premetto che non so molto di C però se non sbaglio c'è la funzione sizeof() che restitutisce la lunghezza di array statici, quindi il codice dovrebbe essere:
j = 0; //inizializzo l'indice del secondo vettore for(i=0; i != sizeof(a); i++){ if((a[i] == 'e') || (a[i] == 'o')) { b[j]=a[i]; //metto l'elemento del vettore a nel vettore b j++; //incremento indice secondo array } }
dovrebbe essere così, informati solo su come funziona sizeof() o se esiste qualche altra funzione che ti permetta di sapere la lunghezza di un vettore...
P.S. ogni lettera della tua parola occupa una posizione nell'array ? perchè se non è così dovresti gestire una stringa
Due cose:
1) visto che sei alle prime armi, ti informo subito che esiste la funzione strlen, che mi dice quanto è lunga la stringa
2)nella riga di codice che hai messo dentro all'if: b[j]=a[i] così facendo missa che non va bene, perchè visto che non incrementi mai l'indice j, così facendo dovrebbe sostituire sempre lo stesso valore
o sbaglio ? non ne sono sicurissimo neanch'io del punto 2
Non hai visto il j++ ?
If ok Then GOTO Avanza else GOTO Inizia