Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione vivo X300 Pro: è ancora lui il re della fotografia mobile, peccato per la batteria
Recensione vivo X300 Pro: è ancora lui il re della fotografia mobile, peccato per la batteria
vivo X300 Pro rappresenta un'evoluzione misurata della serie fotografica del produttore cinese, con un sistema di fotocamere migliorato, chipset Dimensity 9500 di ultima generazione e l'arrivo dell'interfaccia OriginOS 6 anche sui modelli internazionali. La scelta di limitare la batteria a 5.440mAh nel mercato europeo, rispetto ai 6.510mAh disponibili altrove, fa storcere un po' il naso
Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'' per spingere gli handheld gaming PC al massimo
Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'' per spingere gli handheld gaming PC al massimo
Lenovo Legion Go 2 è la nuova handheld PC gaming con processore AMD Ryzen Z2 Extreme (8 core Zen 5/5c, GPU RDNA 3.5 16 CU) e schermo OLED 8,8" 1920x1200 144Hz. È dotata anche di controller rimovibili TrueStrike con joystick Hall effect e una batteria da 74Wh. Rispetto al dispositivo che l'ha preceduta, migliora ergonomia e prestazioni a basse risoluzioni, ma pesa 920g e costa 1.299€ nella configurazione con 32GB RAM/1TB SSD e Z2 Extreme
AWS re:Invent 2025: inizia l'era dell'AI-as-a-Service con al centro gli agenti
AWS re:Invent 2025: inizia l'era dell'AI-as-a-Service con al centro gli agenti
A re:Invent 2025, AWS mostra un’evoluzione profonda della propria strategia: l’IA diventa una piattaforma di servizi sempre più pronta all’uso, con agenti e modelli preconfigurati che accelerano lo sviluppo, mentre il cloud resta la base imprescindibile per governare dati, complessità e lock-in in uno scenario sempre più orientato all’hybrid cloud
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 18-10-2010, 14:57   #1
zanardi84
Senior Member
 
L'Avatar di zanardi84
 
Iscritto dal: Apr 2004
Città: La regione del Triplete
Messaggi: 5749
Un mio semplice programma: come miglioralo?

Sto scrivendo un semplice programma di cui vi inserirò il codice.
Nella versione non completa attuale e funzionante ho cercato di inserire ciò che ho sino ad ora imparato, cioè poco: funzioni e vettori. Il mio scopo è stato quello di cercare di scrivere più funzioni possibile, versatili per scopi disparati, adattabili e semplici. Il main doveva essere poco più di una sequenza di chiamate a funzione.

C'è sicuramente un bug comune che andrebbe risolto con una funzione ad hoc, ma che non sono in grado di trovare e di scrivere: il menu del mio programma è strutturato in modo che la scelta sia sempre numerica. Nel momento in cui inserisco un solo carattere letterale va in loop, e ciò non è ovviamente ammissibile.

Due cose che non mi piacciono:
1) l'interfaccia delle chiamate, forse un po' complicate da gestire.. qualche consiglio in proposito?
2) Il primo elemento del vettore ha indice 0. Vorrei che avesse indice 1. Ho qualche dubbio su come fare.

Vorrei un vostro parere sull'operato, sino a questo punto.
Quando imparerò liste e strutture lo potenzierò.

N.B. Intanto è solo un "prototipo" con il vettore già riempito, per simulare la situazione.
Allegati
File Type: txt listato.txt (5.1 KB, 30 visite)
__________________
Trattative felicemente concluse con domienico120, xbax88 ed engiel, ottimi e seri utenti.

Ultima modifica di zanardi84 : 18-10-2010 alle 15:12.
zanardi84 è offline   Rispondi citando il messaggio o parte di esso
Old 18-10-2010, 15:34   #2
!fazz
Moderatore
 
L'Avatar di !fazz
 
