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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 17.11.2013, 11:08   #1
RusStyle
 
Регистрация: 17.11.2013
Сообщений: 7
По умолчанию Табулирование функции(нужна помошь)

Задание такое:
Заданы начальное и конечное значения аргумента A и B, шаг H.
Значения функции вычисляются в точках
A,
A + H,
A + 2*H,
A + 3*H,

пока значение аргумента не превысит B, но не больше чем в 25 точках.

Уравнение:
y = ((1 + 2(x*x)+ x )/((x*x*x)+x – 21)) и всё это выражение под корнем

Программу написал в С:
Код:
#include <stdio.h>
#include <math.h>

int main(void)
{
double A,a,B,m,k,y,l;
int H,i;
printf("Vvedite nachalnoe znachenie A: ");
scanf("%lf", &A);
printf("Vvedite konechnoe znachenie B: ");
scanf("%lf", &B);
printf("Vvedite shag H: ");
scanf("%d", &H);  
l=1;
i=0;

while(A<B)
{
A=A+i*H;
m=1+2*A*A+A;
k=A*A*A+A-21;
y=sqrt(m/k);
	if (y>=0)
	{
		m=1+2*A*A+A;
		k=A*A*A+A-21;
		y=sqrt(m/k);
                printf("%.lf. ", l);
		printf("%.3lf  |  ", A);
                printf("f(x)=%.3f \n", y);
	}
	
        else
        {
                printf("%.lf. ", l);
	        printf("%.3lf  |  ", A);
                printf("f(x)=kompleksnoje 4islo\n");
        }
i++;
l++;	
}
getchar();      
getchar(); 
return 0;
}
Проблема следующая,всё работает прога запускается но не правильно считает X,в чём может быть причина?где-то ошибка в коде?

Последний раз редактировалось Stilet; 17.11.2013 в 11:39.
RusStyle вне форума Ответить с цитированием
Старый 17.11.2013, 18:37   #2
alexcoder
Форумчанин
 
Регистрация: 31.05.2009
Сообщений: 786
По умолчанию

Сделать H также double, а не int.
Помощь с программами:
vk.com/alexcoder1
e-mail: informatik101@mail.ru
alexcoder вне форума Ответить с цитированием
Старый 17.11.2013, 21:28   #3
RusStyle
 
Регистрация: 17.11.2013
Сообщений: 7
По умолчанию

Сделал по вашему совету...не помогло.При вычисленни функции программа бесконечна
RusStyle вне форума Ответить с цитированием
Старый 17.11.2013, 22:13   #4
RusStyle
 
Регистрация: 17.11.2013
Сообщений: 7
По умолчанию

Ребят помогите срочно кто умеет! Сроки горят)
RusStyle вне форума Ответить с цитированием
Старый 17.11.2013, 23:49   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Так?:
Код:
#include <stdio.h>
#include <string.h>
#include <math.h>
main()
{
double A=1,a,B=12,m,k,y,l;
int H=1,i;
l=1;
i=1;

for(;A<B && i<=25;A+=i*H,i++){
     y=sqrt((1 + 2*(A*A)+ A )/((A*A*A)+A - 21));
     printf("%5.2f\t%5.2f\n",A,y);
}
 
return 0;
}
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 18.11.2013, 00:51   #6
RusStyle
 
Регистрация: 17.11.2013
Сообщений: 7
По умолчанию

Что то типо,только после запуска программы пользователь вводит данные в самой программе когда она запущена а не в коде:

Должно быть так)

Введите начально значение А: (вводит пользователь)
Введите конечное значение В: (вводит пользователь)
Введите шаг Н: (вводит пользователь)

Затем на основе ввёденных значений идёт вычисление...
RusStyle вне форума Ответить с цитированием
Старый 18.11.2013, 18:20   #7
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Ну так опиши ввод этих переменок, я в примере его убрал для удобства.
пример ввода у тебя есть.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Табулирование заданной функции и определение максимального и минимального значения функции в таблице Марина1986 C/C++ Сетевое программирование 0 07.05.2013 11:31
Табулирование функции Elonu Помощь студентам 4 28.03.2011 21:02
Табулирование функции oksik_777 Паскаль, Turbo Pascal, PascalABC.NET 0 26.05.2010 19:27