Помогите пожалуйста в С++.... Извеcтны массы и радиусы двух планет Венера mv=4.86•1027 г,...

0 голосов
74 просмотров

Помогите пожалуйста в С++....
Извеcтны массы и радиусы двух планет Венера mv=4.86•1027 г, rv=6175 км;
Сатурн ms=5.68•1029 г, rs=57750 км. Определить, какая планета имеет
наибольшее ускорение силы тяжести (формула для определения ускорения
силы тяжести g=Gm/r2, где универсальная гравитационная постоянная
G =6.7•10-8 г-1см2сек-2).


Информатика | 74 просмотров
0

Ну там r^2. Это на поверхности определять собрались? Подставте радиус соответствующей планеты. Сразу скажем на Сатурне ускорение свободного падения будет больше. И интересно, почему G не в системе СИ. Так то оно 6,67*10^(-11) [кг^(-1)*м^3*с^(-2)]. Ах да, у вас и массы в граммах. Только опять же следовало писать mv=4.86*10^27 г. Это значительно больше 5 кг, которые у вас получаются.

0

А так вам нужно запросить 4 переменных, если с клавиатуры будете вводить значения. А нет, так назначте их постоянными (4.86E27). Ну и тип соответствующий подобрать надо float или даже double.

Дан 1 ответ
0 голосов

Как-то так.
#include
#include
using namespace std;
int main()
{
    setlocale(LC_ALL, "Russian");
    double G,  g_saturn, g_venus, m_venus, m_saturn, r_venus, r_saturn ;
    m_venus = 4.81068 * pow(10,24);
    m_saturn = 561.80376 * pow(10,24);
    r_venus = 6,052 * pow(10, 6);
    r_saturn = 60,100 * pow(10, 6);
    G = 6.67 * pow(10,-11);
    g_venus = G * m_venus / pow(r_venus, 2);
    g_saturn = G * m_saturn / pow(r_saturn, 2);
    cout << "Ускорение свободного падения на Венере: " << g_venus << endl;<br>    cout << "Ускорение свободного падения на Сатурне: " << g_saturn << endl;<br>      if (g_venus > g_saturn)
    {
     cout << "Венера имеет наибольшее ускорение свободного падения. " << endl;<br>    }
    else
    {
        cout << "Сатурн имеет наибольшее ускорение свободного падения. " << endl;<br>    }
    return  0;
}

(1.3k баллов)
0

Да программа компилится и запускается. Но... вот считает??!!!. Там ошибка в порядках. Даже, если принять, что ускорение свободного падения выдается в [cм/с^2]

0

И пока не пойму отчего, но на Венере он выдает 8,9E+12. По идее должно быть 8,9 [м/с^2] или 890 [см/с^2] (примерно того же порядка, что и на Земле)

0

Вы вижу все в метры и килограммы перевели. Где ж прокол?

0

Функция pow(x, y)) умеет обращаться с отрицательными степенями?

0

Может

0

Опаньки! Понял! Там в определении радиусов r_venus, r_saturn стоят запятые, а нужно десятичные точки. То то у меня компилятор бурчал, что величины r_venus, r_saturn в далнейшем не используются. А так ставим точки и все ок.

0

Некоторые значения копировал и не заметил. Спасибо за помощь

0

Не за что. Пожалуй на информатике на числа тут внимания и не обратят.