Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
DanielDefo
5 / 5 / 0
Регистрация: 13.09.2009
Сообщений: 225
#1

цикл do - while - C++

21.04.2011, 20:45. Просмотров 474. Ответов 4
Метки нет (Все метки)

Ребят, помогите исправить программу.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include<iostream.h>
#include<math.h>
void main()
{
int i;
double x,y,f1,f2,a11,a12,a21,a22,d;
cout<<"Vvedite nachalnoe priblizhenie x: ";
cin>>x;
cout<<"Vvedite nachalnoe priblizhenie y: ";
cin>>y;
 
for( i=1;i<=10;i++)
{
f1=pow(y,3)-pow(x,2)-1;
f2=y*pow(x,3)-x-4;
a11=pow(x,3);
a12=3*pow(y,2);
a21=1-3*pow(x,2)*y;
a22=2*x;
d=2-2*pow(x,4)-9*pow(x,2)*pow(y,3);
x=x-(a11*f1+a12*f2)/d;
y=y-(a21*f1+a22*f2)/d;
cout<<"\nNomer iteracii: "<<i<<"\tx = "<<x<<"\ty= "<<y;}
}
Программа решает систему нелинейных уравнений методом ньютона.
Условие в картинке.

ПРограмма то работает, но вот только учитель сказал сделать цикл с do - while.
НУжно х1=1, у1=у сделать и дальше чтоб вчисляло и была проверка на условие.
ЧТоб проверяло условие, если |x1-x|<e и |y1-y|<e то "закончить процесс".

Заранее спасибо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.04.2011, 20:45
Здравствуйте! Я подобрал для вас темы с ответами на вопрос цикл do - while (C++):

Цикл: цикл for вообще никак не воспринимается транслятором - C++
Пишу программу, которая производит различные действия с одномерным массивом. Возникла следующая проблема: цикл for вообще никак не...

Почему цикл на при 1 уходит в бесконечный цикл? - C++
#define _CRT_SECURE_NO_WARNINGS #include &lt;iostream&gt; #include &lt;stdio.h&gt; #include &lt;string.h&gt; int main() { int x=0, y=0,...

Задание на цикл с параметром и цикл с постусловием - C++
Помогите пожалуйста написать программу с этими циклами. 1. Вычислить и напечатать таблицу значений функции Z= (e^-x)sinx для 0&lt;=x&lt;=П,...

Цикл for/Цикл while Помогите срочно пожалуйста... - C++
1.Вычислить и вывести на экран в виде таблицы значения функции F от x1 до x2 с шагом dx. где a, b и c - действительные числа. 2.Цикл...

Цикл с параметром и цикл с условием - C++
1. Составить программу вычисления суммы первых 10 непарных чисел 2. Дано числовой ряд и некоторое число &quot;епсила&quot;. Найти сумму...

заменить цикл for на цикл while - C++
#include &lt;iostream&gt; using namespace std; int main() { int N, M, sum; cout &lt;&lt; &quot;Введите число N:&quot; &lt;&lt; endl; ...

