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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 15, средняя оценка - 4.73
qwerty321
0 / 0 / 0
Регистрация: 25.10.2012
Сообщений: 12
#1

Программирование циклов с неизвестным заранее числом повторений - C++

25.10.2012, 19:38. Просмотров 2022. Ответов 12
Метки нет (Все метки)

Лабораторная работа №3
Программирование циклов с неизвестным заранее числом повторений
Цель работы: освоение средств языка C++ для описания итерационных циклов и закрепление навыков использования их при программировании.
Пример программы с использованием оператора цикла с предусловием:
Схема программы к данному примеру:

Пример программы с использованием оператора цикла с постусловием:
Схема программы к данному примеру:

Лабораторное задание
1. Выбрать задание, соответствующее номеру варианта.
2. Составить схему программы и разработать программу для вычисления указанной функции разложением ее в ряд для заданных аргументов с точностью с использованием оператора цикла с предусловием.
3. Составить схему программы и разработать программу для вычисления указанной функции разложением ее в ряд для заданных аргументов с точностью с использованием оператора цикла с постусловием.
5. Выполнить программы на ЭВМ.
6. Оформить отчет.


Помогите с программой, ума не приложу что с делать.
0
Миниатюры
Программирование циклов с неизвестным заранее числом повторений  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.10.2012, 19:38
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Программирование циклов с неизвестным заранее числом повторений (C++):

Программирование циклов с неизвестным заранее числом повторений - C++
вот еще лабораторная, как её делать ума не приложу, и одногруппники тоже сделать не могут. если кто сделает, пожалуйста добавьте алгоритмы,...

Программирование циклов с неизвестным заранее числом повторений - C++
Лабораторная работа №3 Программирование циклов с неизвестным заранее числом повторений Цель работы: освоение средств языка C++ для...

Циклы с неизвестным числом повторений - C++
Помогите с задачкой пожалуйста y=1+(1+x)+\frac{(1+x{)}^{2}}{2!}+\frac{(1+x{)}^{3}}{3!}+...

Операторы условия, циклы с известным и неизвестным числом повторений - C++
чтобы не париться с 3 темами закину 3 лабы в 1 :D порядок: задание - мой вариант(исправить ошибки) 1. С клавиатуры вводятся 4 целых...

Массив с неизвестным заранее количеством элементов - C++
Задача: Создать программу, которая позволит ввести неограниченное количество значений и сохранит их в массиве. #include <iostream> ...

Как написать программу с неизвестным числом вводимым с клавиатуры - C++
С клавиатуры вводится ряд чисел,их количество не известно.Требуется найти среднее значение всех чисел которые больше 0 и деляться на 4.Ввод...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
qwerty321
0 / 0 / 0
Регистрация: 25.10.2012
Сообщений: 12
11.12.2012, 22:46  [ТС] #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
27
28
29
30
31
32
33
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
void main()
{
    double  s, n, m, b, a, c, nm;
cout << "Vvedi a ";
cin >> a;
 
cout << "Vvedi b ";
cin >> b;
if  ((b/a^3>1)||( b/a^3<-1)) 
{
 cout<<"net sxodimosti";
}
 
cout << "Vvedi n(max)>0";
cin >> nm;
n = 1;
m = 1+(1/3)*(b/a^3)^n;
while(n>nm)
{
  n++
   m = m+s*(1/3)*(b/a^3)^n;
}
m*a = c
cout << " " << c << endl;
 
getch();
 
return 0;
 
}
и что нужно поменять что бы написать ее с постусловием?
0
MrGluck
Модератор
Эксперт CЭксперт С++
7239 / 4407 / 642
Регистрация: 29.11.2010
Сообщений: 11,927
11.12.2012, 22:49 #3
цикл с постусловием - do { } while (условие);
a^3 != a*a*a. Для возведения a в 3 степень используйте pow(a, 3);
0
qwerty321
0 / 0 / 0
Регистрация: 25.10.2012
Сообщений: 12
12.12.2012, 23:26  [ТС] #4
ошибки так же остаются

Добавлено через 4 часа 12 минут
up...
0
faLek
99 / 100 / 7
Регистрация: 06.03.2012
Сообщений: 478
13.12.2012, 00:15 #5
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
#include "stdafx.h"
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <iostream>
 
using namespace std;
 
void main()
{
    double  s, n, m, b, a, c, nm;
cout << "Vvedi a ";
cin >> a;
 
cout << "Vvedi b ";
cin >> b;
 
if  ((int (b/a)^3>1)||(int (b/a)^3<-1)) 
{
 cout<<"net sxodimosti";
}
 
cout << "Vvedi n(max)>0";
cin >> nm;
n = 1;
m = 1+(1/3)*(int (b/a)^3)^n;
while(n>nm)
{
   m = int (m+s)*(1/3)*(int (b/a)^3)^int (n);
   n++;
}
 
c = m*a;
cout << " " << c << endl;
 
getch();
 
}
что успел изменить - изменил,после футбола посмотрю дальше,очень много ошибок,проще всё переписать)))
0
activnaya
255 / 45 / 2
Регистрация: 24.11.2012
Сообщений: 466
13.12.2012, 00:20 #6
Цитата Сообщение от MrGluck Посмотреть сообщение
a^3 != a*a*a
??? КО
0
Raper58
0 / 0 / 0
Регистрация: 02.11.2012
Сообщений: 31
13.12.2012, 00:56 #7
вроде правильно.
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
   #include <iostream.h>
