|
Главная | Правила | Регистрация | Дневники | Справка | Пользователи | Календарь | Поиск | Сообщения за день | Все разделы прочитаны |
|
Опции темы | Опции просмотра |
06.11.2011, 12:34 | #1 (permalink) |
Новичок
Регистрация: 06.11.2011
Сообщений: 1
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Определить корни уравнения, используя метод секущих
#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 |
06.11.2011, 12:34 | |
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
Пожалуйста, не делайте поспешный действий, лучше ознакомьтесь с похожими топиками Отделение корней уравнения VBA или Pascal Помогите решить линейные дифференциальные уравнения |
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
Опции темы | |
Опции просмотра | |
|
|