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++ - Aiuto per questo programma
Forum - C/C++ - Aiuto per questo programma

Pagine: [ 1 2 3 4 ] Precedente | Prossimo
Avatar
gforce (Normal User)
Rookie


Messaggi: 33
Iscritto: 21/01/2010

Segnala al moderatore
Postato alle 18:38
Martedì, 06/04/2010
Questo topic è stato chiuso dal moderatore

se io ho questa traccia come posso risolverla:

Scrivete un programma che calcoli un espressione:

Inserisci l'espressione: 1+2*3 (input dell'utente)
Valore = 9

Gli operatori sono + - * / e nessun operatore ha precedenza sugli altri !


MI fareste questo programma commentato, perchè non riesco a risolverlo. Grazie

Ultima modifica effettuata da gforce il 06/04/2010 alle 19:07
PM
Avatar
gio97 (Ex-Member)
Guru


Messaggi: 715
Iscritto: 25/04/2009

Segnala al moderatore
Postato alle 18:50
Martedì, 06/04/2010
Ah, vuole il programma e pure commentato, cosa vuole di contorno il signore? Vuole ordinare anche del vino?
Non siamo qui per farti il programma, altrimenti non impari nulla e non ha assolutamente senso. Innanzitutto sono certo che riesci perlomeno ad avere in input l'espressione, almeno quello potevi degnarti di scriverlo. Poi tra l'altro è ancora più semplice, in quanto non c'è la precedenza degli operatori. Nel caso ci fosse dovresti vedere la "Notazione Polacca Inversa". Basta un semplice controllo delle stringhe, se ti impegni sono certo che riesci a fare gran parte del lavoro, altrimenti, se proprio hai QUALCHE problema, siamo qui per aiutarti.

PS: Ma prima di imparare a programmare, potresti imparare un po' di matematica. Hai detto che non c'è precedenza degli operatori, quindi 1 + 2 = 3 * 3 = 9;
E anche se ci fosse 2 * 3 = 6 + 1 = 7.

Ultima modifica effettuata da gio97 il 06/04/2010 alle 18:53
PM
Avatar
gforce (Normal User)
Rookie


Messaggi: 33
Iscritto: 21/01/2010

Segnala al moderatore
Postato alle 19:07
Martedì, 06/04/2010
Testo quotato

Postato originariamente da gio97:

Ah, vuole il programma e pure commentato, cosa vuole di contorno il signore? Vuole ordinare anche del vino?
Non siamo qui per farti il programma, altrimenti non impari nulla e non ha assolutamente senso. Innanzitutto sono certo che riesci perlomeno ad avere in input l'espressione, almeno quello potevi degnarti di scriverlo. Poi tra l'altro è ancora più semplice, in quanto non c'è la precedenza degli operatori. Nel caso ci fosse dovresti vedere la "Notazione Polacca Inversa". Basta un semplice controllo delle stringhe, se ti impegni sono certo che riesci a fare gran parte del lavoro, altrimenti, se proprio hai QUALCHE problema, siamo qui per aiutarti.

PS: Ma prima di imparare a programmare, potresti imparare un po' di matematica. Hai detto che non c'è precedenza degli operatori, quindi 1 + 2 = 3 * 3 = 9;
E anche se ci fosse 2 * 3 = 6 + 1 = 7.



Grazie .. Ho capito come devo costruire il programma adesso mi manca la risposta sul mio secondo topic aperto !

PM
Avatar
Luk3 (Ex-Member)
Guru


Messaggi: 615
Iscritto: 16/08/2008

Segnala al moderatore
Postato alle 22:28
Martedì, 06/04/2010
Non fare caso a gio97, è un po' sgarbato di suo.

PM
Avatar
gio97 (Ex-Member)
Guru


Messaggi: 715
Iscritto: 25/04/2009

Segnala al moderatore
Postato alle 22:38
Martedì, 06/04/2010
Era ironico, però credo che con queste frasi si capisca bene ciò che intendo, spero di non offendere nessuno, ma è il mio carattere.

PM
Avatar
gforce (Normal User)
Rookie


Messaggi: 33
Iscritto: 21/01/2010

Segnala al moderatore
Postato alle 7:35
Giovedì, 08/04/2010
Mi dovreste dire soltanto questo:

come si fa con il getchar a riconoscere se è un numero.
Char ch;
INT pila;
while ((ch = getchar) != '\n')
switch (ch)
case '2' pila += 2

+ o - è così ? ( non badare a parentesi o cose varie che sto sull iPhone )

PM
Avatar
gio97 (Ex-Member)
Guru


Messaggi: 715
Iscritto: 25/04/2009

Segnala al moderatore
Postato alle 7:39
Giovedì, 08/04/2010
Oltre al fatto di non aver compreso la tua ultima domanda, un libro che ti consiglio assolutamente di prendere è quello Deitel & Deitel: C Corso di Programmazione.
Fai un sacco di errori, è evidente che non conosci il linguaggio.

PM
Avatar
gforce (Normal User)
Rookie


Messaggi: 33
Iscritto: 21/01/2010

Segnala al moderatore
Postato alle 19:57
Giovedì, 08/04/2010
bhe la domanda è facile ... Non vedo cosa non hai capito ... E tu oltre al libro sai dire qualche altra cosa ? Adesso non dire "Ti stavo solo consigliando oppure, è il mio carattere ecc. ..."

Ripeto la domanda ... Getchar riceve caratteri per esempio se digito 2 non mi lo riconosce come int ma come char ! C'è un modo oltre al if o switch per far vedere se il carattere immesso dall'utente è un numero, quindi convertilo in numero ? E di conseguenza fare operazioni ?

Hai capito ora gio97 ? Se no è meglio che ti copri un dizionario della lingua italiana, zanichelli e ottimo !

Ultima modifica effettuata da gforce il 08/04/2010 alle 19:59
PM
Avatar
Luk3 (Ex-Member)
Guru


Messaggi: 615
Iscritto: 16/08/2008

Segnala al moderatore
Postato alle 22:00
Giovedì, 08/04/2010
Testo quotato

Postato originariamente da gforce:


Hai capito ora gio97 ? Se no è meglio che ti copri un dizionario della lingua italiana, zanichelli e ottimo !



EPIC FAIL.

Ultima modifica effettuata da Luk3 il 08/04/2010 alle 22:00
PM
Pagine: [ 1 2 3 4 ] Precedente | Prossimo