فصل دوم (دستورات شرطی و انواع اعداد صحیح)
خب بریم سراغ بخش دوم... تمامی مباحث و کد هار نوشته شده در فصل (1) به صورت ترتیبی اجرا می شوند به طوری که هر دستورالعمل یک بار و آن هم به ترتیب نوشته شده اجرا می شود؛ حال برای انعطاف پذیری بیشتر در برنامه ما نیاز به دستورات شرطی داریم به گونه ای که برنامه برای انعطاف پذیر شدن نیاز به چندین دستور پیچیده بر اساس شرایط مورد نیاز در طول برنامه تغییر نماید داریم لذا در این فصل شیوه استفاده از دستورات شرطی if , if…else , switch را خواهیم آموخت.
ورودی در زبان C++ و قابلیت مقایسه آن با خروجی : در رابطه با ورودی همانند خروجی و مجرای خروجی در C++ که توسط شیء cout توضیح داده شد در این بخش در رابطه با مجرای ورودی با شیء cin توضیح خواهیم داد که این شیء به عنوان مجرای ورودی برای دریافت اطلاعات در رابط کنسول در نظر گرفته می شود که مخفف console output است.
برای استفاده و انتقال اطلاعات به ورودی و ارسال توسط شیء cin تقریبا شبیه به عملیات با cout عمل خواهیم کرد که در این میان نماد >> عملگر استخراج است که عملگر ورودی نامیده می شود با استفاده از این عملگر اطلاعات وارد شده توسط صفحه کلید از طرف کاربر را می توان برای مجرای cin دریافت کرد بنابراین با اجرای دستوری مانند دستور زیر سیستم توقف کرده و در انتظار ورودی باقی می ماند به محض آنکه عدد صحیحیوارد شود به متغیر x منسوب داده می شود و سپس برنامه ادامه می یابد.
cin >> x;
در رابطه با شیء ورودی می توان همانند شیء خروجی cout از نوع کاراکتر و صحیح استفاده کرد به صورت زیر :
//Author: Kambiz Asadzadeh
#include <iostream>
using namespace std;
int main()
{
char name[10], family[10];
cout << "Please enter your name:";
cin >> name;
cout << "Please enter your family:";
cin >> family;
cout << "Your name is: " << name << ", " << family << ".\n";
return 0;
}
در دستور بالا دو نوع کاراکتری برای نام و نام خانوادگی با طول کاراکتر حداکثر 10 تعریف شده است که در ابتدای هر کدام توسط شیء cout متن مورد نظر یا همان پیغام های مربوطه برای کاربر چاپ می شود و سپس توسط شیء cin با عملگر ورودی >> مقدار متغیر های مربوط به هر کدام به مجرای ورودی ارسال می شود و در نهایت با دستور cout چاپ مقادیر موجود در هر کدام میسر خواهد شد که نتیجه با ورود اطلاعات کاربر به صورت زیر خواهد آمد :
Please enter your name: Kambiz
Please enter your family: Asadzadeh
Your name is: Kambiz, Asadzadeh