Gå til innhold

Skal finne hypotenusen?


Anbefalte innlegg

Jeg har et problem og finner ikke ut hva som er feil. Bruker visual c++ express.

Her er koden:

#include <iostream>
#include <cmath>

int main()
{
int a;
float x;

std::cout << "Skriv inn verdien av den lengste kateten: ";
std::cin >> a;

x = 2 * a / sqrt(3);

std::cout <<"Hypotenusen er: " << x << std::endl;

system("pause");
return 0;
}

 

Og her er feilmeldingen:

	

Compiling...
Source.cpp
c:\users\supersindre\documents\visual studio 2008\projects\hello world1\hello world1\source.cpp(12) : error C2668: 'sqrt' : ambiguous call to overloaded function
	d:\sindretech\vc\include\math.h(581): could be 'long double sqrt(long double)'
	d:\sindretech\vc\include\math.h(533): or	   'float sqrt(float)'
	d:\sindretech\vc\include\math.h(128): or	   'double sqrt(double)'
	while trying to match the argument list '(int)'

 

Forslag?

Lenke til kommentar
Videoannonse
Annonse

kompilatoren greier ikke å finne ut hvilke funksjon den skal bruke.

Du har skrevet inn 3 (int) som da må forandre av kompilatoren, men det er for mange muligheter (mer enn 1) og da får den problemer.

 

Bytte ut 3 med 3.0f eller 3.0 så funker alt.

 

Jeg vil tipse om vc sitt hjelpe system, du har erroren c2668 og hvis du skriver det inn i hjelpen så vil det sikkert ha ha gitt det alt info du trengte.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...