מה כבר למדנו?
בשיעור קלט ופלט למדנו להציג הודעה, לקרוא שורה באמצעות Console.ReadLine() ולשמור אותה במשתנה מסוג string. בשיעור משתנים הכרנו גם טיפוסים אחרים.
כל שורה שנקראת באמצעות Console.ReadLine() מתקבלת כטקסט (string). גם אם מקלידים 95, מתקבלת המחרוזת "95". כדי להשתמש בקלט כערך שאינו טקסט, חובה להמיר אותו לטיפוס המתאים.
קליטה והמרה בשני צעדים
תחילה קולטים את השורה למשתנה input. לאחר מכן int.Parse ממירה את הטקסט למספר שלם, והתוצאה נשמרת ב־mark.
Console.Write("Enter a grade: ");
string input = Console.ReadLine();
int mark = int.Parse(input);
Console.WriteLine(mark);
אם המשתמש הקליד 95, שורת ההדפסה תציג 95.
קליטה והמרה בשורה אחת
אפשר להעביר את הקלט ישירות ל־int.Parse:
int mark = int.Parse(Console.ReadLine());
איך בוחרים את ההמרה?
בוחרים את פעולת ההמרה לפי טיפוס המשתנה שבו רוצים לשמור את הערך.
| טיפוס היעד | דוגמה לקוד | קלט מתאים לדוגמה |
|---|---|---|
| int | int.Parse(input) | 95, -10 |
| double | double.Parse(input) | 92.5, 3.14 |
| char | char.Parse(input) | A, + |
| bool | bool.Parse(input) | true, false |
| string | Console.ReadLine() (ללא המרה) | Hello |
עבור char יש להקליד תו בודד. עבור string אין צורך בהמרה. הקלט חייב להתאים לטיפוס: למשל, int.Parse תיכשל אם יוקלד "hello" במקום מספר שלם.
משימה לתרגול
קלטו שני מספרים שלמים מהמשתמש, המירו כל אחד בעזרת int.Parse והדפיסו את הסכום שלהם.