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

Вычисление суммы и разности денежных величин - C++

Восстановить пароль Регистрация
 
parkito
 Аватар для parkito
11 / 11 / 2
Регистрация: 22.03.2010
Сообщений: 685
24.06.2011, 11:26     Вычисление суммы и разности денежных величин #1
Создаю программу для вычисления суммы и разности денежных велечин. Вроде делаю все правильно, но заместо того чтобы программа вышла из условного оператора
C++
1
switch
и перешла к моей конструкции
C++
1
2
cout<<"Всего "<<a<<" фунтов "<<b<<" шиллингов "<<c<<" пенсо"<<endl;
cout<<"Посчитать еще раз ? y/n --> "; ...
она у меня заново выполняет цикл. Я подозреваю, что проблема кроется в break-е (по - моему это он выходит не только из условного оператора, но так же и из последовательных моих команд и стремится к началу цикла). Как мне это исправить ?

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
#include<iostream>
using namespace std;
int main ()
{setlocale(LC_ALL,"Rus");
int a,b,c,d,e,f,g,h;
char z,j;
bool y=true;
while(y==true)
{cout<<"Введите первую сумму "<<endl;
cout<<"Введите количество фунтов --> ";
cin>>a;
cout<<"Введите количество шиллингов --> ";
cin>>b;
cout<<"Введите количество пенсо --> ";
cin>>c;
cout<<"Введите знак действия с суммами (+ или -) -->  ";
cin>>j;
cout<<"Введите вторую сумму "<<endl;
cout<<"Введите количество фунтов --> ";
cin>>d;
cout<<"Введите количество шиллингов --> ";
cin>>e;
cout<<"Введите количество пенсо --> ";
cin>>f;
switch (j)
{case '+':
a=a+d;
b=b+e;
c=c+f;
if(c>=12)
    {g=c%12;
h=(c-g)/12;
b=h+b;
c=g;}
if(c>12)
    {g=b%12;
h=(b-g)/12;
c=h+c;}
break;
{case '-':
a=a-d;
b=b-e;
c=c-f;
if(c<f)
    {c=c+12;
b=b-1; 
c=c-f;}
if(c>=12)
    {c=c-f;}
    if(b<e)
    {b=b+20;
a=a-1; 
b=b-e;}
if(b>=12)
    {b=b-e;}
break;
default:
        cout<<"Программа аварийно завершает работу так как вы ввели непраильный знак. ";
        cin.get();
        cin.get();
        exit(0);
    }
cout<<"Всего "<<a<<" фунтов "<<b<<" шиллингов "<<c<<" пенсо"<<endl;
cout<<"Посчитать еще раз ? y/n --> ";
    cin>>z;
    switch (z)
    {case 'y':
    y=true;
    break;
    case 'n':
        y=false;
        break;
    default:
        cout<<"Программа аварийно завершает работу так как вы ввели непраильный знак. ";
        cin.get();
        cin.get();
        exit(0);
    }
cout<<"Всего "<<a<<" фунтов "<<b<<" шиллингов "<<c<<" пенсо"<<endl;
cout<<"Посчитать еще раз ? y/n --> ";
    cin>>z;
    switch (z)
    {case 'y':
    y=true;
    break;
    case 'n':
        y=false;
        break;
    default:
        cout<<"Программа аварийно завершает работу так как вы ввели непраильный знак. ";
        cin.get();
        cin.get();
        exit(0);
        
    
}
}
}
 
return 0;
}
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.06.2011, 11:26     Вычисление суммы и разности денежных величин
Посмотрите здесь:

Вычисление разности двумерных массивов. C++
C++ Вычисление разности между двумя датами (Turbo C)
Вычисление квадратов суммы и разности двух чисел C++
C++ Класс "Матрица" для нахождения суммы, разности, умножения матриц и суммы элементов матрицы.
C++ Вычисление суммы четных и суммы нечетных чисел в одномерном массиве
Простейшая программа, вывод на экран суммы, разности двух чисел. Ошибка C++
C++ Определить функции нахождения суммы и разности векторов

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
mimicria
return (true);
 Аватар для mimicria
1956 / 1093 / 91
Регистрация: 19.04.2011
Сообщений: 2,344
24.06.2011, 11:45     Вычисление суммы и разности денежных величин #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Лишняя скобка тут
C++
1
2
break;
{case '-':
и в конце, соответственно.
А всё потому что нет нормального форматирования кода

Добавлено через 4 минуты
А в конце кода у вас двойное повторение...
parkito
 Аватар для parkito
11 / 11 / 2
Регистрация: 22.03.2010
Сообщений: 685
24.06.2011, 11:47  [ТС]     Вычисление суммы и разности денежных величин #3
mimicria , Спасибо огромное. Знаю что код безобразно выглядит.. но так привык. Буду стараться отвыкать от этой вредной привычки. Еще раз спасибо !
Yandex
Объявления
24.06.2011, 11:47     Вычисление суммы и разности денежных величин
Ответ Создать тему
Опции темы

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