Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <clocale>
- using namespace std;
- int main() {
- setlocale(LC_ALL, "Russian");
- double X, Y = 1, Y0;
- int It = 0;
- float EPS;
- bool isNotCorrect = false;
- cout << "Эта программа вычислит значение кубического корня с точностью EPS с использованием итерационной формулы Ньютона" << "\n" << "Введите X и EPS" << "\n";
- do
- {
- cin >> X >> EPS;
- if (cin.fail()) {
- isNotCorrect = true;
- cout << "Данные введены неверно, повторите ввод" << '\n';
- cin.clear();
- while (cin.get() != '\n');
- }
- else {
- isNotCorrect = false;
- }
- if (EPS < 0 || EPS > 1) {
- cout << "Введите допустимую погрешность(от 0 до 1)" << '\n';
- isNotCorrect = true;
- }
- if (X > 10000000 || X < -10000000) {
- cout << "Введите допустимое значение X(от -10000000 до 10000000)" << '\n';
- isNotCorrect = true;
- }
- } while (isNotCorrect);
- do
- {
- Y0 = Y;
- Y = (2 * Y0 + X / Y0 / Y0) / 3;
- It++;
- } while (abs(Y - Y0) > EPS);
- cout << "Значение кубического корня : " << Y << '\n';
- cout << "Количество итераций : " << It;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement