Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - leggere stringa da una posizione e non dall'inizio
Forum - C/C++ - leggere stringa da una posizione e non dall'inizio

Avatar
LittleHacker (Member)
Guru


Messaggi: 1033
Iscritto: 28/04/2009

Segnala al moderatore
Postato alle 23:58
Giovedì, 20/08/2009
Salve a tutti scusate per il titolo ma non riuscivo a esprimere ql ke volevo fare nel titolo...8-|

Sto creando una calcolatrice e vorrei che quando l'utente scrive un'operazione tipo 10+5= il progy mi legga cs c'è dopo il 10 e prima del 5 così da capire che operazione devo fare...Grazie mille a tutti ciao ciao :k:


Android User :)

MudStorm OS Source GitHub: https://github.com/Piso94/MudStorm-OS
PM Quote
Avatar
manvb.net (Member)
Guru


Messaggi: 663
Iscritto: 28/01/2008

Segnala al moderatore
Postato alle 0:16
Venerdì, 21/08/2009
Testo quotato

Postato originariamente da LittleHacker:

Salve a tutti scusate per il titolo ma non riuscivo a esprimere ql ke volevo fare nel titolo...8-|

Sto creando una calcolatrice e vorrei che quando l'utente scrive un'operazione tipo 10+5= il progy mi legga cs c'è dopo il 10 e prima del 5 così da capire che operazione devo fare...Grazie mille a tutti ciao ciao :k:



Leggi la stringa per intero, poi scorri i caratteri fino a un simbolo(+,-,*,/) e fai lo stesso con l'uguale.

Ultima modifica effettuata da manvb.net il 21/08/2009 alle 0:17


"E' facile distruggere, la vera sfida è creare!"(cit. me)

"Ricordati chi sei, non permettere a nessuno di cambiarti, non perdere mai te stesso. Farai grandi cose nella vita."(cit. me)

double penetration; //ouch
PM Quote
Avatar
LittleHacker (Member)
Guru


Messaggi: 1033
Iscritto: 28/04/2009

Segnala al moderatore
Postato alle 0:18
Venerdì, 21/08/2009
Testo quotato

Postato originariamente da manvb.net:

Testo quotato

Postato originariamente da LittleHacker:

Salve a tutti scusate per il titolo ma non riuscivo a esprimere ql ke volevo fare nel titolo...8-|

Sto creando una calcolatrice e vorrei che quando l'utente scrive un'operazione tipo 10+5= il progy mi legga cs c'è dopo il 10 e prima del 5 così da capire che operazione devo fare...Grazie mille a tutti ciao ciao :k:



Leggi la stringa per intero, poi scorri i caratteri fino a che non il carattere corrente non è un numero e fai lo stesso con l'uguale.



Scusa8-| potresti spiegarmelo in codice
ho capito cosa vuoi dire ma non riesco a tradurlo in codice sono alle prime armi e ho kiesto questo per imparare...


Android User :)

MudStorm OS Source GitHub: https://github.com/Piso94/MudStorm-OS
PM Quote
Avatar
manvb.net (Member)
Guru


Messaggi: 663
Iscritto: 28/01/2008

Segnala al moderatore
Postato alle 0:24
Venerdì, 21/08/2009
Codice sorgente - presumibilmente C/C++

  1. char a[20];
  2. int c=0;
  3. cin >> a;
  4. for(c=0, c<20, c++)
  5. {
  6.    if (a[c] == '+'){
  7.  
  8.    }
  9.    elseif (a[c] == '='{
  10.      
  11.    }
  12.    else{
  13.      //è una cifra, ci fai quello che vuoi
  14.    }
  15. }



Con un po' di inventiva e un po' di variabili boolean di verifica ci fai quello che vuoi.

Ultima modifica effettuata da manvb.net il 21/08/2009 alle 0:25


"E' facile distruggere, la vera sfida è creare!"(cit. me)

"Ricordati chi sei, non permettere a nessuno di cambiarti, non perdere mai te stesso. Farai grandi cose nella vita."(cit. me)

double penetration; //ouch
PM Quote
Avatar
LittleHacker (Member)
Guru


Messaggi: 1033
Iscritto: 28/04/2009

Segnala al moderatore
Postato alle 0:27
Venerdì, 21/08/2009
Testo quotato

Postato originariamente da manvb.net:

Codice sorgente - presumibilmente C/C++

  1. char a[20];
  2. int c=0;
  3. cin >> a;
  4. for(c=0, c<20, c++)
  5. {
  6.    if (a[c] == '+'){
  7.  
  8.    }
  9.    elseif (a[c] == '='{
  10.      
  11.    }
  12.    else{
  13.      //è una cifra, ci fai quello che vuoi
  14.    }
  15. }



Con un po' di inventiva e un po' di variabili boolean di verifica ci fai quello che vuoi.



Scusa se te lo kiedo potresti commentare tutto il codice, so qlks di c++ ma non tutto


Android User :)

MudStorm OS Source GitHub: https://github.com/Piso94/MudStorm-OS
PM Quote
Avatar
manvb.net (Member)
Guru


Messaggi: 663
Iscritto: 28/01/2008

Segnala al moderatore
Postato alle 0:56
Venerdì, 21/08/2009
Beh, queste sono le basi... Comunque:
Codice sorgente - presumibilmente C++

  1. char a[20]; //Variabile di input
  2. int c=0; //VAriabile per il ciclo(contatore)
  3. cin >> a; //Input
  4. char prevc = ' '; //carattere precendente
  5. for(c=0, c<20, c++)
  6. {
  7.    if (a[c] == '+'){ //Controllo se il carattere corrente è +
  8.       //Ecco che sai quale operazione devi eseguire(+)
  9.    }
  10.    else if (a[c] == '='){//Controllo se il carattere corrente è =
  11.       //Ecco che sai quale operazione devi eseguire(-)
  12.    }
  13.    else if (a[c] == '='){//Controllo se il carattere corrente è =
  14.      
  15.    }
  16.    else{
  17.      //è una cifra, ci fai quello che vuoi
  18.      if(prevc == '+'){//se il carattere precedente è uguale a +(fai quello che vuoi)
  19.      }
  20.      if(prevc == '='){//se il carattere precedente è uguale a =(fai quello che vuoi)
  21.      }
  22.    }
  23.    prevc=a[c];//Imposto il carattere precedente uguale a quello corrente
  24. }


Dai, un po di inventiva!

Ultima modifica effettuata da manvb.net il 21/08/2009 alle 15:32


"E' facile distruggere, la vera sfida è creare!"(cit. me)

"Ricordati chi sei, non permettere a nessuno di cambiarti, non perdere mai te stesso. Farai grandi cose nella vita."(cit. me)

double penetration; //ouch
PM Quote