Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.54/50: Рейтинг темы: голосов - 50, средняя оценка - 4.54
0 / 0 / 0
Регистрация: 07.01.2012
Сообщений: 32
1

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

07.01.2012, 21:00. Показов 10436. Ответов 16
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
вот еще лабораторная, как её делать ума не приложу, и одногруппники тоже сделать не могут. если кто сделает, пожалуйста добавьте алгоритмы, алгоритмы тоже нужны.

 Комментарий модератора 
Выкладывайте задания в теме. Не все из способных вам помочь захотят что-то там скачивать...


Лабораторная работа №3
Программирование циклов с неизвестным заранее числом повторений

Цель работы: освоение средств языка C++ для описания итерационных циклов и закрепление навыков использования их при программировании.

Лабораторное задание

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

Варианты заданий


№ вариантаФункцияРазложение в рядОбласть сходимости
7ch xhttps://www.cyberforum.ru/cgi-bin/latex.cgi?1+\frac{{x}^{2}}{2!}+\frac{{x}^{4}}{4!}+\frac{{x}^{6}}{6!}+... I x I< ∞
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.01.2012, 21:00
Ответы с готовыми решениями:

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

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

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

Программирование циклов с неизвестным заранее числом повторений2
Тема: &quot;Программирование циклов с неизвестным заранее числом повторений&quot; Цель работы: освоение...

16
594 / 532 / 76
Регистрация: 22.03.2011
Сообщений: 1,585
07.01.2012, 22:03 2
блок схему надо делать?
0
0 / 0 / 0
Регистрация: 07.01.2012
Сообщений: 32
07.01.2012, 23:16  [ТС] 3
конечно нужен

Добавлено через 36 минут
ок братиш, я все понял

1Составить схему программы и разработать программу для вычисления указанной функции разложением ее в ряд для заданных аргументов с точностью с использованием оператора цикла с предусловием.
2. Составить схему программы и разработать программу для вычисления указанной функции разложением ее в ряд для заданных аргументов с точностью с использованием оператора цикла с постусловием.

формула в документе, её не возможно здесь написать, уж извините.
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
12458 / 7482 / 1753
Регистрация: 25.07.2009
Сообщений: 13,762
07.01.2012, 23:31 4
Цитата Сообщение от student6605 Посмотреть сообщение
формула в документе, её не возможно здесь написать, уж извините.
https://www.cyberforum.ru/cgi-bin/latex.cgi?1+\frac{{x}^{2}}{2!}+\frac{{x}^{4}}{4!}+\frac{{x}^{6}}{6!}+...

Не по теме:

Редактор формул прямо над окном "Быстрый ответ"

0
0 / 0 / 0
Регистрация: 07.01.2012
Сообщений: 32
08.01.2012, 11:12  [ТС] 5
ну теперь все отлично, формула есть, задание есть, теперь кто бы это все помог решить!?

Добавлено через 11 часов 32 минуты
блин, спасайте друзья, завтра экзамен, а ни чего не готово у меня, решите кто нибудь
0
Заблокирован
Автор FAQ
08.01.2012, 12:41 6
Для решения задачи вывдем общую формулу для k-го элемента ряда
https://www.cyberforum.ru/cgi-bin/latex.cgi?ch(x) = \sum_{k = 0}^{\propto }\frac{{x}^{2*k}}{(2*k)!}
Далее найдём рекуррентное соотношение между смежными элементами ряда https://www.cyberforum.ru/cgi-bin/latex.cgi?\frac{{a}_{k + 1}}{{a}_{k}}

https://www.cyberforum.ru/cgi-bin/latex.cgi?{a}_{k}= \frac{{x}^{(2*k)}}{(2*k)!}
https://www.cyberforum.ru/cgi-bin/latex.cgi?{a}_{k + 1}= \frac{{x}^{(2*(k + 1))}}{(2*(k + 1))!} = \frac{{x}^{(2*k + 2)}}{(2*k + 2)!} = \frac{{x}^{(2*k + 2)}}{(2*k)!*(2*k + 1)*(2*k + 2)}

https://www.cyberforum.ru/cgi-bin/latex.cgi?\frac{{a}_{k + 1}}{{a}_{k}} = \frac{{x}^{(2*k + 2)}}{(2*k)!*(2*k + 1)*(2*k + 2)}*\frac{(2*k)!}{{x}^{(2*k)}} = \frac{{x}^{2}}{(2*k + 1)*(2*k + 2)}
Далее всё сводится к сравнению k-го элемента с величиной задаваемой точности e
0
Заблокирован
Автор FAQ
08.01.2012, 12:48 7
Ниже С++ реализация + проерка стандартной функцией cosh
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>
#include <iomanip>
#include <cstdlib>
#include <cmath>
using namespace std;
 
double Y(double x)
{
    return cosh(x);
}
 
double S(double x, double e)
{
    double ak = 1, sum = 0;
    long k = 0;
    while(e < fabs(ak))
    {
        sum += ak;
        ak  *= pow(x,2)/(1.0*(2*k + 1)*(2*k + 2));
        k++;
    }
    return sum;
}
 
