PROBLEMA Variabile char in c#

\_io_/

Utente Attivo
234
17
CPU
Intel Core i5-8600k
Dissipatore
Cooler Master ml240l rgb
Scheda Madre
Gigabyte Aorus z370 Ultra Gaming rev 1
HDD
Wd blue 1tb / Kingstone 128 gb
RAM
HyperX Fury 8 gb
GPU
Nvidia GTX 1060 6gb Gigabyte Aorus Windforce oc
OS
Windows 10
Ciao, per compito devo creare un programma semplice in c# che generi un numero casuale da 1 a 6 e, nel caso in cui una volta generato il numero venga premuto il tasto r ne venga generato un altro, altrimenti se viene premuto un altro tasto casuale il programma si chiude.
adesso, per quanto riguarda la generazione del numero non do alcun problema, però, quando devo dare il comando di richiesta di input ( Console.ReadKey ) non mi permette di leggere un char.
Come dovrei fare?
devo convertire il char in int? o ho solo sbagliato io a scrivere la sintassi?

Edit.
ho risolto il problema precedente, ma ora dovrei convertire il char in un int ( per esempio, se il tasto premuto è r il valore di int è 1, altrimenti è 0), come posso fare?
 
Ultima modifica:

_Achille

Utente Èlite
3,067
725
CPU
Intel i5-6600K @4.6 GHz
Dissipatore
Cryorig H5
Scheda Madre
ASRock Z170 Extreme 6
HDD
WesternDigital 1TB & Crucial MX200 250GB
RAM
Corsair Ven 16GB DDR4 2133MHz
GPU
Sapphire RX 580 Nitro+
Monitor
Dell S2418H
PSU
RM550X
Case
NZXT S340
Periferiche
Anne Pro 2, Razer Abyssus
OS
Windows 10 Pro
Non stai convertendo un carattere in un intero così. Stai decidendo che valore dare ad un intero in base a delle condizioni.
E ciò si risolve con un if-else o con l’operatore Elvis.
 

\_io_/

Utente Attivo
234
17
CPU
Intel Core i5-8600k
Dissipatore
Cooler Master ml240l rgb
Scheda Madre
Gigabyte Aorus z370 Ultra Gaming rev 1
HDD
Wd blue 1tb / Kingstone 128 gb
RAM
HyperX Fury 8 gb
GPU
Nvidia GTX 1060 6gb Gigabyte Aorus Windforce oc
OS
Windows 10
Non stai convertendo un carattere in un intero così. Stai decidendo che valore dare ad un intero in base a delle condizioni.
E ciò si risolve con un if-else o con l’operatore Elvis.
e come potrei fare?
Post unito automaticamente:

Non stai convertendo un carattere in un intero così. Stai decidendo che valore dare ad un intero in base a delle condizioni.
E ciò si risolve con un if-else o con l’operatore Elvis.
ho provato ad usare un if, ma mi da problemi
 

_Achille

Utente Èlite
3,067
725
CPU
Intel i5-6600K @4.6 GHz
Dissipatore
Cryorig H5
Scheda Madre
ASRock Z170 Extreme 6
HDD
WesternDigital 1TB & Crucial MX200 250GB
RAM
Corsair Ven 16GB DDR4 2133MHz
GPU
Sapphire RX 580 Nitro+
Monitor
Dell S2418H
PSU
RM550X
Case
NZXT S340
Periferiche
Anne Pro 2, Razer Abyssus
OS
Windows 10 Pro
C#:
var key = Console.ReadKey();
int number = (key.KeyChar == ‘r’) ? 1 : 0;
 

Ci sono discussioni simili a riguardo, dai un'occhiata!

Entra

oppure Accedi utilizzando
Discord Ufficiale Entra ora!

Discussioni Simili