У меня проблема с C , потому что он отказывается отображать ответ, и я не знаю, в чем проблема в коде

#c

#c

Вопрос:

  #include <iostream>
#include <math.h>
#include <iomanip>
#include <tchar.h> using namespace std;

int _tmain(int argc, _TCHAR* argv[]) {
    setlocale(LC_CTYPE, "Russian");
    double x;
    for (x = 2; x < 6.3; x   0.4);
    {
        double Rez, Rez1;
        Rez = pow(x, 4)   2 * pow(x, 2)   3;
        Rez1 = cos(3 * x)   exp(-2 * x);
        cout << Rez << Rez1;
    }
    system("Pause");
    return 0;
 

предполагается, что он подсчитывает уравнения с каждым значением X в диапазоне от 2 до 6,3 с шагом 0,4
он же 2, 2.4, 2.8 и т.д.

Комментарии:

1. И что он делает вместо этого? Есть ли сообщение об ошибке?

2. Я настоятельно рекомендую включить больше предупреждений , если вы их не видите.

3. Если вместо «x 0.4)» я набираю =, отображается «1762.640.939223». Это … * слишком * большое число, чем мне нужно, но здесь оно даже не показывает ошибки, просто нет вывода.

4. x 0.4 не изменяется x , поэтому x < 6.3 останется true навсегда, и ваш цикл никогда не завершится. Возможно, вам также следует напечатать пробел между вашими двумя выводами, чтобы их было легче читать.

5. Причина включения дополнительных предупреждений заключается в том, что компилятор может сказать вам, что for (x = 2; x < 6.3; x 0.4); это, вероятно, ошибка (последняя точка с запятой создает пустой блок и означает, что ваш блок с отступом не контролируется циклом).

Ответ №1:

Проблема была с последней точкой с запятой, как кто-то предложил в комментариях. Только из-за этой точки с запятой значение x было увеличено выше 6,4 на 1-й итерации, и выполнялась только 1 итерация. Также переменная x должна быть увеличена соответствующим образом! Вот рабочий код:

 #include <iostream>
#include <math.h>
#include <iomanip>
#include <tchar.h> 
using namespace std;

int _tmain(int argc, _TCHAR* argv[]) 
{
    setlocale(LC_CTYPE, "Russian");
     double x=2;
    for ( x = 2 ; x < 6.3;  x = x   0.4 )
    {
        double Rez, Rez1;
        Rez = pow( x, 4)   2 * pow( x, 2)   3;
        Rez1 = cos(3 * x)   exp(-2 * x);
        cout <<"Result 1:" <<Rez <<"  Result 2:"<< Rez1<< endl;
    }

    system("Pause");
    return 0;
}