Here's the question you clicked on:

55 members online
  • 0 replying
  • 0 viewing

Christos

  • 2 years ago

C++ Help needed! The program I need to build is supposed to do this: http://screencast.com/t/qbp34sVfC

  • This Question is Closed
  1. Christos
    • 2 years ago
    Best Response
    You've already chosen the best response.
    Medals 0

    // // main.cpp // week5-4-4 #include <iostream> #include <cmath> using namespace std; int main() { double a; cin >> a; if (sqrt(a)%1.0 == 0) cout << "It's an integer."; else cout << "It's NOT an integer. Sorry."; return 0; }

  2. Christos
    • 2 years ago
    Best Response
    You've already chosen the best response.
    Medals 0

    This is the code I created for the problem. I don't know why it doesn't run. Can you help me spot the problem?

  3. eSpeX
    • 2 years ago
    Best Response
    You've already chosen the best response.
    Medals 0

    You cannot use the modulus operator with a double.

  4. Christos
    • 2 years ago
    Best Response
    You've already chosen the best response.
    Medals 0

    what is a "modulus operator" ?

  5. eSpeX
    • 2 years ago
    Best Response
    You've already chosen the best response.
    Medals 0

    %

  6. eSpeX
    • 2 years ago
    Best Response
    You've already chosen the best response.
    Medals 0

    Use this instead: if (fmod(sqrt(a),1.0) == 0)

  7. Christos
    • 2 years ago
    Best Response
    You've already chosen the best response.
    Medals 0

    wait a min, but why I cant use % with doubles?

  8. eSpeX
    • 2 years ago
    Best Response
    You've already chosen the best response.
    Medals 0

    Because it is designed to take an integer.

  9. Christos
    • 2 years ago
    Best Response
    You've already chosen the best response.
    Medals 0

    hmm hold on lemme try

  10. Anniepoo
    • 2 years ago
    Best Response
    You've already chosen the best response.
    Medals 0

    You might also have trouble with the == it's always iffy to compare doubles. think of all the times a computer's told you 2.0 + 2.0 = 3.99999999

  11. Not the answer you are looking for?
    Search for more explanations.

    • Attachments:

Ask your own question

Sign Up
Find more explanations on OpenStudy
Privacy Policy