Iscritto dal: Nov 2006
Messaggi: 21919
per risolvere il loop
Codice:
int inserimento (string messaggio1, string messaggio2, int estremo_inferiore, int estremo_superiore)
{
      int dato;
      char cdato
      cout << messaggio1<<endl;
      cout <<endl;
      cout << messaggio2<<endl;
      cin >>cdato;
      dato=atoi(cdato)

     if (dato==0)&&(cdato!='0')
      cout<<"errore";
else{

      while (dato < estremo_inferiore || dato > estremo_superiore)
      {
            cout << "Errore! Il valore non deve essere inferiore di " <<estremo_inferiore<< " e maggiore di " <<estremo_superiore<< "! Ridigitare"<<endl;
            cin >> dato;
      }
}
      return dato;
}
__________________
"WS" (p280,cx750m,4790k+212evo,z97pro,4x8GB ddr3 1600c11,GTX760-DC2OC,MZ-7TE500, WD20EFRX)
Desktop (three hundred,650gq,3800x+nh-u14s ,x570 arous elite,2x16GB ddr4 3200c16, rx5600xt pulse P5 1TB)+NB: Lenovo p53 i7-9750H,64GB DDR4,2x1TB SSD, T1000
!fazz è offline   Rispondi citando il messaggio o parte di esso
Old 18-10-2010, 16:13   #3
zanardi84
Senior Member
 
L'Avatar di zanardi84
 
Iscritto dal: Apr 2004
Città: La regione del Triplete
Messaggi: 5749
Quote:
Originariamente inviato da !fazz Guarda i messaggi
per risolvere il loop
Codice:
int inserimento (string messaggio1, string messaggio2, int estremo_inferiore, int estremo_superiore)
{
      int dato;
      char cdato
      cout << messaggio1<<endl;
      cout <<endl;
      cout << messaggio2<<endl;
      cin >>cdato;
      dato=atoi(cdato)

     if (dato==0)&&(cdato!='0')
      cout<<"errore";
else{

      while (dato < estremo_inferiore || dato > estremo_superiore)
      {
            cout << "Errore! Il valore non deve essere inferiore di " <<estremo_inferiore<< " e maggiore di " <<estremo_superiore<< "! Ridigitare"<<endl;
            cin >> dato;
      }
}
      return dato;
}
Qualcosa non quadra, ho errori di compilazione.
71 invalid conversion from `char' to `const char*'

