Форум программистов, компьютерный форум CyberForum.ru

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 25, средняя оценка - 4.68
sergeu90
27 / 28 / 3
Регистрация: 17.10.2009
Сообщений: 739
#1

Нужен пример цикла while - C++

08.10.2011, 15:31. Просмотров 3194. Ответов 46
Метки нет (Все метки)

Помогите решить задачку или хотябы обьясните как делать а то сижу и думаю как это так реализовать
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.10.2011, 15:31     Нужен пример цикла while
Посмотрите здесь:

Нужен пример с массивами - C++
Не могу догнать, зачем нужен массив конкретно.

Нужен пример классов - C++
Привести пример классов с наследованием и доступом к компонентам их экземпляров через указатели на базовый и производный классы.

Очень нужен пример программы в Си++ - C++
Задан любой текст. Выпонить сортировку слов этого текста в алфавитном порядке.

Нужен пример игры в CodeBlocks - C++
Добрый вечер! Мне нужно сделать небольшую программу игру на с++ в codeblocks, есть ли у вас какие либо наброски кодов, советы, инструкции?...

Нужен пример использование паттернов - C++
Мне нужно пример использование паттернов в программах написанных на JAVA или C++ языках!

Нужен пример работы со структурами - C++
Здравствуйте, не могли ли вы мне привести пример простой программы, в которой происходят простые действия, в которой присутствует структура...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
sergeu90
27 / 28 / 3
Регистрация: 17.10.2009
Сообщений: 739
08.10.2011, 19:03  [ТС]     Нужен пример цикла while #41
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>
#include  <math.h>
#include <iomanip>
using namespace std;
void  main(void)
{
    int i;
    setlocale(LC_ALL,"Russian");
    double  x1,x2,dx,f,s=0,y=0,esp,a;
    int n=0;
    cout<<"Ввведите xn,xk,dx,eps"<<endl;
    cin>>x1>>x2>>dx>>esp;
    cout<<setw(15)<<"-----------------"<<endl;
    cout<<"|   x  |    f   |"<<endl;
    cout<<"------------------"<<endl;
while (y<esp)
{
y=((pow(x1,(2*n)+1))/((2*n)+1));
s=s+y;
cout<<"|"<<setw(6)<<x1<<"|"<<setw(8)<<s<<"|"<<endl;
x1=x1+dx;
}
 
 
cin>>a;
}
посмотрите пожалуйста что то не то

Добавлено через 21 минуту
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>
#include  <math.h>
#include <iomanip>
using namespace std;
void  main(void)
{
    int i;
    setlocale(LC_ALL,"Russian");
    double  x1,x2,dx,f,s=0,y=0,esp,a;
    int n=0;
    cout<<"Ввведите xn,xk,dx,eps"<<endl;
    cin>>x1>>x2>>dx>>esp;
    cout<<setw(15)<<"-----------------"<<endl;
    cout<<"|   x  |    f   |"<<endl;
    cout<<"------------------"<<endl;
while (y<esp && x1<=x2)
{
y=((pow(x1,(2*n)+1))/((2*n)+1));
s=s+y;
cout<<"|"<<setw(6)<<x1<<"|"<<setw(8)<<s<<"|"<<endl;
x1=x1+dx;
n=n+1;
}
 
 
cin>>a;
}
Добавлено через 9 минут
посмотрите так я сделал или не так

Добавлено через 29 минут
посмотрите плиз мой код
aeshes
440 / 203 / 13
Регистрация: 07.10.2011
Сообщений: 462
08.10.2011, 23:40     Нужен пример цикла while #42
Нет, не так
Во-первых, не соответствует заданию - тебе же вроде надо вычислять следующее слагаемое через рекуррентную формулу, а значит забудь про функции pow как про страшный сон
Во-вторых, у тея здесь будет два вложенных цикла - один для суммы, один для вычисления функции на отрезке - я это описала в твоей другой теме, почитай там. Если что, задавай вопросы
sergeu90
27 / 28 / 3
Регистрация: 17.10.2009
Сообщений: 739
09.10.2011, 11:34  [ТС]     Нужен пример цикла while #43
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>
#include  <math.h>
#include <iomanip>
using namespace std;
void  main(void)
{
    int i;
    setlocale(LC_ALL,"Russian");
    double  x1,x2,dx,f,s=0,y,esp,a;
    int n=0;
    cout<<"Ввведите xn"<<endl;
    cin>>x1;
    cout<<setw(15)<<"--------------------"<<endl;
    cout<<"|   x  |    f   |    n  "<<endl;
    cout<<"---------------------"<<endl;
    y=x1;
while (fabs(y)>esp)
{
y=((pow(x1,(2*n)+1))/((2*n)+1));
s=s+y;
cout<<"|"<<setw(6)<<x1<<"|"<<setw(8)<<s<<"|"<<n<<endl;
n=n+1;
}
 
 
cin>>a;
}
Добавлено через 1 минуту
что то я навоял
aeshes
440 / 203 / 13
Регистрация: 07.10.2011
Сообщений: 462
09.10.2011, 12:13     Нужен пример цикла while #44
Почти, но не совсем то - нет рекуррентной формулы. Если в задании сказано использовать рекуррентные формулы. то функции pow использовать нельзя

