Форум: Форум C++Разное
Новые темы: 00
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум C++

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: в чем ошибка?
 
 автор: артем111   (06.11.2010 в 15:36)   письмо автору
 
 

только начал изучать С++
программа выдает неправильное решение
y=x*x+x-1
f(x,y)=
y*y*y-1, при abs(y)<=1
при 1<=abs(y)<=2
5/8*y-1, при abs(y)>2
код программы
#include "stdafx.h"
#include <stdio.h>
#include <conio.h>
#include<iostream>
#include<math.h>
using namespace std;

int _tmain()
{
double f, x, y;
cout << " Vvedite x = ";
cin >> x;
y = x*x+x-1;
if (abs(y)<=1)
{
f=pow(y,3)-1;
cout<< "\n f="<<f;
}
if (abs(y)>=1 && abs(y)<=2)
{
f=2*y-1;
cout<< "\n f="<<f;
}
else
f=(5/8)*y-1;
cout << "\n f= "<< f;
getch ();
return 0;
}

  Ответить  
 
 автор: Vorox   (25.11.2010 в 17:00)   письмо автору
 
   для: артем111   (06.11.2010 в 15:36)
 

Во первых у тебя в задании есть неточность, а именно:
f(x,y)=y*y*y-1, при abs(y)<=1
f(x,y)=2*y-1, при 1<=abs(y)<=2, т.е. если у тебя y=1 то сначала выполнится 1ый if(), а затем 2-ой.

#include <iostream>
using namespace std;
int main()
{
double x, y, f;
cin>>x;
y=x*x+x-1;
if(y<=1 && y>=-1)
{
f=y*y*y-1;
}
if((y>=-2 && y<-1) && (y>1 && y<=2))
{
f=2*y-1;
}
if(y<-2 && y>2)
{
f=5*y/8-1;
}
cout<<f;
cin>>x;

return 1;
}

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования