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

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

Восстановить пароль Регистрация
 
Aloe1337
0 / 0 / 0
Регистрация: 02.04.2014
Сообщений: 10
03.06.2014, 17:47     Повторение всей программы заного через да\нет #1
Хочу сделать повтор программы через да\нет.
Но в итоге выдает бесконечный вопрос об повторе.
немного сократил сам код (убрал пару других подпрограмм).
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
#include "stdafx.h"
#include "stdio.h"
#include "math.h"
#include "locale.h"
#include "iostream"
 
using namespace std;
 
int task1()
{
int i,n;
float a,e,b,h,x,I0,I1,eps;
a=0;
b=log(2.0);
printf("Введите шаг n=");
scanf("%i",&n);
h=(b-a)/n;
printf("Введите число эпсилон=");
scanf("%f",&eps);
x=a+h;
I0=(sqrt(exp(x)-1));
for (i=2;i<=n;i++)
{
x=x+h;
I0=I0+(sqrt(exp(x)-1));
}
I0=I0*h;
I1=0;
while (fabs(I0-I1)>=eps)
{
I1=I0;
n=2*n;
h=(b-a)/n;
x=a+h;
I0=(sqrt(exp(x)-1));
for (i=2;i<=n;i++)
{
x=x+h;
I0=I0+(sqrt(exp(x)-1));
}
I0=I0*h;
        }
printf("Значение по методу правых прямоугольников=%f\n",I0);
return 1;
 
}
int task2()
{
    int i,n;
float a,b,h,x,I0,I1,eps;
a=0;
b=log(2.0);
printf("Введите шаг n=");
scanf("%i",&n);
h=(b-a)/n;
printf("Введите число эпсилон=");
scanf("%f",&eps);
x=a+h/2;
I0=(sqrt(exp(x)-1));
for (i=1;i<=n-1;i++)
{
x=x+h;
I0=I0+(sqrt(exp(x)-1));
}
I0=I0*h;
I1=0;
while (fabs(I0-I1)>=eps)
{
I1=I0;
n=2*n;
h=(b-a)/n;
x=a+h/2;
I0=(sqrt(exp(x)-1));
for (i=1;i<=n-1;i++)
{
x=x+h;
I0=I0+(sqrt(exp(x)-1));
}
I0=I0*h;
}
printf("Значение по методу центральных прямоугольников=%f\n",I0);
return 1;
 
}
char ans;
int main(int argc, char * argv [])
 
{
    setlocale(LC_CTYPE, "Rus");
    
    int z;
do{     
printf("");
    scanf("%d",&z);
 
if(z==1) task1();
if(z==2) task2();
}
      cout << "Continue: Y / N ";
      cin >> ans;
 }
while ( toupper( ans ) == 'Y' );
Добавлено через 16 часов 52 минуты
Есть ли смысл прикреплять вопрос об повторе в конце каждой подпрограммы? Тогда как\где лучше начать цикл с повтором?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.06.2014, 17:47     Повторение всей программы заного через да\нет
Посмотрите здесь:

Повторение цикла программы C++
C++ Проверка на повторение
Компоновка всей программы в один файл C++
C++ Повторение циклом while
C++ Написать программу, которая подсчитывает СУММУ ЦИФР натурального числа. организовать повторение всей программы.
C++ не корректная работа меню или всей программы
C++ Вывод всех ответов(после всей программы), которые выбирал пользователь
Поочередный вывод на экран без задержки всей программы C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ExModE
2 / 2 / 2
Регистрация: 04.03.2011
Сообщений: 27
03.06.2014, 17:49     Повторение всей программы заного через да\нет #2
C++
1
2
3
4
5
6
7
8
9
10
do{     
printf("");
    scanf("%d",&z);
 
if(z==1) task1();
if(z==2) task2();
      cout << "Continue: Y / N ";
      cin >> ans;
 }
while ( toupper( ans ) == 'Y' );
Опечатка наверное
Aloe1337
0 / 0 / 0
Регистрация: 02.04.2014
Сообщений: 10
04.06.2014, 03:33  [ТС]     Повторение всей программы заного через да\нет #3
И где именно? У меня уже мозги кипят, где напортачил не пойму. Кажись даже нынешний код вообще не работает.
Yandex
Объявления
04.06.2014, 03:33     Повторение всей программы заного через да\нет
Ответ Создать тему
Опции темы

Текущее время: 10:36. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru