title: What does the error: invalid operands to binary expression ("double" and double") mean?
body: <p>Line 55: where i have written "V=(pow(vx,2)+pow(vy,2))^0.5;"</p>
  
  <p>i have the error:invalid operands to binary expression ("double" and double"). What does this mean?</p>
  
  <p>Help please !</p>
  
  <p>int main()
  {</p>
  
  <pre><code>FILE *fp, *fopen();
  fp=fopen("Orbit2", "w");
  
  double M,G,y0,vx,vy,x,y,h,t,T,m,V, positionx,positiony,velocityx,velocityy,energy,kinetic,potential;
  G=6.67*pow(10,-11);
  h=1000;
  m=7.345*pow(10,22);
  t=0;
  M=1.99*pow(10,30);
  y=0;
  y0=0;
  x=1.5*pow(10,11);
  vx=0;
  vy=22350;
  energy=kinetic+potential;
  
  T=t+h;
  for (T=0; T&lt;110000; T++)
  {
  
      printf("y=%lf,x=%lf\n", y,x);
      fprintf(fp,"%lf,%lf\n", y,x);
  
      V=(pow(vx,2)+pow(vy,2))^0.5;
  
      positionx=x+(h/(double)6.0)*((kx1(vx))+(2*kx2(G,M,h,x,y,vx))+(2*kx3(G,M,h,x,y,vx,vy))+(kx4(G,M,h,x,y,vx,vy)));
      positiony=y+(h/(double)6.0)*((ky1(vy))+(2*ky2(G,M,h,x,y,vy))+(2*ky3(G,M,h,x,y,vx,vy))+(ky4(G,M,h,x,y,vx,vy)));
      velocityx=vx+(h/(double)6.0)*((kvx1(G,M,x,y))+(2*kvx2(G,M,h,x,y,vx,vy))+(2*kvx3(G,M,h,x,y,vx,vy))+(kvx4(G,M,h,x,y,vx,vy)));
      velocityy=vy+(h/(double)6.0)*((kvy1(G,M,x,y))+(2*kvy2(G,M,h,x,y,vx,vy))+(2*kvy3(G,M,h,x,y,vx,vy))+(kvy4(G,M,h,x,y,vx,vy)));
  
      x=positionx;
      y=positiony;
      vx=velocityx;
      vy=velocityy;
  
      if ((fabs(positiony-y0)&lt;100) &amp;&amp; (fabs(positionx-x)&lt;100))
      {
          break;
      }
  
  
  }
  
  fclose(fp);
  return 0;
  </code></pre>
  
  <p>}</p>