#include <stdlib.h>
#include <conio.h>
#include <math.h>
void main()
{
    double  s, n, m, b, a, c, x, y, nm;
cout <<"Vvedi a ";
cin >> a;
cout << "Vvedi b ";
cin >> b;
if ((b/(pow(a,3))>1)||(b/(pow(a,3))<-1))
{
 cout<<"net sxodimosti";
}
 
cout << "Vvedi n(max)>0 ";
cin >> nm;
n = 1;
x = b/(pow(a,3));
m = 1+(1/3)*(pow(x,n));
while(nm>n)
{
  n++ ;
  s+=3;
    m=(m+(s*1/s*3))*(pow(x,n));
}
c=m*a;
cout <<"c= "<<c;
 
getch();
 
}
Добавлено через 16 минут
с постусловием. проверяй.
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
   #include <iostream.h>
#include <stdlib.h>
#include <conio.h>
#include <math.h>
void main()
{
    double  s, n, m, b, a, c, x, y, nm;
cout <<"Vvedi a ";
cin >> a;
cout << "Vvedi b ";
cin >> b;
if ((b/(pow(a,3))>1)||(b/(pow(a,3))<-1))
{
 cout<<"net sxodimosti";
}
 
cout << "Vvedi n(max)>0 ";
cin >> nm;
n = 0;
x = b/(pow(a,3));
m = 1+(1/3)*(pow(x,n));
do
{
  n++ ;
  s+=3;
    m=(m+(s*2/s*3))*(pow(x,n));
}
  while(nm>n);
c=m*a;
cout <<"c= "<<c;
 
getch();
 
}
0
qwerty321
0 / 0 / 0
Регистрация: 25.10.2012
Сообщений: 12
13.12.2012, 16:59  [ТС] #8
ошибки все равно остаются, причем глупые, но я дурак не могу исправить, только учусь
0
MrGluck
Модератор
Эксперт CЭксперт С++
7239 / 4407 / 642
Регистрация: 29.11.2010
Сообщений: 11,927
13.12.2012, 17:09 #9
qwerty321, я уже писал вам про void main.

s = 0.0, вы работает с неинициализированной переменной, прибавляете значения к мусору.
0
student888
0 / 0 / 0
Регистрация: 07.12.2012
Сообщений: 21
13.12.2012, 22:25 #10
вот переделал более простым способом, но тут теперь еще в 19 строке вот такая ошибка (statement missing), как исправить не знаю. подскажите.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream.h>
#include <conio.h>
#include <math.h>
void main()
{
double  a, b, eps;
clrscr ();
cout<<"Vvedite znachenie argumenta i tochnosti \n";
cin>>a>>b>>eps;
double x=b/(pow(a,3)), y=x/3, F=a*(1+y);
int n=1;
while (fabs(y)>=eps)
{
y*=-x*n/(n+3);
F+=a*y;
n+=3;
}
cout<<"Priblighennoe znachenie="<<F;
cout<<"Tochnoe znachenie="sprt(pow(a,3)+b));
}
Добавлено через 15 минут
все сделал.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream.h>
#include <conio.h>
#include <math.h>
void main()
{
double  a, b, eps, k=0;
clrscr ();
cout<<"Vvedite znachenie argumenta i tochnosti \n";
cin>>a>>b>>eps;
double x=b/(pow(a,3)), y=x/3, F=a*(1+y);
int n=1;
while (fabs(y)>=eps)
{
y*=-x*n/(n+3);
F+=a*y;
n+=3;
k=pow(a,3)+b;
}
cout<<"Priblighennoe znachenie="<<F;
cout<<"Tochnoe znachenie="<<pow(k,1/3);
}
Добавлено через 21 минуту
блин, она считает неправильно, что то не так((

Добавлено через 6 минут
подскажите где исправить нужно..

Добавлено через 46 минут
подскажите, программа неправильно считает точное значение
0
student888
0 / 0 / 0
Регистрация: 07.12.2012
Сообщений: 21
15.12.2012, 22:32 #11
ребятушки, подскажите где ошибка
0
MrGluck
Модератор
Эксперт CЭксперт С++
7239 / 4407 / 642
Регистрация: 29.11.2010
Сообщений: 11,927
15.12.2012, 22:37 #12
Пробуй так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream.h>
#include <conio.h>
#include <math.h>
void main()
{
double  a, b, eps, k=0.0;
clrscr ();
cout<<"Vvedite znachenie argumenta i tochnosti \n";
cin>>a>>b>>eps;
double x=(double)b/(pow(a,3));
double y=x/3.0, F=a*(1.0+y);
int n=1;
while (fabs(y)>=eps)
{
y*=-x*n/(n+3.0);
F+=a*y;
n+=3.0;
k=pow(a,3)+(double)b;
}
cout<<"Priblighennoe znachenie="<<F;
cout<<"Tochnoe znachenie="<<pow(k,1.0/3);
}
1
student888
0 / 0 / 0
Регистрация: 07.12.2012
Сообщений: 21
16.12.2012, 00:23 #13
огромное спасибо!
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.12.2012, 00:23
Привет! Вот еще темы с ответами:

Ошибка при написании функции с неизвестным числом параметров - C++
Ругается на va_start не могу понять за что) #include&lt;iostream&gt; #include&lt;cstring&gt; using namespace std; char*foo(int n, ...); ...

Вводится массив строк текста с неизвестным заранее количеством строк - C++
1)Вводится массив строк текста с неизвестным заранее количеством строк.Ввод текста заканчивается, если введенная строка текста будет равна...

Циклы с заданным числом повторений - C++
определить,является ли заданное натуральное число совершенным,т.е равным сумме всех (положительных) делителей ,кроме самого этого числа (...

Циклы с известным числом повторений - C++
Требуется написать одну программку. Условие: Даны ДЕЙСТВИТЕЛЬНОЕ число a, НАТУРАЛЬНОЕ n. Вычислить: a(a-n)(a-2n)...(a-n²). Заранее...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
16.12.2012, 00:23
Ответ Создать тему
Опции темы

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