Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/35: Рейтинг темы: голосов - 35, средняя оценка - 4.63
welzor

Итерационные циклы

08.11.2012, 02:22. Показов 7267. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброй ночи
Помогите найти ошибки, скорее всего в функциях.
общее задание:
Кликните здесь для просмотра всего текста
ЛАБОРАТОРНАЯ РАБОТА № 3
РЕАЛИЗАЦИЯ ИТЕРАЦИОННЫХ ЦИКЛОВ СРЕДСТВАМИ ЯЗЫКА С++
Цель работы: Составление алгоритмов и написание многомодульных программ с итерационными циклами

Общие указания к заданиям лабораторной работы.

По номеру Вашего варианта выбрать задачу, решаемую в этой лабораторной работе, и выполнить для нее следующие задания.
Алгоритм решения индивидуальной задачи разделить на две функции:
- функцию, которая организует вычисления по формуле, определенной в задаче соответствующего задания.
Алгоритмы этих функций разработайте в трех вариантах:
• с использованием цикла do....while;
• с использованием цикла while;
• с использованием цикла for.
Для каждого варианта составить свою функцию и дать им разные имена. Функции оформить как функции со списком параметров, передаваемых по значению. Результаты вернуть через возвращаемое значение и через параметр по ссылке. Каждую функцию записать в свой файл одного проекта одного решения (solution). Откомпилировать каждый файл отдельно, устранив все ошибки на этом этапе проектирования.
- разработать функцию main(), алгоритм которой обеспечит ввод исходных данных с клавиатуры, вызов функции вычисления и вывод результатов на экран. Алгоритм этой функции должен содержать сообщение–меню, предлагающее пользователю вашей программы сделать выбор для решения Вашей программы одним из трех циклов языка С++. В меню предусмотрите выход из программы по требованию пользователя. В алгоритме main() разработайте организацию выбора нужного решения с помощью переключателя switch. Текст функции main() записать в свой файл и включить в проекта Вашего решения. Откомпилировать функцию в рамках проекта и устранить возможные ошибки компиляции.
- выполнить проект решения, добившись одинаковых результатов для трех вариантов реализации Вашей индивидуальной задачи на таких отладочных данных, которые позволяют судить о правильности ее решения.


Мое задание:

мэйн
Кликните здесь для просмотра всего текста
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
#include <iostream>
#include <conio.h>
 
using namespace std;
double summ_for(double, float&, float&);
double summ_while(double, float&, float&);
double summ_dowhile(double , float&, float&);
 
void main()
{
float E, n, summ, k;
do
{
cout«"Vvedite E "«endl;
cin»E;
}
while (1 >= E > 0);
do
{
cout«"Vvedite n "«endl;
cin»n;
}while (n >= 2);
int q;
cout«"Sposob resheniya?"«endl;
cout«"1 - For"«endl;
cout«"2 - Do while"«endl;
cout«"3 - While"«endl;
cin»q;
switch(q)
{
case 1:
k=summ_for(E,n,summ);
break;
case 2:
k=summ_dowhile(E,n,summ);
break;
case 3:
k=summ_while(E,n,summ);
break;
default:
return;
cout«"Otvet: "«k«endl;
}
}


функция
Кликните здесь для просмотра всего текста
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <math.h>
 
double summ_for(double eps, float &n, float &firstin)
{
 
double slag, slagnext, summ = 0, fact = 120;
slag = 1. / - 1 / 6.;
slagnext = ( 1. + 1 / 120.);
int i = 3;
for (; abs(slag - slagnext) < eps, i++;)
{
summ = summ * slag;
slag = slagnext;
fact = fact * (2 * i + 1);
if (i % 2)
slagnext = 1. + 1/fact;
else
slagnext = 1. - 1/fact;
}
i = n;
firstin = slag;
return summ;
}


Ввожу переменные, выбираю цикл, и дальше ничего...

Буду очень благодарен, заранее спасибо за любую помощь.
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
08.11.2012, 02:22
Ответы с готовыми решениями:

Итерационные циклы
Помогите решить задачку на итерацию в С++ Просто на завтра нужно сдать)) плс

итерационные циклы
void main() {setlocale(LC_ALL,&quot;Russian&quot;);const float eps=0.001f;float x; float y=x-1,y0,xn;int n=2; cout&lt;&lt;&quot;Введите x:&quot;; cin&gt;&gt;x; ...

итерационные процессы и циклы в Visual Studio
Написать функцию вычисления суммы ряда для заданного аргумента с точностью 4 знака после запятой. Результат выдать в виде таблицы,...

3
5500 / 4895 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
08.11.2012, 02:46
C++
1
while (1 >= E && E > 0);
И вот это зачем?
C++
1
i = n;
0
welzor
08.11.2012, 02:48
Цитата Сообщение от alsav22 Посмотреть сообщение
C++
1
while (1 >= E && E > 0);
Тоже самое
5500 / 4895 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
08.11.2012, 10:08
Цитата Сообщение от welzor Посмотреть сообщение
Тоже самое
Я не написл, что это решение проблемы. Просто ошибка. Код сами писали?

Добавлено через 6 минут
Условия нужно так задать:
C++
1
2
3
while (E > 1  || E < 0);
...
while (n < 2);
Тоже не решение проблемы, но по заданию.

Добавлено через 6 часов 38 минут
По моему, так:
Кликните здесь для просмотра всего текста
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 <cmath>
using namespace std;
 
double f(double e, int &n)
{
 int f;
 double an, an_;
 
 for (n = 1; ; n++)
 {
     if (n == 1) 
     {
        f = 6;
        an_ = 1 + (pow((-1.0), n) / f);
     }
     else
     {
         f = f * n * 2 * ((n * 2) + 1);
         an = 1 + (pow((-1.0), n) / f);
         if ((an - an_) < e) break;
         else an_ = an;
     }
 }
 return an;
}
 
 
int main() 
{ 
 double e = 0;
 double a = 0;
 int n;
 
 do
    cin >> e;
 while ( e < 0 || e > 1);
 
 a = f(e, n);
 
 cout << "a = " << a << endl << "n = " << n << endl; 
 
system("pause");
return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
08.11.2012, 10:08
Помогаю со студенческими работами здесь

Обработка введенного символа. Итерационные циклы
Ребят...кто сможет помогите с задачами....По условию нужно: 1) Считать два символа и выдавать на экран сообщение, код какого из них...

Обработка числовой информации. Итерационные алгоритмы. Циклы
цели лабы 1) Организация циклов различной структуры. 2) Организация вложенных циклов. 3) Выделение отдельных цифр данного числа. Их...

Итерационные циклы,Определение и вызов функций,Использование библиотечных функций stdio.h
Помогите решить задания: 1.Дано натуральное число n. Найти разность между первой цифрой этого числа и суммой всех остальных. ...

Итерационные алгоритмы
Ребят, почему, когда я ввожу первые контрольные значения, мне результат выдает правильный, а когда ввожу второе значение, результат не...

Итерационные алгоритмы
Помогите пожалуйста с заданием нужно решить на основе реккурентных отношений


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru