Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.10.2013, 15:01   #1
pisinus
 
Регистрация: 24.04.2012
Сообщений: 3
По умолчанию Помогите исправить код

Вычислить значение функции 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();                         
}

Последний раз редактировалось pisinus; 13.10.2013 в 15:17.
pisinus вне форума Ответить с цитированием
Старый 13.10.2013, 16:00   #2
ViktorR
Старожил
 
Регистрация: 23.10.2010
Сообщений: 2,310
Сообщение

На сколько помню, в цикле For счетчик цикла - целого типа.
Ниже код не проверялся, записан только по смыслу.
Вместе с тем, в Вашей функции, на заданном интервале, проблем с делением на ноль нет. Единственное - препод может изменить интервал расчета.
Код:
#include<iostream>               
#include<conio.h>
#include<math.h>
using namespace std;
void main()
{
    float x, y, h=0.3;     // описываем и инициируем
    float a=0, b=3;        // переменные
    x = a;                 // начальное значение
    do
    {
         if ((x + 1) * (3*x +4) = 0)  // Делить на ноль нельзя
        {
            cout <<"Takyh znachenii nety";
        }
        else                                
        {
           y=((x+5.2))/((x+1)*(3*x+4));  // вычисляем значение функции: см. свой пост. Там 5.2
           cout<<x<<"\t"<<y<<"\n";    // выводим на экран
        };
       x+=h;                                 // переходим к следующей точке
    }
    while (x <= b);                          // повторяем пока не достигнем
                                             // правой границы
    getch();                         
}
Не забывайте: 3x - в математике, а в программе 3 * x.

PS: Я с Си мало знаком. Будьте внимательны.
Как-то так, ...
Как-то так, ...
ViktorR вне форума Ответить с цитированием
Старый 13.10.2013, 16:12   #3
pisinus
 
Регистрация: 24.04.2012
Сообщений: 3
По умолчанию

Спасибо Вам большое,но вылетает ошибка.
1>------ Построение начато: проект: 5, Конфигурация: Debug Win32 ------
1>Построение начато 13.10.2013 15:11:52.
1>InitializeBuildStatus:
1> Создание "Debug\5.unsuccessfulbuild", так как было задано "AlwaysCreate".
1>GenerateTargetFrameworkMonikerAtt ribute:
1>Целевой объект "GenerateTargetFrameworkMonikerAttr ibute" пропускается, так как все выходные файлы актуальны по отношению к входным.
1>ClCompile:
1> 5.cpp
1>5.cpp(7): warning C4305: инициализация: усечение из "double" к "float"
1>5.cpp(12): error C2106: =: левый операнд должен быть левосторонним значением
1>5.cpp(18): warning C4244: =: преобразование "double" в "float", возможна потеря данных
1>
1>СБОЙ построения.
pisinus вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите исправить код. djon_limit Общие вопросы C/C++ 3 13.12.2009 15:43
помогите исправить код Карол Помощь студентам 2 29.10.2009 16:47
Помогите исправить код Grizzzli Помощь студентам 3 14.12.2008 19:26
Помогите исправить код Tanuska___:) БД в Delphi 4 07.08.2008 17:40
Помогите исправить код student_63 Помощь студентам 5 13.12.2007 18:20