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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Сложение програм по работе с структурами http://www.cyberforum.ru/cpp-beginners/thread1172531.html
Задание: составить программу, которая организовывает ввод и вывод массива структур содержащий информацию о рабочих фирмы.
C++ Копирование массива в переменные структуры Необходимо что бы считывало со первого элемента массива buf в переменную t структуры NI, со второго элемента массива buf в переменную p структуры NI и последующие элементы в массив mas_p структуры NI. Вводится элементы должны через пробел. Затем вывести эти элементы #include <iostream> #include <conio.h> using namespace std; struct NI{ http://www.cyberforum.ru/cpp-beginners/thread1172526.html
C++ Сложение програм по обработке строк
Задание: Подсчитать непарное количество символов
В бинарном дереве определить число узлов у которых есть указатель только на одну ветвь. C++
Помогите плз. Нужен код на определение числа узлов у которых есть указатель только на одну ветвь. код дерева #include<iostream.h> struct node { int Key; int Count; node *Left; node *Right; };
C++ Матрица смежности графа - поиск в глубину http://www.cyberforum.ru/cpp-beginners/thread1172478.html
Здравствуйте дорогие форумчане. У меня тут небольшая ошибка. Никак не могу понять что к чему. Объясните пожалуйста. #include <iostream> #include <vector> #include <conio.h> using namespace std; const int n=5; int i, j; //матрица смежности графа int GM = {
C++ Ввести целое число и определить, верно ли, что в его записи есть две одинаковые цифры Задача на С++ (do..while) Нужно ввести целое число и определить, верно ли, что в его записи есть две одинаковые цифры? Буду премного благодарна за помощь ^^ подробнее

Показать сообщение отдельно
Lom1
1 / 1 / 0
Регистрация: 09.05.2014
Сообщений: 79

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

11.05.2014, 19:39. Просмотров 196. Ответов 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;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru