Технический форум

Технический форум (http://www.tehnari.ru/)
-   Помощь студентам (http://www.tehnari.ru/f41/)
-   -   Определить корни уравнения, используя метод секущих (http://www.tehnari.ru/f41/t59418/)

Fras 06.11.2011 12:34

Определить корни уравнения, используя метод секущих
 
#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


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

Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.