Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
.NET Framework
Lettura da tastiera
mercoledì 04 giugno 2003 - 12.54
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
pedro
Profilo
| Newbie
10
messaggi | Data Invio:
mer 4 giu 2003 - 12:54
Ciao
ho dei problemi con la lettura da tastiera per il fatto che nel seguente listato
non mi fa introdurre e quindi leggere da tastiera nulla.Come faccio?
using System;
class forme {
public static void Main(){
char scelta;
double lato = 0.0 ,altezza = 0.0;
Console.WriteLine("1: Area Triangoli");
Console.WriteLine("2: Esci");
scelta = (char) Console.Read();
switch (scelta){
case '1' :
Console.WriteLine("Introduci lato");
lato = Console.In.Read();
Console.WriteLine("Introduci altezza");
altezza = Console.Read();
triangolo tria = new triangolo(lato,altezza);
tria.dati();
Console.WriteLine("Area :" + tria.area());
break;
case '2' :
break;
}
}
}
Brainkiller
Profilo
| Guru
7.999
messaggi | Data Invio:
mer 4 giu 2003 - 16:45
Ciao Pedro,
ti consiglio di non utilizzare la Read così semplice e ti spiego subito il perchè.
E' meglio se utilizzo un overload della Read oppure la Readline direttamente.
In questo caso se facevi un po' di debug ti potevi accorgere del problema.
Nella prima Read quando richiedi all'utente la scelta del menù tu digiti 1 per esempio e premi invio.
Beh l'invio equivale alla sequenza \r\n e quindi sono due caratteri ben precisi (in ASCII 10 e 13).
Quindi le due chiamate alla Read successive vengono eseguite correttamente infatti lato e altezza se guardi contengono proprio 10 e 13.
Non so se mi sono spiegato bene.
Ti conviene quindi usare la ReadLine e poi dalla stringa risultante eliminare eventualmente se presenti spazi, ritorni a capo (\r) e new line (\n) e convertire in double il numero.
Ciao
Fammi sapere.
David De Giacomi
pedro
Profilo
| Newbie
10
messaggi | Data Invio:
gio 5 giu 2003 - 12:34
Grazie
mi è bastato utilizzare la readline come mi hai detto ed è andato tutto a
posto!
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !