The first code:
#include <iostream>
using namespace std;
int main () {
      int a=80;
   if( a == 10 ) {
         cout << "Value of a is 10 " << endl;
   } else if( a == 20 ) {
     cout << "Value of a is 20" << endl;
   } else if( a == 30 ) {
     cout << "Value of a is 30" << endl;
   }else {
     cout << "Value of a is not matching" << endl;
   }
     cout << "Exact value of a is : " << a << endl;
   return 0;
}
result: Value of a is not matching
Exact value of a is: 80
The 2nd code:(just changed a == 20 to a=20)
#include <iostream>
using namespace std;
int main () {
      int a=80;
   if( a == 10 ) {
         cout << "Value of a is 10 " << endl;
   } else if( a = 20 ) {
     cout << "Value of a is 20" << endl;
   } else if( a == 30 ) {
     cout << "Value of a is 30" << endl;
   }else {
     cout << "Value of a is not matching" << endl;
   }
     cout << "Exact value of a is : " << a << endl;
   return 0;
}
The result is:Value of a is 20
Exact value of a is: 20.
so, why appeared so difference in the results just changing == to =?
any help will be thankful.