4
while(i)k++
48 / 48 / 5
Регистрация: 13.08.2010
Сообщений: 160
21.04.2011, 21:03 #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include<iostream.h>
#include<math.h>
void main()
{
float e = 2.71828183;//для нее константа должна быть, погугли
int i, х1=1, у1=у;
double x,y,f1,f2,a11,a12,a21,a22,d;
cout<<"Vvedite nachalnoe priblizhenie x: ";
cin>>x;
cout<<"Vvedite nachalnoe priblizhenie y: ";
cin>>y;
 
do
{
f1=pow(y,3)-pow(x,2)-1;
f2=y*pow(x,3)-x-4;
a11=pow(x,3);
a12=3*pow(y,2);
a21=1-3*pow(x,2)*y;
a22=2*x;
d=2-2*pow(x,4)-9*pow(x,2)*pow(y,3);
x=x-(a11*f1+a12*f2)/d;
y=y-(a21*f1+a22*f2)/d;
cout<<"\nNomer iteracii: "<<i<<"\tx = "<<x<<"\ty= "<<y;
}while(!(abs(x1-x) < e && abs(y1-y) < e))
}
1
DanielDefo
5 / 5 / 0
Регистрация: 13.09.2009
Сообщений: 225
21.04.2011, 21:15  [ТС] #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include<iostream.h>
#include<math.h>
void main()
{
float e = 2.71828183;
int i, x1=x, y1=y;
double x,y,f1,f2,a11,a12,a21,a22,d;
cout<<"Vvedite nachalnoe priblizhenie x: ";
cin>>x;
cout<<"Vvedite nachalnoe priblizhenie y: ";
cin>>y;
do
{
f1=pow(y,3)-pow(x,2)-1;
f2=y*pow(x,3)-x-4;
a11=pow(x,3);
a12=3*pow(y,2);
a21=1-3*pow(x,2)*y;
a22=2*x;
d=2-2*pow(x,4)-9*pow(x,2)*pow(y,3);
x=x-(a11*f1+a12*f2)/d;
y=y-(a21*f1+a22*f2)/d;
cout<<"\nNomer iteracii: "<<i<<"\tx = "<<x<<"\ty= "<<y;
}
while(!(abs(x1-x) < e && abs(y1-y) < e))
}
}
Ошибки выдает в 6,7 и 26 строках.

И в твоем коде почему в 6 строке х1=1, а не х ?
0
while(i)k++
48 / 48 / 5
Регистрация: 13.08.2010
Сообщений: 160
21.04.2011, 21:31 #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
да извени ступил чото, компилятора по рукой нет просто
 
#include<iostream.h>
#include<math.h>
void main()
{
float e = 2.71828183;//для нее константа должна быть, погугли
int i, х1, у1;
double x,y,f1,f2,a11,a12,a21,a22,d;
cout<<"Vvedite nachalnoe priblizhenie x: ";
cin>>x;
cout<<"Vvedite nachalnoe priblizhenie y: ";
cin>>y;
 
do
{
f1=pow(y,3)-pow(x,2)-1;
f2=y*pow(x,3)-x-4;
a11=pow(x,3);
a12=3*pow(y,2);
a21=1-3*pow(x,2)*y;
a22=2*x;
d=2-2*pow(x,4)-9*pow(x,2)*pow(y,3);
x=x-(a11*f1+a12*f2)/d;
y=y-(a21*f1+a22*f2)/d;
cout<<"\nNomer iteracii: "<<i<<"\tx = "<<x<<"\ty= "<<y;
х1 = x;
у1 = y;
}while(!(abs(x1-x) < e && abs(y1-y) < e));
}
должно компилится, если не работает то напиши ошибки компиляции
1
DanielDefo
5 / 5 / 0
Регистрация: 13.09.2009
Сообщений: 225
21.04.2011, 21:37  [ТС] #5
Немножко подправил и работает. Спасибо.
0
21.04.2011, 21:37
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.04.2011, 21:37
Привет! Вот еще темы с ответами:

Изменить цикл for на цикл do-while - C++
помогите передать программу с цикла FOR в цикл DO-WHILE #include &lt;math.h&gt; #include &lt;iostream&gt; #include &lt;conio.h&gt; using namespace...

Создать программу по всем 3 видам циклов...цикл с параметром,цикл с условием,цикл,и цикл с предусловием... - Turbo Pascal
Найти сумму чисел 1 в квадрате до 10 c квадрате...операцию возведению в степень не использовать учесть особенности получения квадратного...

Написать в турбо паскале, Цикл с параметром, Цикл, с постусловием, и с предусловием пожалуйста - Turbo Pascal

Как реализовать бесконечный цикл While, но чтобы этот цикл не грузил процессор? - Visual C++
Допустим есть цикл: while (1) { ... } Как сделать так, чтобы бесконечный цикл не грузил процессор. Избавиться от...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru