Форум программистов, компьютерный форум CyberForum.ru

Неправильно выдает ответ при некоторых числах, например -2,4.2 - C++

Восстановить пароль Регистрация
 
sm0og1er
0 / 0 / 0
Регистрация: 22.10.2013
Сообщений: 66
01.06.2014, 13:26     Неправильно выдает ответ при некоторых числах, например -2,4.2 #1
Помогите, что не так? Не правильно выдает ответ при некоторых числа, например -2,4.2.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
static double f2(double x)
        {
            if (x <= -7 || x >= 4) return 0;
            else
            {
                if (x >= -7 || x <= -3) return x + 7;
                else
                {
                    if (x < -3 || x < -2) return 4;
                    else
                    {
                        return (double)Math.Pow(x, 2);
                    }
                }[ATTACH]406191[/ATTACH]
Миниатюры
Неправильно выдает ответ при некоторых числах, например -2,4.2  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.06.2014, 13:26     Неправильно выдает ответ при некоторых числах, например -2,4.2
Посмотрите здесь:

нужно исправить выдает не верный ответ C++
В чем ошибка, не считает...ответ выдает по нулям(((( C++
C++ выдает неправильный ответ
C++ Вычислить (Выдает не правильный ОТВЕТ)
C++ выдает ложный ответ
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zss
Модератор
Эксперт С++
 Аватар для zss
5947 / 5552 / 1784
Регистрация: 18.12.2011
Сообщений: 14,184
Завершенные тесты: 1
01.06.2014, 13:41     Неправильно выдает ответ при некоторых числах, например -2,4.2 #2
C++
1
2
3
4
5
6
7
8
double f2(double x)
 {
      if (x <= -7. || x >= 4.) return 0;
      if (x > -7. && x <= -3.) return x + 7.; // else писать лишнее. Т.к. return Завершает функцию
      if (x > -3. && x <= -2.) return 4.;
      if (x > -2. && x <= 2.) return x*x;
      return 8.-2.*x;
}
Psilon
Master of Orion
 Аватар для Psilon
5738 / 4686 / 619
Регистрация: 10.07.2011
Сообщений: 14,160
Записей в блоге: 5
Завершенные тесты: 4
01.06.2014, 13:42     Неправильно выдает ответ при некоторых числах, например -2,4.2 #3
sm0og1er, что шарп делает в разделе плюсов?..
C#
1
2
3
4
5
6
7
8
9
10
11
12
double f2(double x)
{
   if (x <= -7 || x >= 4) 
      return 0;
   if (x < -3) 
      return x+7;
   if (x < -2) 
      return 4;
   if (x < 2) 
      return x*x;
   return 2*(4-x);
}
kolorotur
 Аватар для kolorotur
8302 / 6849 / 993
Регистрация: 17.09.2011
Сообщений: 11,812
01.06.2014, 13:57     Неправильно выдает ответ при некоторых числах, например -2,4.2 #4
Ну и финальный штришок последней строчкой:
C#
1
2
3
4
...
if (x < 4) return 2*(4-x);
 
throw new ArgumentOutOfRangeException(); // Undefined.
Или даже так:
C#
1
2
3
4
double f2(double x)
{
   if (x < -9 || x > 7)
      throw new ArgumentOutOfRangeException(); // Undefined.
sm0og1er
0 / 0 / 0
Регистрация: 22.10.2013
Сообщений: 66
01.06.2014, 15:18  [ТС]     Неправильно выдает ответ при некоторых числах, например -2,4.2 #5
Что за точки?
kolorotur
 Аватар для kolorotur
8302 / 6849 / 993
Регистрация: 17.09.2011
Сообщений: 11,812
01.06.2014, 19:34     Неправильно выдает ответ при некоторых числах, например -2,4.2 #6
Цитата Сообщение от sm0og1er Посмотреть сообщение
Что за точки?
Остальной код метода, который нет смысла копировать, т.к. он не несет никакой смысловой нагрузки применительно к конкретному сообщению.
Yandex
Объявления
01.06.2014, 19:34     Неправильно выдает ответ при некоторых числах, например -2,4.2
Ответ Создать тему
Опции темы

Текущее время: 04:01. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru