С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
Lom1
1 / 1 / 0
Регистрация: 09.05.2014
Сообщений: 79
#1

Метки не любят else? - C++

11.05.2014, 19:39. Просмотров 219. Ответов 4
Метки нет (Все метки)

Как избавиться от ошибки на 53-ей строчке?

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
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
#include <iostream>
#include <fstream>
using namespace std;
 
const int n=21;
 
class ORDER
{
private:
    char plat[n], pol[n];        //Ввод счета длиной 20 символов
    double summa;
public:
    void setDATA (char* plat_s, char* pol_s, double summa_r)
    {
        strcpy(plat,plat_s);
        strcpy(pol, pol_s);
        summa = summa_r;
    }
 
    void getDATA()               //Ввод данных
    {
        back:
        cout<<"Расчетный счет плательщика: ";
        cin>>plat;
        int count_plat = strlen(plat);
        while ((count_plat>20) || (count_plat<20))
        {
            cout << "Введите корректный расчетный счет плательщика (20 цифр): ";
            cin>>plat;
            count_plat=strlen(plat);
        }
        cout<<"Расчетный счет получателя:  ";
        cin>>pol;
        int count_pol = strlen(pol);
        while ((count_pol>20) || (count_pol<20))
        {
            cout << "Введите корректный расчетный счет получателя (20 цифр): ";
            cin>>pol;
            count_pol = strlen(pol);
        }
        while (strcmp(plat, pol)==0)
        {
            for (int i=1;i<=3;i++)
            {
                int yes_or_no;
                cout <<endl<<"\a"<< "Операция не может быть продолжена из-за совпадения расчетных счетов плательщика и получателя!"
                <<endl<<"Просим вас начать операцию заново."<<endl;
                cout <<"Вы согласны?!"<<endl<<"1. Да"<<endl<<"2. Нет"<<endl<<"Ваша цифра: ";
                cin >> yes_or_no;
                if (yes_or_no==1)
                    cout<<endl<<endl<<"# "<<i<<"                        |                    |"<<endl;
                    goto back;
                else if (yes_or_no=2)
                    exit (0);
            }
        }
        cout<<"Перечисляемая сумма в руб. (макс. 500.000): ";
        cin>>summa;
        while ((summa>500000) || (summa<0))
        {
            cout<<"Введите корректную перечисляемую сумму в руб. (макс. 500 000 руб.): ";
            cin>>summa;
        }
        cout << endl;
    }
 
    void WriteDATA(ofstream& fout)          //Запись данных
    {
        fout<<endl<<plat<<endl<<pol<<endl<<summa<<endl<<endl;
    }
 
    void ReadDATA(ifstream& fin)            //Чтение данных и вывод их на экран
    {
        fin>>plat;
        fin>>pol;
        fin>>summa;
        cout<<endl<<"Плательщик - "<<plat<<endl
        <<"Получатель - "<<pol<<endl<<"Сумма - "<<summa<<" руб."<<endl<<endl;
   }
    friend void sort(ORDER* Spisok)         //Сортировка по расчетным счетам плательщиков (исправить)
    {
        ORDER tmp;
        for (int i=1;i<=3;i++)
        for (int j=1;j<=3;j++)
        {
            if (i!=j)
            if (strcmp(&Spisok[i].plat[0], &Spisok[j].plat[0]))
            {
                tmp=Spisok[j];
                Spisok[j]=Spisok[i];
                Spisok[i]=tmp;
            }
        }
        cout<<"Сортировка по расчетным счетам плательщиков.";
        for (int i=1;i<=3;i++)
        cout<<endl<<"# "<<i<<endl<<"Плательщик - "<<Spisok[i].plat<<endl
        <<"Получатель - "<<Spisok[i].pol<<endl<<"Сумма - "<<Spisok[i].summa<<" руб."<<endl;
        cout << "--------------------------------------------------------------------------------"<<endl;
    }
 