Сначала вычисляем рекуррентный множитель. Для этого берем n-oe и (n+1)-ое слагаемые и делим (n+1)-ое слагаемое на n-ое слагаемое.
Слагаемые выписываем из-под знака суммы - у тебя это http://www.cyberforum.ru/cgi-bin/latex.cgi?{C}_{n}=\frac{{x}^{2n+1}}{2n+1}, http://www.cyberforum.ru/cgi-bin/latex.cgi?{C}_{n+1}=\frac{{x}^{2(n+1)+1}}{2(n+1)+1}=\frac{{x}^{2n+3}}{2n+3}. (n+1)-ое слагаемое получается, если в n-ое слагаемое вместо n поставить (n+1)
Теперь делишь их:
http://www.cyberforum.ru/cgi-bin/latex.cgi?T=\frac{{C}_{n+1}}{{C}_{n}}=\frac{{x}^{2n+3}}{2n+3} : \frac{{x}^{2n+1}}{2n+1} = \frac{{x}^{2n+3}}{2n+3} * \frac{2n+1}{{x}^{2n+1}}=\frac{{x}^{2} (2n+1) }{(2n+3)}
Т - твой реуррентный множитель
Находишь первое слагаемое, подставляя в http://www.cyberforum.ru/cgi-bin/latex.cgi?{C}_{n} n=0, получишь http://www.cyberforum.ru/cgi-bin/latex.cgi?{C}_{0}=x

Эта программа вычисляет сумму ряда с использованием рекуррентного множителя для одного х.
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
#include <iostream>
#include  <math.h>
#include <iomanip>
using namespace std;
void  main(void)
{
    double  x=0.3,esp=1e-18; //фиксированный х для примера
    cout<<"-------------------------------------"<<endl;
    cout<<"|   x  |     f    |   n  |  math F  |"<<endl;
    cout<<"-------------------------------------"<<endl;
    double ck=x;//первое слагаемое
    double S=0, T;//Т - рекуррентный множитель
    int n=0;
    while (fabs(ck)>esp && n<=500)
    {
        S=S+ck;
        T=x*x*(2*n+1)/(2*n+3.0);
        ck=ck*T;
        n=n+1;
    }
    S=S*2;
    double mathF=log((1+x)/(1-x)); //точное значение функции, полученное по формуле
    cout<<"|"<<setw(6)<<x<<"| "<<setw(8)<<S<<" |"<<setw(6)<<n<<"| "<<setw(8)<<mathF<<" |"<<endl;
    cout<<"-------------------------------------"<<endl;
}
Теперь тебе ее нужно расширить, поместив вычисление суммы в цикл while, параметром для которого будет xn<=xk

Попробуй. Если все еще не понятно, пиши
sergeu90
27 / 28 / 3
Регистрация: 17.10.2009
Сообщений: 739
09.10.2011, 12:16  [ТС]     Нужен пример цикла while #45
что то еще не понял до конца допишите уже до конца мне я разберусь как нить
aeshes
440 / 203 / 13
Регистрация: 07.10.2011
Сообщений: 462
09.10.2011, 12:32     Нужен пример цикла while #46
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#include <iostream>
#include  <math.h>
#include <iomanip>
using namespace std;
 
void  Table(double xn, double xk, double dx, double eps)
{
    cout<<"-------------------------------------"<<endl;
    cout<<"|   x  |     f    |   n  |  math F  |"<<endl;
    cout<<"-------------------------------------"<<endl;
    double ck;
    double S, T;//Т - рекуррентный множитель
    int n;
    double x, mathF;
    x=xn;
    while(x<=xk+dx)
    {
        S=0;
        n=0;
        ck=x;//первое слагаемое
        while (fabs(ck)>eps && n<=500)
        {
            S=S+ck;
            T=x*x*(2*n+1)/(2*n+3.0);
            ck=ck*T;
            n=n+1;
        }
        S=S*2;
        mathF=log((1+x)/(1-x)); //точное значение функции, полученное по формуле
        cout<<"|"<<setw(6)<<x<<"| "<<setw(8)<<S<<" |"<<setw(6)<<n<<"| "<<setw(8)<<mathF<<" |"<<endl;
        x=x+dx;
    }
    cout<<"-------------------------------------"<<endl;
}
 
int main()
{
    setlocale(LC_ALL,"Russian");
    cout<<"Первая таблица:\n";
    Table(-0.9,-0.5,0.05,1e-18);
 
    cout<<"\nВторая таблица:\n";
    Table(0.1,0.2,0.01,1e-22);
 
}
Вынесла формирование таблицы для каждого варианта входных данных в отдельную функцию
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.10.2011, 12:33     Нужен пример цикла while
Еще ссылки по теме:

Нужен пример объявления структуры - C++
прошу помощи разобраться любая структура struct human { int age; int height; }; если я знаю какое именно количество будет...

Нужен пример турнирной сортировки - C++
Здравствуйте! Мне очень нужен пример турнирной сортировки , нигде не могу её найти . Читал про пирамидальную - это не турнирная случайно?...

Нужен пример закрытого хеширования - C++
Для курсовой работы нужно написать программу. Тема курсовой - Закрытое хеширование. Что писать незнаю( Может подскажите?

Нужен пример написания DLL - C++
Смотрел информацию из msdn, делал все по пунктам, но как то не идет. Можете мне для примера кинуть исходный код простенькой библиотеки на...


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

Или воспользуйтесь поиском по форуму:
sergeu90
27 / 28 / 3
Регистрация: 17.10.2009
Сообщений: 739
09.10.2011, 12:33  [ТС]     Нужен пример цикла while #47
есть маленькая проблема надо без функции еще типа не проходили но я их знаю но преподу не понравится

Добавлено через 46 секунд
но я сделаю без функции ничего сложно спасибо
Yandex
Объявления
09.10.2011, 12:33     Нужен пример цикла while
Ответ Создать тему
Опции темы

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