Calculer l'Aire et la Circonférence d'un Cercle avec l'entrée en C++

Je suis en train d'écrire un code pour la classe et j'ai pensé que je les chapeaux de tous le bout des doigts. Cependant, ne peut pas obtenir de la rétroaction de l'entrée quand je compile ce sur XCode.

Mon code est comme suit:

/*
 James George Hayek
 PCCC Assignment 2
 Prof Siegel

 This program will calculate the area and circumference of a circle.
 */

#include <iostream>
#include <cmath>
using namespace std;

int main () 
{

    float radius;
    float circumference;
    float area;

    cout << "Please enter the radius of a circle: ";
    cin >> radius;
    cout << "\n";

    circumference = 2 * 3.1416 * radius;
    area = 3.1416 * radius * radius;

    cout << "************************************" << "\n"
         << "*Area and Circumference of A Circle*" << "\n"
         << "************************************" << "\n"
         << "\tRadius= " << radius << "\n"
         << "\tArea= " << area << "\n"
         << "\tCircumference= " << circumference << "\n";

    cin.get();


    return 0;

} //end main

Ok, j'ai juste mal tourné et il semble que cela fonctionne dans le terminal mais je n'arrive pas à répondre dans la console de XCode. Ne dois-je pas vous inquiéter à ce sujet?

  • Il me semble bon, et travaille sous la GCC/Linux - je pense que c'est probablement un problème avec votre installation de Xcode, dont je connais que dalle.
  • Yay pour l'utilisation de "\n" au lieu de bêtement inefficace et inutile ::std::endl. Maintenant, vous pouvez inclure ensuite dans la chaîne, vous n'avez pas à les imprimer comme une chaîne distincte. 🙂
  • êtes-vous conscient de la "double" type en C++? Aussi 3.1416 est de type double en C++03 au moins
  • Outre les réponses ci-dessous, notez que vous devez effectuer la gestion d'erreur lors de l'extraction d'entrée de cin. Avec votre code actuel, si l'extraction échoue (par exemple, si l'utilisateur entre "bonjour" lorsque vous êtes invité pour le rayon, le rayon sera de gauche non initialisée. Vous avez besoin de tester l'état de flux après l'exécution de l'extraction à assurez-vous qu'il a réussi (à l'aide de cin >> radius; if (cin) { /* worked */ } else { /* failed */ } ou de façon plus succincte, if (cin >> radius) etc.).
  • Hmm, nous en avons parlé en classe, l'autre jour. Nous n'avons pas obtenu de loin pour l'instant mais je ne comprends que le programme peut réservoir, si une mauvaise entrée est entrée. Merci, je vais regarder dans le test d'un cours d'eau après un cin déclaration.
InformationsquelleAutor James Hayek | 2010-09-30