2.5. és 2.6. Beolvasás billentyűről és Konvertálás
Az adatbevitel egyik leggyakrabban használt módja a billentyűről történő beolvasás. Ehhez a beolvasás szó angol megfelelőjét használjuk: Read, illetve ReadLine (beolvasás a sor végéig). Mivel a billentyűzet is egy konzol, ezért a teljes utasítás a következőképpen néz ki: Console.Read(); vagy Console.ReadLine();.
A beolvasás eredményét mindig egy változóban kell tárolni:
A legfontosabb szabály az adatbekérésnél!
C#-ban a Console.ReadLine() utasítással csak szöveg típusú adatot (stringet) lehet beolvasni!
Ezért, ha számot szeretnénk bekérni (például életkort, vagy egy matematikai művelethez szükséges értéket), akkor azonnal át kell váltani, azaz konvertálni kell a megfelelő számtípusra a bekérést követően (vagy vele egyidőben).
Példa a konvertálásra:
Az első esetben azegesz változó int típusú egész szám, a valos pedig double típusú valós szám lesz a konvertálás után. Most már el lehet végezni rajtuk a számokra jellemző matematikai műveleteket.
5. feladat
Írjunk programot, amely bekér két egész számot a billentyűről és kiírja az összegüket! Név: Adatbekérés1.
Megoldás:
static void Main(string[] args)
{
int a = 0, b = 0;
Console.WriteLine("Két szám összegének kiszámítása");
// Az első szám bekérése és konvertálása
Console.Write("Kérem az 1. számot: ");
a = Convert.ToInt32(Console.ReadLine());
// A második szám bekérése és konvertálása
Console.Write("Kérem az 2. számot: ");
b = Convert.ToInt32(Console.ReadLine());
Console.WriteLine();
Console.WriteLine("A két szám összege: {0}", a + b);
Console.ReadKey();
}
Write és a WriteLine között: a Console.Write használata miatt a felhasználó közvetlenül a kiírt szöveg (kettőspont) mellé gépelheti be a számot, nem pedig a következő sorba.)