int main()
{
    double e, x;
    cout<<"Enter x : ";cin>>x;
    cout<<"Enter e : ";cin>>e;
    cout<<"Y(x) = "<<Y(x)<<endl;
    cout<<"S(x) = "<<S(x,e)<<endl;
    system("pause");
    return 0;
}
Миниатюры
Программирование циклов с неизвестным заранее числом повторений  
1
Заблокирован
Автор FAQ
08.01.2012, 12:53 8
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
C++
1
while(e < fabs(ak))
- остановлюсь на этом. Как уже сказал выше
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
всё сводится к сравнению k-го элемента с величиной задаваемой точности e
- поясню есть бесконечный ряд, S[k+1] сумма будет отличатся от S[k] на один a[k + 1] элемент, т.е. условием окончания итерационного процесса служит условие
S[k + 1] - S[k] <= e : (S[k] + a[k + 1]) - S[k] <= e т.е a[k + 1] <= e иначе если условие не выполняется - продолжать накопление суммы, вот так и реализовал
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
C++
1
2
3
while(e < fabs(ak))
{
    sum += ak;
Успехов на экзамене!
1
0 / 0 / 0
Регистрация: 07.01.2012
Сообщений: 32
08.01.2012, 14:31  [ТС] 9
огромное спасибо, надеюсь что сдам экзамен, но вот только к этой программе нужна блок-схема, препод вообще монстр, говорит обязательно алгоритм нужен.
0
0 / 0 / 0
Регистрация: 07.01.2012
Сообщений: 32
08.01.2012, 15:48  [ТС] 10
мне одно только не понятно, в задании описывается что надо составить программу с использованием оператора цикла с постусловием и предусловием, а это какая??? программ две должно быть.
0
Полярный
476 / 448 / 158
Регистрация: 11.09.2011
Сообщений: 1,156
08.01.2012, 15:54 11
Цитата Сообщение от student6605 Посмотреть сообщение
а это какая???
Это с предусловием
С постусловием так будет:
C++
1
2
3
4
5
6
7
do
        {
                sum += ak;
                ak  *= pow(x,2)/(1.0*(2*k + 1)*(2*k + 2));
                k++;
        }while(e < fabs(ak));
        return sum;
Просто замените соответствующие строки.
1
Заблокирован
Автор FAQ
08.01.2012, 16:10 12
Цитата Сообщение от student6605 Посмотреть сообщение
но вот только к этой программе нужна блок-схема
-
student6605, если вы хотите понять алгоритм, а также получить навыки написания алгоритмов, блок-схему вы должны попробовать написать сами, я лишь могу подправить если в чём-то ошибётесь
Вот ссылки которые помогут
Основные элементы блок-схем
Блок-схема — Википедия
0
Полярный
476 / 448 / 158
Регистрация: 11.09.2011
Сообщений: 1,156
08.01.2012, 16:13 13
-=ЮрА=-, не могу полностью согласиться с вами. Есть программы, где нарисовать блок схему - как два байта переслать. Конечно следовало бы понимать как и что, но если уж срочно...
1
0 / 0 / 0
Регистрация: 07.01.2012
Сообщений: 32
08.01.2012, 16:16  [ТС] 14
вот вот, у меня сейчас проблему с некоторыми предметами, и разбираться в написании алгоритма некогда, но после сессию обязательно все выучу.
0
Заблокирован
Автор FAQ
08.01.2012, 16:47 15
Цитата Сообщение от dimcoder Посмотреть сообщение
Есть программы, где нарисовать блок схему - как два байта переслать.
- ну вот мой алгоритм как раз к такому случаю и относится. Матописание дал, рекуррентную формулу вывел, алгоритм привёл, неужели по готовым строкам сложно на месте вычислений нарисовать прямоугольники а на месте циклов ромбы???

Цитата Сообщение от student6605 Посмотреть сообщение
но после сессию обязательно все выучу.
- схема рисуется от руки 5 минут, неужели сложно хоть что то накидать - умение составлять блок-схемы вам самому на экзамене пригодится. Накидали хоть что то а я поправлю!

Не по теме:

PS:dimcoder, https://www.cyberforum.ru/announcement.php?a=3 пункт 3.9;)

0
Полярный
476 / 448 / 158
Регистрация: 11.09.2011
Сообщений: 1,156
08.01.2012, 17:12 16
Опять же прошу не обращать внимание на перечёркивания.

Не по теме:

-=ЮрА=-, вообще косяк... :D

Миниатюры
Программирование циклов с неизвестным заранее числом повторений  
2
Заблокирован
Автор FAQ
08.01.2012, 19:30 17
В моём алгоритме 2 функции, блок-схеммах обычно опускают детализацию cout и т.д. просто делают блок вывода и записывают в нём возвращаемые либо отображаемые на экране параметры. Такие мелочи как
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
system("pause");
тоже лучше опускать, сути алгоритма они не раскрывают, а вот места занимают, хотя маразматичные преподаватели у нас требовали иногда требовали "прорисовку" каждой строки. В последней блок-схеме не хватало места, поэтому там блок расчёта немножко не по норме(сразу три строки, от нас требовали 1-выражение - 1 строка, ну думаю это простительно)
Миниатюры
Программирование циклов с неизвестным заранее числом повторений   Программирование циклов с неизвестным заранее числом повторений   Программирование циклов с неизвестным заранее числом повторений  

2
08.01.2012, 19:30
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
08.01.2012, 19:30
Помогаю со студенческими работами здесь

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

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

Массив с неизвестным заранее количеством элементов
Задача: Создать программу, которая позволит ввести неограниченное количество значений и сохранит их...

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


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

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru