|
0 / 0 / 0
Регистрация: 28.12.2016
Сообщений: 8
|
|
Метод ньютона11.01.2017, 00:33. Показов 795. Ответов 4
Метки нет (Все метки)
Не могу понять, как сделать. Кто может, хотя бы примерно как его сделать:
Уравнение: sqrt(1-0,4*x*x)-arcsin(x)=0 Отрезок, содержащий корень: [0;1] Точное значение: 0,7672 Желательно, чтобы одна функция реализовала уравнение, для которого вычисляется корень, другая метод решения уравнения. Если возможно
0
|
|
| 11.01.2017, 00:33 | |
|
Ответы с готовыми решениями:
4
Метод Ньютона Метод Ньютона Метод Ньютона |
|
125 / 125 / 44
Регистрация: 05.10.2013
Сообщений: 462
|
|
| 11.01.2017, 00:38 | |
|
SVC, что именно вам не понятно?
0
|
|
|
0 / 0 / 0
Регистрация: 28.12.2016
Сообщений: 8
|
|
| 11.01.2017, 00:52 [ТС] | |
|
Не понимаю как выполнить этот метод, я в методе Ньютона не шарю, поэтому не могу(
0
|
|
|
125 / 125 / 44
Регистрация: 05.10.2013
Сообщений: 462
|
|
| 11.01.2017, 01:36 | |
|
SVC, посмотрите ссылки внизу страницы. Там точно вам что-то поможет.
0
|
|
|
0 / 0 / 0
Регистрация: 28.12.2016
Сообщений: 8
|
|
| 11.01.2017, 13:28 [ТС] | |
|
#include <iostream>
#include <string> #include <cassert> #include <math.h> #include <stdio.h> #include <cstdio> #include <iomanip> #include <conio.h> using namespace std; //1 void printinfo(int x1=0, int y2=0) { cout<<"Координаты: "<<x1<<setw(2)<<y2<<endl; } //2 int sum(int k,...) { int *p=&k; int s=*p; int i=1,j=1; p=p+1; while (*p!=0) { if (j%2==0) { s+=*p; i++; } p=p+1; j++;//Для подсчёта нечётности номеров } return s/i; } //3 //Создание int* create_array(int symbol) { int* array=new int[15]; for (int i=0; i<15; i++) { array[i]=rand()%100; } return array; } double* create_array(double symbol) { double* array=new double[15]; for (int i=0; i<15; i++) { array[i]=(double)(rand()%100)/100; } return array; } char* create_array(char symbol) { char* array=new char[15]; for (int i=0; i<15; i++) { array[i]=97+rand()%26; } return array; } //Вывод void print_array(int* array, int size) { for (int i=0; i<size; i++) { cout<<array[i]<<" "; } } void print_array(double* array, int size) { for (int i = 0; i < size; i++) { cout<<array[i]<<" "; } } void print_array(char* array, int size) { for (int i=0; i<size; i++) { cout<<array[i]<< " "; } } //Сортировка int* sort_array(int* array, int size) { int min=array[1]; for (int i=0;i<size;i++) { if (min>array[i]) min=array[i]; } int swap,z=0; for (int i=0;i<size-1;i++) { min=i; for (int j=i+1;j<size;j++) { if (array[j]<array[min]) min=j; } swap=array[i]; array[i]=array[min]; array[min]=swap; } return array; } double* sort_array(double* array, int size) { double min=array[1],swap; for (int i=0;i<size;i++) { if (min>array[i]) min=array[i]; } int z=0; for (int i=0;i<size-1;i++) { z=i; for (int j=i+1;j<size;j++) { if (array[j]<array[z]) z=j; } swap=array[i]; array[i]=array[z]; array[z]=swap; } return array; } char* sort_array(char* array, int size) { char min=array[1],swap; for (int i=0;i<size;i++) { if (min>array[i]) min=array[i]; } int z=0; for (int i=0;i<size-1;i++) { z=i; for (int j=i+1;j<size;j++) { if (array[j]<array[z]) z=j; } swap=array[i]; array[i]=array[z]; array[z]=swap; } return array; } //Шаблон template<class T> T* create_array(T symbol) { T* array=new T[15]; for (int i=0; i<15; i++) { array[i]=rand()%100; } return array; } //4 #define eps 0.001 double fx(double x) { return sqrt(1-0.4*x*x)-asin(x) ; } double dfx(double x) { return (1.0/(2*(sqrt(1-0.4*x*x)))); } typedef double(*function)(double x); double solve(function fx, function dfx, double x0) { double x1 = x0 - fx(x0)/dfx(x0); while (fabs(x1-x0)>eps) { x0 = x1; x1 = x1 - fx(x1)/dfx(x1); } return x1; } int main() { setlocale(LC_ALL, "Rus"); // Задание 1 cout<<"Задание 1"<<endl; cout<<"Координаты по умолчанию: "<<endl; printinfo(); int x,y; cout<<"Ваши координаты: "; cin>>x>>y; printinfo(x,y); cout<<endl; // Задание 2 cout<<"Задание 2"<<"\nСр.арифм на нечётных номерах(1+2+3+4): \n"<<sum(1,2,3,4,0)<<endl<<endl; // Задание 3 cout<<"Задание 3"<<endl; int size=15; // Создание массивов с разным типом данных(перегрузка) int *p_int_array = create_array(15); double *p_double_array = create_array(15.5); char *p_char_array = create_array('a'); // Фун-ии вывода массивов print_array(p_int_array, 15); cout<<endl; print_array(p_double_array, 15); cout<<endl; print_array(p_char_array, 15); cout<<endl; // Фун-ии сортировки массивов sort_array(p_int_array, 15); sort_array(p_double_array, 15); sort_array(p_char_array, 15); // Фун-ии вывода отсортированных массивов cout<<endl; cout<<"Простой выбор: "<<endl; print_array(p_int_array, 15); cout<<endl; print_array(p_double_array, 15); cout<<endl; print_array(p_char_array, 15); cout<<endl; // Задание 4 cout << "\n\nМетод Ньютона\n"<< endl; cout << "Kорень: " << solve(fx,dfx,0) << endl;; system("pause"); return 0; } вот код программы конкретно 4 задание, не могу понять почему выводит бесконечность Добавлено через 32 секунды #include <iostream> #include <string> #include <cassert> #include <math.h> #include <stdio.h> #include <cstdio> #include <iomanip> #include <conio.h> using namespace std; //1 void printinfo(int x1=0, int y2=0) { cout<<"Координаты: "<<x1<<setw(2)<<y2<<endl; } //2 int sum(int k,...) { int *p=&k; int s=*p; int i=1,j=1; p=p+1; while (*p!=0) { if (j%2==0) { s+=*p; i++; } p=p+1; j++;//Для подсчёта нечётности номеров } return s/i; } //3 //Создание int* create_array(int symbol) { int* array=new int[15]; for (int i=0; i<15; i++) { array[i]=rand()%100; } return array; } double* create_array(double symbol) { double* array=new double[15]; for (int i=0; i<15; i++) { array[i]=(double)(rand()%100)/100; } return array; } char* create_array(char symbol) { char* array=new char[15]; for (int i=0; i<15; i++) { array[i]=97+rand()%26; } return array; } //Вывод void print_array(int* array, int size) { for (int i=0; i<size; i++) { cout<<array[i]<<" "; } } void print_array(double* array, int size) { for (int i = 0; i < size; i++) { cout<<array[i]<<" "; } } void print_array(char* array, int size) { for (int i=0; i<size; i++) { cout<<array[i]<< " "; } } //Сортировка int* sort_array(int* array, int size) { int min=array[1]; for (int i=0;i<size;i++) { if (min>array[i]) min=array[i]; } int swap,z=0; for (int i=0;i<size-1;i++) { min=i; for (int j=i+1;j<size;j++) { if (array[j]<array[min]) min=j; } swap=array[i]; array[i]=array[min]; array[min]=swap; } return array; } double* sort_array(double* array, int size) { double min=array[1],swap; for (int i=0;i<size;i++) { if (min>array[i]) min=array[i]; } int z=0; for (int i=0;i<size-1;i++) { z=i; for (int j=i+1;j<size;j++) { if (array[j]<array[z]) z=j; } swap=array[i]; array[i]=array[z]; array[z]=swap; } return array; } char* sort_array(char* array, int size) { char min=array[1],swap; for (int i=0;i<size;i++) { if (min>array[i]) min=array[i]; } int z=0; for (int i=0;i<size-1;i++) { z=i; for (int j=i+1;j<size;j++) { if (array[j]<array[z]) z=j; } swap=array[i]; array[i]=array[z]; array[z]=swap; } return array; } //Шаблон template<class T> T* create_array(T symbol) { T* array=new T[15]; for (int i=0; i<15; i++) { array[i]=rand()%100; } return array; } //4 #define eps 0.001 double fx(double x) { return sqrt(1-0.4*x*x)-asin(x) ; } double dfx(double x) { return (1.0/(2*(sqrt(1-0.4*x*x)))); } typedef double(*function)(double x); double solve(function fx, function dfx, double x0) { double x1 = x0 - fx(x0)/dfx(x0); while (fabs(x1-x0)>eps) { x0 = x1; x1 = x1 - fx(x1)/dfx(x1); } return x1; } int main() { setlocale(LC_ALL, "Rus"); // Задание 1 cout<<"Задание 1"<<endl; cout<<"Координаты по умолчанию: "<<endl; printinfo(); int x,y; cout<<"Ваши координаты: "; cin>>x>>y; printinfo(x,y); cout<<endl; // Задание 2 cout<<"Задание 2"<<"\nСр.арифм на нечётных номерах(1+2+3+4): \n"<<sum(1,2,3,4,0)<<endl<<endl; // Задание 3 cout<<"Задание 3"<<endl; int size=15; // Создание массивов с разным типом данных(перегрузка) int *p_int_array = create_array(15); double *p_double_array = create_array(15.5); char *p_char_array = create_array('a'); // Фун-ии вывода массивов print_array(p_int_array, 15); cout<<endl; print_array(p_double_array, 15); cout<<endl; print_array(p_char_array, 15); cout<<endl; // Фун-ии сортировки массивов sort_array(p_int_array, 15); sort_array(p_double_array, 15); sort_array(p_char_array, 15); // Фун-ии вывода отсортированных массивов cout<<endl; cout<<"Простой выбор: "<<endl; print_array(p_int_array, 15); cout<<endl; print_array(p_double_array, 15); cout<<endl; print_array(p_char_array, 15); cout<<endl; // Задание 4 cout << "\n\nМетод Ньютона\n"<< endl; cout << "Kорень: " << solve(fx,dfx,0) << endl;; system("pause"); return 0; }
0
|
|
| 11.01.2017, 13:28 | |
|
Помогаю со студенческими работами здесь
5
Метод Ньютона
Метод Ньютона Метод Ньютона Метод Ньютона Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
|
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога
Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
|
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога
Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
|
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|