    friend void search(ORDER* Spisok)       //Поиск расчетного счета и вывод на экран информации о сумме, cнятой с расчетного счета плательщика
    {
        bool r=false;
        double snyataya_summa=0;
        char nomer_plat[21];
        cout<<"Введите номер расчетного счета (плательщика): ";
        cin>>nomer_plat;
        for (int i=1;i<=3;i++)
        if (strcmp(&Spisok[i].plat[0], &nomer_plat[0]) == 0 )
        {
            snyataya_summa+=Spisok[i].summa;
            r=true;
        }
        if (r)
        cout<<"С расчетного счета "<<nomer_plat<<" снято "<<snyataya_summa<<" руб."<<endl;       
        else
        cout<<"Такого расчетного счета нет!"<<endl;
    }
};
 
 int main()
{
    setlocale (LC_ALL, "rus");
    char plat[n], pol[n];
    double summa=0;
 
    ORDER Spisok[4];
    for (int i=1;i<=3;i++)
    {
        Spisok[i].setDATA (plat, pol, summa);
        cout<<"# "<<i<<"                        |                    |"<<endl;
        Spisok[i].getDATA();
    }
 
 
    ofstream fout("input.txt");
    if(!fout)
        return 0;
    for (int i=1;i<=3;i++)
    { 
        fout<<i;
        Spisok[i].WriteDATA(fout);
    }
    fout.close();
 
 
    ifstream fin("input.txt");
    cout <<"--------------------------------------------------------------------------------"<<endl<<"Чтение данных из файла."<<endl;
    if(!fin)
        return 0;
    for (int i=1;i<=3;i++)
    { 
        fin >> i;
        cout<<"# "<<i;
        Spisok[i].ReadDATA(fin);
    }
    cout <<"--------------------------------------------------------------------------------"<<endl;
    fin.close();
    sort(Spisok);    
    search(Spisok);
    system("PAUSE");
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.05.2014, 19:39
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Метки не любят else? (C++):

Метки - C++
Есть ли команда в С++ наподобие команды в паскале label 1; 1:, т.е. метки. Если можно пример. Спасибо всем большое!

Метки - C++
Есть такой вопрос, как курсор к коде переставить в то место куда мне надо (в паскале Label) в с++ есть что то похожое?? Пример: если...

free и метки - C++
Здравствуйте, господа. Никак не могу найти ответы на след. вопросы: 1). Для того, чтобы освободить выделенную ранее память,...

Можно ли в C++ ставить метки-break? - C++
в с++ нельзя ставить метки-break?

Метки в макросах в ассемблерной вставке - C++
В C++ написан макрос с ассемблерной вставкой, который содержит в себе метку &quot;doit&quot; и команду перехода на неё: #define MYMACRO(x, y, z)...

Кнопки, метки и окна редактирования - C++
Пожалуйста помогите))) или хотя бы объясните))) Написать программу, которая вычисляет (вместе с рамкой) Дана: длина ребра куба a. ...

4
nmcf
5692 / 5003 / 1708
Регистрация: 14.04.2014
Сообщений: 20,429
11.05.2014, 19:40 #2
Ты фигурные скобки-то куда дел у if? Больше одной операции, надо скобки.
0
Lom1
1 / 1 / 0
Регистрация: 09.05.2014
Сообщений: 79
11.05.2014, 19:42  [ТС] #3
nmcf, Сейчас попробую

Добавлено через 1 минуту
nmcf, Спасибо, работает.
0
zss
Модератор
Эксперт С++
6580 / 6142 / 2024
Регистрация: 18.12.2011
Сообщений: 16,010
Завершенные тесты: 1
11.05.2014, 21:24 #4
Цитата Сообщение от Lom1 Посмотреть сообщение
else if (yes_or_no=2)
Надо 2 знака равно
0
Lom1
1 / 1 / 0
Регистрация: 09.05.2014
Сообщений: 79
12.05.2014, 10:01  [ТС] #5
zss, Это я исправил потом.
0
12.05.2014, 10:01
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.05.2014, 10:01
Привет! Вот еще темы с ответами:

Метки и вывод наименьшего угла треугольника - C++
Доброго времени суток! Есть задание: Треугольник задается координатами своих вершин. Среди некоторого количества треугольников указать...

Как по условию выйти из метки case - C++
Подскажите такое дело Например есть автомат MODE= MODE_2; for(;;) { switch MODE { case MODE_1: func1; ...

Что любят поисковики? - SEO
Какие теги или может что то еще любят поисковики?

Флешки не любят много файлов ? - Flash-память
Всем привет. занимаюсь перебивкой виндовсов, и много прог кидаю на флешку, Флешка уже четвертая, как на них стает многовато разных файлов,...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

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