Jump to content

Recommended Posts

Posted

Boas pessoal, estava aqui a tentar ver onde esta o erro e a tentar perceber o porque de isto dar erro nestas linhas sublinhadas mas n consigo :-S ja troquei para double na chamada da funçao, ja coloquei (int) em alguns sitios devido dizer que estava a passar de int para double e mesmo assim aquele erro continua :-S

da erro nestas linhas :

--> double process2(double num,int soma){

--> y=process2(num);


#include <cstdlib>
#include <iostream>
#include <cmath>
using namespace std;
double process (double num){
    return (floor(sqrt(num))*floor(sqrt(num)));
    }
    
double process2(double num,int soma){
int   a=(int)floor(sqrt(num));
int   b=(int)(floor(sqrt(a))*floor(sqrt(a)));
if(b==a)
   soma=2;
else{
      int c=a-b;
      int d=(int)floor(sqrt(c));
      if(d+b==a)
       soma=3;
     }
     return soma;
}
    
int main()
{
    int num;
    double x,y;
    cin>>num;
    x=process(num);
    if(x==num)
      cout<<num<<": 1 1\n";
    else
        {
      y=process2(num);
       cout<<num<<": "<<y<<" 1\n";
       }
system("pause");
    return 0;
}

Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.