بله ممنون توضيحات خوب و عالي بود

اما در مورد مثال بعدي
 #include <iostream.h>
#include <conio.h>
int main()
{
int grade;
clrscr();
cout<<"\nEnter a grade:";
cin>>grade;
while(grade){
if(grade>=17 &&grade<=20)
cout<<"grade="<<grade<<"score="<<'A';
if(grade>=15 &&grade<=17)
cout<<"grade="<<grade<<"score="<<'B'
if(grade>=12 &&grade<=15)
cout<<"grade="<<grade<<"score="<<'C'
if(grade<12)
cout<<"grade="<<grade<<"score="<<'D'
cout<<"\nEnter a grade:";
cin>>grade;
}//end of while
return 0;
}

خوب چند تا سوال چرا در اول و آخر اين برنامه دوبار لقشيث رو از كاربر ميگيره؟
نميشه با كاركتر ans كه يا y هست يا n شرط تكرار حلقه رو برقرار كنيم؟