Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Для новичков > исправить код под Visual


Автор: pisinus 13.10.2013, 14:06
Вычислить значение функции y=(x+5.2)\(x+1)(3x+4), на промежутке [0;3] с шагом h=0.3.
Результаты расчетов вывести в виде таблицы пар х и у. Если ищущих данных нет.то вывести про это сообщение.Вычислить суму первого и последнего значения функции.
Есть код похожей задачи,но подставляя свои данные мне выдаёт ошибку и я не понимаю что еще мне нужно исправить...Помогите пожалуйста)Желательно вижуал студио
Код

#include<iostream>               
#include<conio.h>
#include<math.h>
using namespace std;
void main()
{
    float x, h=0.3, y, s1=0;      
    float a=0, b=3+h/2; int n=0;
    cout<<"X           Y\n";       
    for (x=a; x<=b;x+=h)
    { y=((x+5))/((x+1)*(3x+4)); 
    cout<<x<<"\t"<<y<<"\n";              
    if (y<0)                       
    {
n++; s1+=y;
    }
    }
    if (n)                         
        s1/=n;
        cout<<"S="<<s1;             
    }
    else 
        cout <<"Takyh znachenii nety"; 
    getch();                         
}

Автор: feodorv 13.10.2013, 15:54
Цитата(pisinus @  13.10.2013,  15:06 Найти цитируемый пост)
но подставляя свои данные мне выдаёт ошибку

Вы хотите сказать, что это можно скомпилировать?


Цитата(pisinus @  13.10.2013,  15:06 Найти цитируемый пост)
Если ищущих данных нет

Что такое "ищущие данные"?


Цитата(pisinus @  13.10.2013,  15:06 Найти цитируемый пост)
    if (y<0)   

Никак не могу понять, как на промежутке [0;3] можно получить отрицательное значение y.


Цитата(pisinus @  13.10.2013,  15:06 Найти цитируемый пост)
    { y=((x+5.2))/((x+1)*(3*x+4)); 


Цитата(pisinus @  13.10.2013,  15:06 Найти цитируемый пост)
    if (n) 
    {                        
        s1/=n;
        cout<<"S="<<s1;             
    }


Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)