Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > Помощь студентам


Ответ
 
Опции темы Опции просмотра
Старый 06.11.2011, 12:34   #1 (permalink)
Fras
Новичок
 
Регистрация: 06.11.2011
Сообщений: 1
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию Определить корни уравнения, используя метод секущих

#include <conio.h>
#include <stdio.h>
#include <math.h>
//---------------------------------------
int vvod(int A[], float B[])
{
int q;
float x;
FILE *fw;
fw=fopen("out.txt","w");
q:printf("Vvedite koefficienti yravneniya a0,a1,a2,nachalnoe pribligenie x0 i tochnost reschenia E:\n");
fprintf(fw,"koefficienti yravneniya a0,a1,a2,nachalnoe pribligenie x0 i tochnost reschenia E:\n");
scanf("%d", &A[1]);printf(" A[1]=%d\n",A[1]);fprintf(fw," A[1]=%d ",A[1]);fprintf(fw,"\n");
scanf("%d", &A[2]);printf(" A[2]=%d\n",A[2]);fprintf(fw," A[2]=%d ",A[2]);fprintf(fw,"\n");
scanf("%d", &A[3]);printf(" A[3]=%d\n",A[3]);fprintf(fw," A[3]=%d ",A[3]);fprintf(fw,"\n");
scanf("%f", &B[4]);printf(" B[4]=%f\n",B[4]);fprintf(fw," B[4]=%f ",B[4]);fprintf(fw,"\n");
scanf("%f", &B[1]);printf(" B[1]=%f\n",B[1]);fprintf(fw," B[1]=%f ",B[1]);fprintf(fw,"\n");
printf("Vvedite interval:\n");
fprintf(fw,"Interval a,b:\n",B[2],B[3]);
scanf("%f", &B[2]);
printf(" B[2]=%f\n",B[2]);
fprintf(fw," B[2]=%f ",B[2]);
fprintf(fw,"\n");
scanf("%f", &B[3]);
printf(" B[3]=%f\n",B[3]);
fprintf(fw," B[3]=%f ",B[3]);
fprintf(fw,"\n");
if(B[4]<b[2]||b[4]>B[3]){
printf("\n B[4] ne ydovletvoryaet intervaly, povtorite vvod\n");
goto q;
}
printf("\nZadannoe yravnenie:\n");
fprintf(fw,"Zadannoe yravnenie:\n");
printf(" y=%d+%d*x*x*x+%d*tgx\n",A[1],A[2],x,x,x,A[3],x);
fprintf(fw," y=a0+a1*x*x*x+a2*tgx\n");

printf("\nProizvodnja y:\n");
fprintf(fw,"Proizvodnja y:\n");
printf(" Y=%d/x+%d*2*x+%d*3*x*x\n",A[2],x,A[3],x,A[4],x,x);
fprintf(fw," Y=a1/x+a2*2*x+a3*3*x*x\n");

fclose(fw);
}
//------------------------------------------------
сам метод
//-----------------------------------------------
int main(int){
int A[3];
float B[4];
vvod(A,B);
reshenie(A,B);
printf("\nProgramm complite");
getch();
}
это ввод для метода Ньютона, что нужно переделать что бы он подходил для метода Секущих?
и собственно как написать сам метод? полностью задание звучит так:
Определить корни уравнения, используя метод секущих. Коэффициенты уравнения, точность решения и начальное приближение задаются с терминала. Предусмотреть возможность нахождения всех корней уравнения при одном запуске программы.
Результаты решения вывести в файл вместе с заданными значениями и видом решаемого уравнения.
F(x)=a(0)+a(1)*x*x*x+a(2)*tgx
Fras вне форума   Ответить с цитированием

Старый 06.11.2011, 12:34
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Пожалуйста, не делайте поспешный действий, лучше ознакомьтесь с похожими топиками

Отделение корней уравнения VBA или Pascal
Помогите решить линейные дифференциальные уравнения

Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 07:35.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.