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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 20.03.2021, 16:36   #1
Evgeny_L
Пользователь
 
Регистрация: 27.10.2018
Сообщений: 31
По умолчанию Помочь исправить ошибку в коде С

Выдает ответ ноль всегда
Формула во вложение
Вот код:
Код:
#include <stdio.h>
#include <conio.h>
#include <time.h>
#define _USE_MATH_DEFINES
#include <math.h>

main()
{
    double y,x,a;
    double pi;
    pi = 3, 14;
    printf("y=");
    scanf_s("%i", &y);
    printf("x=");
    scanf_s("%i", &x);
    a = abs((pow(sin(x), 3) * abs(3 * pow(x, 3) + 2 * pow(y, 2) - 6)) / (sqrt(pow((3 * pow(x, 3) + 2 * pow(2, y) - 6), 2)+pi))); //тут ошибка
    printf("a= %lf \n", a);
 
    _getch();
    return 0;
}
Изображения
Тип файла: png Screenshot 2021-03-20 145102.png (2.7 Кб, 12 просмотров)
Evgeny_L вне форума Ответить с цитированием
Старый 20.03.2021, 17:49   #2
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,620
По умолчанию

А если так?
Код:
#include <stdio.h>
#include <conio.h>
#include <time.h>
#define _USE_MATH_DEFINES
#include <math.h>

main()
{
    double y,x,a,tmp,pi;
    pi = 3.14;
    printf("y=");
    scanf_s("%lf", &y);
    printf("x=");
    scanf_s("%lf", &x);
    tmp = 3*x*x*x + 2*y*y - 6 ;
    a = fabs ( pow(sin(fabs(tmp)),3) / sqrt( tmp*tmp+pi) ) ;
    printf("a= %lf \n", a);
    _getch();
    return 0;
}
Не надо стесняться применять вспомогательные переменные, чтобы не вычислять одно и то же многократно.

Последний раз редактировалось digitalis; 20.03.2021 в 21:27.
digitalis вне форума Ответить с цитированием
Старый 20.03.2021, 17:55   #3
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,342
По умолчанию

И вместо abs использовать fabs.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 20.03.2021, 17:57   #4
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,620
По умолчанию

Ох, давненько я не брал в руки Сишек
digitalis вне форума Ответить с цитированием
Старый 20.03.2021, 18:01   #5
ViktorR
Старожил
 
Регистрация: 23.10.2010
Сообщений: 2,331
По умолчанию

Неверно записано выражение для числителя.
У меня получилось так:
Код:
a = abs(pow(sin(abs(3 * pow(x, 3) + 2 * pow(y, 2) - 6)), 3) / sqrt(pow((3 * pow(x, 3) + 2 * pow(2, y) - 6), 2)+pi));
PS:
Пока думал и проверял, навалило
Как-то так, ...
ViktorR вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помочь найти ошибку в коде. Максим_maks Lazarus, Free Pascal, CodeTyphon 12 28.07.2015 00:53
Треугольная последовательность. Помочь исправить ошибки в коде (C) lmbe Помощь студентам 0 27.12.2013 03:17
Прошу помочь исправить ошибку. bhopperz Паскаль, Turbo Pascal, PascalABC.NET 4 26.11.2012 22:46
помочь наити ошибку в коде N-Ban Помощь студентам 10 20.12.2010 02:29
Просьба помочь исправить ошибку в форме обратной связи (HTML коде) Michelle77 Помощь студентам 1 20.10.2009 18:03