71 initializing argument 1 of `int atoi(const char*)'

73 expected identifier before '(' token

73 expected `;' before '(' token
__________________
Trattative felicemente concluse con domienico120, xbax88 ed engiel, ottimi e seri utenti.
zanardi84 è offline   Rispondi citando il messaggio o parte di esso
Old 18-10-2010, 17:18   #4
!fazz
Moderatore
 
L'Avatar di !fazz
 
Iscritto dal: Nov 2006
Messaggi: 21919
Quote:
Originariamente inviato da zanardi84 Guarda i messaggi
Qualcosa non quadra, ho errori di compilazione.
71 invalid conversion from `char' to `const char*'

71 initializing argument 1 of `int atoi(const char*)'

73 expected identifier before '(' token

73 expected `;' before '(' token
vabbè ho scritto di fretta nel forum senza un ide sotto, lo scopo era farti vedere come si risolve non risolverti il problema fatto e finito

(cmq per l'esattezza manca il ; nella dichiarazione di cdato)

i loop li hai quando inserisci un carattere al posto di un intero la soluzione è acquisire un carattere e dopo trasformarlo in un intero mediante la funzione atoi

il problema è che atoi restituisce 0 se il dato inserito non è un numero quindi se vuoi usare anche lo 0 nel menu devi controllare che il valore inserito sia effettivamente 0 l'if te l'ho messo li a caso devi integrare il controllo nel tuo codice
__________________
"WS" (p280,cx750m,4790k+212evo,z97pro,4x8GB ddr3 1600c11,GTX760-DC2OC,MZ-7TE500, WD20EFRX)
Desktop (three hundred,650gq,3800x+nh-u14s ,x570 arous elite,2x16GB ddr4 3200c16, rx5600xt pulse P5 1TB)+NB: Lenovo p53 i7-9750H,64GB DDR4,2x1TB SSD, T1000
!fazz è offline   Rispondi citando il messaggio o parte di esso
Old 18-10-2010, 18:30   #5
zanardi84
Senior Member
 
L'Avatar di zanardi84
 
Iscritto dal: Apr 2004
Città: La regione del Triplete
Messaggi: 5749
Quote:
Originariamente inviato da !fazz Guarda i messaggi
vabbè ho scritto di fretta nel forum senza un ide sotto, lo scopo era farti vedere come si risolve non risolverti il problema fatto e finito

(cmq per l'esattezza manca il ; nella dichiarazione di cdato)

i loop li hai quando inserisci un carattere al posto di un intero la soluzione è acquisire un carattere e dopo trasformarlo in un intero mediante la funzione atoi

il problema è che atoi restituisce 0 se il dato inserito non è un numero quindi se vuoi usare anche lo 0 nel menu devi controllare che il valore inserito sia effettivamente 0 l'if te l'ho messo li a caso devi integrare il controllo nel tuo codice
Da quel che ho capito implementando un piccolo programma per testare il funzionamento, atoi funge così, per esempio:

Inserisco 11 -> restituisce 11.
Inserisco A -> restituisce 0.
Inserisco 123a -> restituisce 123 ignorando la a.
Inserisco "nel mezzo del cammin di nostra vista..." -> restituisce 0.
Inserisco A4 -> restituisce 0.

e così via.
Buon funzionamento, ma voglio prevedere l'uso dello 0 per qualche ragione. Come posso fare?
__________________
Trattative felicemente concluse con domienico120, xbax88 ed engiel, ottimi e seri utenti.
zanardi84 è offline   Rispondi citando il messaggio o parte di esso
Old 18-10-2010, 18:48   #6
!fazz
Moderatore
 
L'Avatar di !fazz
 
Iscritto dal: Nov 2006
Messaggi: 21919
Quote:
Originariamente inviato da zanardi84 Guarda i messaggi
Da quel che ho capito implementando un piccolo programma per testare il funzionamento, atoi funge così, per esempio:

Inserisco 11 -> restituisce 11.
Inserisco A -> restituisce 0.
Inserisco 123a -> restituisce 123 ignorando la a.
Inserisco "nel mezzo del cammin di nostra vista..." -> restituisce 0.
Inserisco A4 -> restituisce 0.

e così via.
Buon funzionamento, ma voglio prevedere l'uso dello 0 per qualche ragione. Come posso fare?
guarda l'if che ho inserito

per controllare lo 0 devi controllare quando atoi restituisce 0 se il carattere inserito è effettivamente 0
__________________
"WS" (p280,cx750m,4790k+212evo,z97pro,4x8GB ddr3 1600c11,GTX760-DC2OC,MZ-7TE500, WD20EFRX)
Desktop (three hundred,650gq,3800x+nh-u14s ,x570 arous elite,2x16GB ddr4 3200c16, rx5600xt pulse P5 1TB)+NB: Lenovo p53 i7-9750H,64GB DDR4,2x1TB SSD, T1000
!fazz è offline   Rispondi citando il messaggio o parte di esso
Old 19-10-2010, 09:55   #7
zanardi84
Senior Member
 
L'Avatar di zanardi84
 
Iscritto dal: Apr 2004
Città: La regione del Triplete
Messaggi: 5749
Quote:
Originariamente inviato da !fazz Guarda i messaggi
guarda l'if che ho inserito

per controllare lo 0 devi controllare quando atoi restituisce 0 se il carattere inserito è effettivamente 0
Non posso fare il controllo diretto perchè dato è un intero e cdato è una stringa. Devo trovare un modo alternativo per fare il confronto, ma al momento non mi viene in mente nulla.
__________________
Trattative felicemente concluse con domienico120, xbax88 ed engiel, ottimi e seri utenti.

Ultima modifica di zanardi84 : 19-10-2010 alle 09:58.
zanardi84 è offline   Rispondi citando il messaggio o parte di esso
Old 19-10-2010, 15:54   #8
!fazz
Moderatore
 
L'Avatar di !fazz
 
Iscritto dal: Nov 2006
Messaggi: 21919
Quote:
Originariamente inviato da zanardi84 Guarda i messaggi
Non posso fare il controllo diretto perchè dato è un intero e cdato è una stringa. Devo trovare un modo alternativo per fare il confronto, ma al momento non mi viene in mente nulla.
a parte che dopo questo ti consiglio di riguardarti le basi di programmazione

cdato è un carattere non una stringa

se ti ho detto di guardare l'if che ti ho scritto appositamente io ci sarà un motivo no?

if (dato==0)&&(cdato!='0')
cout<<"errore";
__________________
"WS" (p280,cx750m,4790k+212evo,z97pro,4x8GB ddr3 1600c11,GTX760-DC2OC,MZ-7TE500, WD20EFRX)
Desktop (three hundred,650gq,3800x+nh-u14s ,x570 arous elite,2x16GB ddr4 3200c16, rx5600xt pulse P5 1TB)+NB: Lenovo p53 i7-9750H,64GB DDR4,2x1TB SSD, T1000
!fazz è offline   Rispondi citando il messaggio o parte di esso
Old 19-10-2010, 16:07   #9
zanardi84
Senior Member
 
L'Avatar di zanardi84
 
Iscritto dal: Apr 2004
Città: La regione del Triplete
Messaggi: 5749
Quote:
Originariamente inviato da !fazz Guarda i messaggi
a parte che dopo questo ti consiglio di riguardarti le basi di programmazione

cdato è un carattere non una stringa

se ti ho detto di guardare l'if che ti ho scritto appositamente io ci sarà un motivo no?

if (dato==0)&&(cdato!='0')
cout<<"errore";
Ho sbagliato a chiamare un carattere come stringa, ma è su queste (col tipo string) che sto lavorando attualmente nei programmi (e l'implementazione che ho provato con successo, ma senza gesitone dello 0, prevede vettore di char che è una stringa
Se io quell'if lo inserisco nel compilatore, l'unico errore che restituisce è quello di compilazione perchè non può confrontare un char come cdato con un int come dato.
__________________
Trattative felicemente concluse con domienico120, xbax88 ed engiel, ottimi e seri utenti.

Ultima modifica di zanardi84 : 19-10-2010 alle 16:17.
zanardi84 è offline   Rispondi citando il messaggio o parte di esso
Old 19-10-2010, 16:51   #10
!fazz
Moderatore
 
L'Avatar di !fazz
 
Iscritto dal: Nov 2006
Messaggi: 21919
Quote:
Originariamente inviato da zanardi84 Guarda i messaggi
Ho sbagliato a chiamare un carattere come stringa, ma è su queste (col tipo string) che sto lavorando attualmente nei programmi (e l'implementazione che ho provato con successo, ma senza gesitone dello 0, prevede vettore di char che è una stringa
Se io quell'if lo inserisco nel compilatore, l'unico errore che restituisce è quello di compilazione perchè non può confrontare un char come cdato con un int come dato.
non so a casa tua ma a casa mia quell'if confronta un intero con una costante intera e un carattere con una costante carattere
__________________
"WS" (p280,cx750m,4790k+212evo,z97pro,4x8GB ddr3 1600c11,GTX760-DC2OC,MZ-7TE500, WD20EFRX)
Desktop (three hundred,650gq,3800x+nh-u14s ,x570 arous elite,2x16GB ddr4 3200c16, rx5600xt pulse P5 1TB)+NB: Lenovo p53 i7-9750H,64GB DDR4,2x1TB SSD, T1000
!fazz è offline   Rispondi citando il messaggio o parte di esso
Old 19-10-2010, 17:20   #11
zanardi84
Senior Member
 
L'Avatar di zanardi84
 
Iscritto dal: Apr 2004
Città: La regione del Triplete
Messaggi: 5749
Quote:
Originariamente inviato da !fazz Guarda i messaggi
non so a casa tua ma a casa mia quell'if confronta un intero con una costante intera e un carattere con una costante carattere
Se io inserisco il tuo codice, mettendo il ; dopo la dichiarazione della variabile e la chiamata di funzione e sistemando la sintassi dell'if, ottengo quanto puoi vedere nello screen.



da cui non so uscire al momento perchè sto cercando di imparare.

Qualche idea?
__________________
Trattative felicemente concluse con domienico120, xbax88 ed engiel, ottimi e seri utenti.
zanardi84 è offline   Rispondi citando il messaggio o parte di esso
Old 19-10-2010, 17:38   #12
!fazz
Moderatore
 
L'Avatar di !fazz
 
Iscritto dal: Nov 2006
Messaggi: 21919
Quote:
Originariamente inviato da zanardi84 Guarda i messaggi
Se io inserisco il tuo codice, mettendo il ; dopo la dichiarazione della variabile e la chiamata di funzione e sistemando la sintassi dell'if, ottengo quanto puoi vedere nello screen.



da cui non so uscire al momento perchè sto cercando di imparare.

Qualche idea?
comincia con il sistemare le parentesi


if ((dato==0)&&(cdato!='0'))
__________________
"WS" (p280,cx750m,4790k+212evo,z97pro,4x8GB ddr3 1600c11,GTX760-DC2OC,MZ-7TE500, WD20EFRX)
Desktop (three hundred,650gq,3800x+nh-u14s ,x570 arous elite,2x16GB ddr4 3200c16, rx5600xt pulse P5 1TB)+NB: Lenovo p53 i7-9750H,64GB DDR4,2x1TB SSD, T1000
!fazz è offline   Rispondi citando il messaggio o parte di esso
Old 19-10-2010, 17:42   #13
zanardi84
Senior Member
 
L'Avatar di zanardi84
 
Iscritto dal: Apr 2004
Città: La regione del Triplete
Messaggi: 5749
Quote:
Originariamente inviato da !fazz Guarda i messaggi
comincia con il sistemare le parentesi


if ((dato==0)&&(cdato!='0'))
Non sono servite

L'errore è sempre alla riga dell'atoi.
__________________
Trattative felicemente concluse con domienico120, xbax88 ed engiel, ottimi e seri utenti.
zanardi84 è offline   Rispondi citando il messaggio o parte di esso
Old 20-10-2010, 10:32   #14
!fazz
Moderatore
 
L'Avatar di !fazz
 
Iscritto dal: Nov 2006
Messaggi: 21919
Quote:
Originariamente inviato da zanardi84 Guarda i messaggi
Non sono servite

L'errore è sempre alla riga dell'atoi.
allora il problema non è l'if

comunque rileggendo l'errore pare che la tua atoi legga solo le stringhe e non i caratteri

sostituisci cdato con una stringa il cin con un cin.getline ecc ecc

ma comunque sappi che quel codice non ha nessuna valenza pratica è fondamentalmente sbagliato

a che scopo dare estremo inferiore e superiore per comunicare solo due messaggi? dovresti sistemarlo almeno con una matrice di caratteri in grado di creare un menu ndimensionale
__________________
"WS" (p280,cx750m,4790k+212evo,z97pro,4x8GB ddr3 1600c11,GTX760-DC2OC,MZ-7TE500, WD20EFRX)
Desktop (three hundred,650gq,3800x+nh-u14s ,x570 arous elite,2x16GB ddr4 3200c16, rx5600xt pulse P5 1TB)+NB: Lenovo p53 i7-9750H,64GB DDR4,2x1TB SSD, T1000
!fazz è offline   Rispondi citando il messaggio o parte di esso
Old 20-10-2010, 12:59   #15
zanardi84
Senior Member
 
L'Avatar di zanardi84
 
Iscritto dal: Apr 2004
Città: La regione del Triplete
Messaggi: 5749
Quote:
Originariamente inviato da !fazz Guarda i messaggi
allora il problema non è l'if

comunque rileggendo l'errore pare che la tua atoi legga solo le stringhe e non i caratteri

sostituisci cdato con una stringa il cin con un cin.getline ecc ecc

ma comunque sappi che quel codice non ha nessuna valenza pratica è fondamentalmente sbagliato

a che scopo dare estremo inferiore e superiore per comunicare solo due messaggi? dovresti sistemarlo almeno con una matrice di caratteri in grado di creare un menu ndimensionale
Guarda bene l'interfaccia con cui chiamo "inserimento" asso due messaggi come string e due interi che sono gli estremi:
Ho trovato una funzione generica già pronta (l'avevo preparata per un altro programma semplice) e l'ho riutilizzata col minimo delle modiiche (cioè ho aggiunto un parametro string in più), ma potrei potenziarla aggiungendole qualche if (o un costrutto switch) per farle fare altre operazioni come chiamare altre funzioni alla pressione di un tasto, ma l'inferfaccia sarebbe sempre quella, con gli estremi numerici fuori dai quali avrei la non accettabilità. Ovviamente conosco il limite del controllo, cioè se metto un letterale al posto di un numero mi crasha tutto.

Torniamo pertanto alla questione principale! Voglio che mi prenda, per il mio scopo, solo numeri e non caratteri letterali o "grafici".
__________________
Trattative felicemente concluse con domienico120, xbax88 ed engiel, ottimi e seri utenti.
zanardi84 è offline   Rispondi citando il messaggio o parte di esso
Old 20-10-2010, 16:16   #16
-MiStO-
Senior Member
 
Iscritto dal: May 2005
Città: Trieste
Messaggi: 2285
Quote:
Originariamente inviato da zanardi84 Guarda i messaggi
Non sono servite

L'errore è sempre alla riga dell'atoi.
ad atoi devi passargli l'indirizzo del char

dato=atoi(&cdato);

comunque il while è errato, non ripete il controllo numerico
__________________
neo mini v2 / asus strix z490i / 10600k@? / uh12s / rx6700xt / 32gb ddr4@3200 / sandisk 250 + asenno 1tb / lenovo g34w
trattative concluse : tante...

-MiStO- è offline   Rispondi citando il messaggio o parte di esso
Old 20-10-2010, 17:22   #17
zanardi84
Senior Member
 
L'Avatar di zanardi84
 
Iscritto dal: Apr 2004
Città: La regione del Triplete
Messaggi: 5749
Quote:
Originariamente inviato da -MiStO- Guarda i messaggi
ad atoi devi passargli l'indirizzo del char

dato=atoi(&cdato);

comunque il while è errato, non ripete il controllo numerico
Dunque, ho implementato un semplice programmino che analizza la situazione (il while poi si aggiusta, ma mi interessava vedere il comportamento effettivo dell'atoi) e devo dire che fa quasi tutto quello che voglio: gestisce anche lo 0 con l'if creato, ma manca ancora una cosa.

Se io digito in input per esempio 23er45, vorrei che mi dicesse che è un dato sbagliato. Ho provato a implementare usando la stringa di caratteri da convertire in intero, così

Codice:
int i;
  char input[256];
  cout << "Inserire un numero: ";
  cin >> input;
  
  i = atoi(input);
  
  if((i==0) && (*input!='0'))  //se il dato inserito è 
  cout << "Dato non accettato"<<endl;
  
  else if ((i==0) && (*input='0')) 
  cout << "inserito lo 0: "<<i<<endl;
  
  else 
  
  cout << "dato inserito: "<<i;
ma pur funzionando, invece di darmi l'avviso di dato non corretto, mi tronca il dato a partire dal letterale.
Cioè 23er45 per lui è 23, mentre vorrei che mi dicesse che è errore.
Lavora a dovere se scrivo i primi versi della Divina Commedia (segnala errore) o se gli digito un numero, per esempio 23 è proprio 23 (e se gli faccio calcolare il doppio viene 46). Ok anche se gli metto 000000000002, mi tronca gli zeri.

Cosa mi suggerite per risolvere?
__________________
Trattative felicemente concluse con domienico120, xbax88 ed engiel, ottimi e seri utenti.
zanardi84 è offline   Rispondi citando il messaggio o parte di esso
Old 20-10-2010, 18:41   #18
!fazz
Moderatore
 
L'Avatar di !fazz
 
Iscritto dal: Nov 2006
Messaggi: 21919
Quote:
Originariamente inviato da zanardi84 Guarda i messaggi
Dunque, ho implementato un semplice programmino che analizza la situazione (il while poi si aggiusta, ma mi interessava vedere il comportamento effettivo dell'atoi) e devo dire che fa quasi tutto quello che voglio: gestisce anche lo 0 con l'if creato, ma manca ancora una cosa.

Se io digito in input per esempio 23er45, vorrei che mi dicesse che è un dato sbagliato. Ho provato a implementare usando la stringa di caratteri da convertire in intero, così

Codice:
int i;
  char input[256];
  cout << "Inserire un numero: ";
  cin >> input;
  
  i = atoi(input);
  
  if((i==0) && (*input!='0'))  //se il dato inserito è 
  cout << "Dato non accettato"<<endl;
  
  else if ((i==0) && (*input='0')) 
  cout << "inserito lo 0: "<<i<<endl;
  
  else 
  
  cout << "dato inserito: "<<i;
ma pur funzionando, invece di darmi l'avviso di dato non corretto, mi tronca il dato a partire dal letterale.
Cioè 23er45 per lui è 23, mentre vorrei che mi dicesse che è errore.
Lavora a dovere se scrivo i primi versi della Divina Commedia (segnala errore) o se gli digito un numero, per esempio 23 è proprio 23 (e se gli faccio calcolare il doppio viene 46). Ok anche se gli metto 000000000002, mi tronca gli zeri.

Cosa mi suggerite per risolvere?
controlla la lunghezza della stringa che leggi e confrontala con il dato

se è un numero da 0-9 la stringa deve essere 1 carattere
se è tra 10-99 due caratteri

ecc ecc
__________________
"WS" (p280,cx750m,4790k+212evo,z97pro,4x8GB ddr3 1600c11,GTX760-DC2OC,MZ-7TE500, WD20EFRX)
Desktop (three hundred,650gq,3800x+nh-u14s ,x570 arous elite,2x16GB ddr4 3200c16, rx5600xt pulse P5 1TB)+NB: Lenovo p53 i7-9750H,64GB DDR4,2x1TB SSD, T1000
!fazz è offline   Rispondi citando il messaggio o parte di esso
Old 20-10-2010, 19:55   #19
zanardi84
Senior Member
 
L'Avatar di zanardi84
 
Iscritto dal: Apr 2004
Città: La regione del Triplete
Messaggi: 5749
Quote:
Originariamente inviato da !fazz Guarda i messaggi
controlla la lunghezza della stringa che leggi e confrontala con il dato

se è un numero da 0-9 la stringa deve essere 1 carattere
se è tra 10-99 due caratteri

ecc ecc
Questa è un'ottima idea!!!!
__________________
Trattative felicemente concluse con domienico120, xbax88 ed engiel, ottimi e seri utenti.
zanardi84 è offline   Rispondi citando il messaggio o parte di esso
Old 21-10-2010, 10:33   #20
zanardi84
Senior Member
 
L'Avatar di zanardi84
 
Iscritto dal: Apr 2004
Città: La regione del Triplete
Messaggi: 5749
Quote:
Originariamente inviato da !fazz Guarda i messaggi
controlla la lunghezza della stringa che leggi e confrontala con il dato

se è un numero da 0-9 la stringa deve essere 1 carattere
se è tra 10-99 due caratteri

ecc ecc
Implementata, funziona perfettamente. In un lampo l'ho adattata alla mia interfaccia! L'unica cosa è che adesso modificherò, se posso, le chiamate di funzione, sostituendo i numeri con delle costanti che metto a inizio codice in modo tale da fare modifiche al volo se devo ampliare i vettori.
Poi continuerò a sviluppare il programma aggiungendo sempre più cose come per esempio una bella gestione delle prenotazioni (adesso è molto grezza e minimale), file, sotituisco il vettore con una bella lista (e all'interfaccia potrebbe cambiare solo il parametro del vettore sostituendolo con uno che identifichi la lista e sostituendo la ricerca vettore con quella della lista) e chi più ne ha più ne metta!
__________________
Trattative felicemente concluse con domienico120, xbax88 ed engiel, ottimi e seri utenti.

Ultima modifica di zanardi84 : 21-10-2010 alle 12:00.
zanardi84 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione vivo X300 Pro: è ancora lui il re della fotografia mobile, peccato per la batteria Recensione vivo X300 Pro: è ancora lui il...
Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'' per spingere gli handheld gaming PC al massimo Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'...
AWS re:Invent 2025: inizia l'era dell'AI-as-a-Service con al centro gli agenti AWS re:Invent 2025: inizia l'era dell'AI-as-a-Se...
Cos'è la bolla dell'IA e perché se ne parla Cos'è la bolla dell'IA e perché se...
BOOX Palma 2 Pro in prova: l'e-reader diventa a colori, e davvero tascabile BOOX Palma 2 Pro in prova: l'e-reader diventa a ...
La capsula SpaceX Dragon CRS-33 ha acces...
La NASA è sempre più vicin...
Crisi delle memorie: ASUS torna al passa...
Le console next-generation potrebbero es...
Gemini cresce ancora: la quota di mercat...
Samsung sfida TSMC: la capacità produtti...
Iliad alza il prezzo della fibra ottica ...
Il prossimo low cost di POCO sarà il più...
The Elder Scrolls VI: ecco le ultime sul...
Ecco i saldi di fine anno Amazon, 34 off...
iPhone Fold: scorte limitate al lancio m...
OpenAI porterà la pubblicità in ChatGPT ...
TSMC aumenterà ancora i prezzi: nel 2026...
Marvel pubblica anche il secondo teaser ...
Nuovo accordo tra xAI e il Pentagono: l'...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 19:43.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v