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

Использование класса ORDER - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Определить, является ли заданная квадратная матрица симметричной относительно главной диагонали http://www.cyberforum.ru/cpp-beginners/thread1170889.html
Задание: Определить, является ли заданная квадратная матрица А(5,5) симметричной относительно главной диагонали. Написать два варианта программы: без применения указателей и с указателями. Первый вариант написала: #include <iostream> #include <conio.h> using namespace std; int main() {
C++ Вычисление погрешности интегральных методов Симпсона и Гаусса Здраствуйте. Нужен пример реализации вычисления погрешности методов Симпсона и Гаусса Пробовал писать на Симпсона но выводит какойто бред, вот функция float x = A, det; float *Y, *det1, *det2, *det3, *det4; int i, n; n = (B-A)/h; det1 = new float; det2 = new float; det3 = new float; det4 = new float; http://www.cyberforum.ru/cpp-beginners/thread1170886.html
Управление змейкой C++
#include <conio.h> #include <stdio.h> #include <stdlib.h> #include <time.h> #include <graphics.h> #define N 30 #define M 20 #define Scale 25//размер квадратика
C++ Вывести 2е по счету слово введеное в строку
ввести ФИО (окончание точкой) вывести на экран только Имя в столбик // Lab12Y.cpp: определяет точку входа для консольного приложения. // #include "stdafx.h" #include <stdio.h> #include <conio.h> #include <string>
C++ Что возвращает функция после сравнения? http://www.cyberforum.ru/cpp-beginners/thread1170861.html
Здравствуйте, необходимо реализовать код Хаффмана используя такие контейнеры как list, map, vector. код есть, но т.к. с этими контейнерами незнаком не могу разобрать некоторые моменты, помогите разобрать как работают указанные куски кода (строка 24 что возвращает?, и строка 35 почему используется в качестве параметра структура) ... class Node { public: int a;
C++ Dev++ ошибка с компиляцией файла ресурса При попытке компилировать файл Resources.rc возникает ошибка C:\Dev-Cpp\Launcher\Makefile.win No rule to make target `Resources.o'. Stop. Скорее всего, дело не в коде. Но я, возможно, ошибаюсь. Что мне делать? подробнее

Показать сообщение отдельно
Lom1
1 / 1 / 0
Регистрация: 09.05.2014
Сообщений: 79
11.05.2014, 13:09  [ТС]     Использование класса ORDER
zss, Тем, что он выводит сразу данные, нет ввода, записи.

Добавлено через 1 минуту
zss, А, и еще вывода чтения.

Добавлено через 17 часов 45 минут
zss, Спасибо, я добился все-таки.
Но теперь проблема с тем, что когда я ввожу в поле плательщика или получателя 21 символ то у меня происходит при вводе слитность плательщика и получателя, хотелось бы с циклом while сделать так чтобы допустим пользователь вводит 21 цифру и ему выдает сообщение ввести корректный номер лицевого счета, а когда 20 проходит цикл.

Вот код:
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
#include <iostream>
#include <fstream>
#include <string>
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()               //Ввод данных
    {
        cout<<"Расчетный счет плательщика: ";
        cin>>plat;
        int count_plat = strlen(plat);
        while (count_plat>=21)
        {
            cout << "Введите корректный расчетный счет плательщика (20 цифр): ";
            cin>>plat;
        }
        cout<<"Расчетный счет получателя: ";
        cin>>pol;
        int count_pol = strlen(pol);
        while (count_pol>=21)
        {
            cout << "Введите корректный расчетный счет получателя (20 цифр): ";
            cin>>pol;
        }
        cout<<"Перечисляемая сумма в руб.: ";
        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 << "--------------------------------------------------------------------------------";
    }
 
    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;
    if(!fin)
        return 0;
    for (int i=1;i<=3;i++)
    { 
        fin >> i;
        cout<<"# "<<i;
        Spisok[i].ReadDATA(fin);
    }
    cout <<"--------------------------------------------------------------------------------";
    fin.close();
    sort(Spisok);    
    search(Spisok);
    system("PAUSE");
    return 0;
}
 
Текущее время: 16:36. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru