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

Проблема с класами - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ заполнение класса в цикле http://www.cyberforum.ru/cpp-beginners/thread353508.html
цикл: int _tmain(int argc, _TCHAR* argv) { int d,m,y; ZapBook* z=new ZapBook; int length=0; char flag='y'; while(flag=='y') { cout<<"Vedite Familiyu"<<"\n";
C++ using namespace std; Здравствуйте. Я заметил, что многие программисты стараются избегать этой строчки в своих программах. С чем это связанно? И еще вопрос: почему ввод/вывод в функциях - это плохо? http://www.cyberforum.ru/cpp-beginners/thread353503.html
Циклы C++
Помоему так A<C<B C<A<B B<C<A C<B<A A<B<C B<A<C Найти max и min значения а,b,c
Md5 и Sha1. C++
Помогите пожалуйста! Объясните, как md5 и sha1 использовать? какой-нибудь коротенький кодик с ними покажите? вот подключила я мд5 к проекту, как мне в него послать строку символов? Заранее спасибо и прошу прощения за глупость и недалекость...:cry:
C++ помощь в литературе http://www.cyberforum.ru/cpp-beginners/thread353475.html
Здравствуйте, мне нужна помощь с литературой по Visual c++. Я физик и мне visual c++ нужен для численного решения уравнений и моделирования. До этого работал к сожалению только в borland 3.1. Я знаю что в интернете полно литературы по visual, но может быть вы посоветуете что нибудь конкретное. И еще хотелось бы узнать с какой версии лучше начать с 2003 или сразу с 2010?
C++ Лабороторная работа Нужно мне помоч сделать одно задание,а о не получается! --- Вото оно: Создайте динамический массив элементов типа char с помощью операции new. Размер массива введите с клавиатуры. Заполните массив случайными числами от 65 до 122, выведите его на экран и замените элементы от 91 до 96 на 46. Освободите память. подробнее

Показать сообщение отдельно
KING1994
-68 / 6 / 0
Регистрация: 18.07.2011
Сообщений: 77
20.09.2011, 19:25  [ТС]     Проблема с класами
Я решил ету задачу.Может кому будет надо вот код:
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
#include "stdafx.h"
#include<iostream>
#include<conio.h>
#include<string>
#include<iomanip>
using namespace std;int i=1,j=0;
class CPupil
{
public:
    string m_name,m_surname,m_school,m_clas;int m_mark;string m_viv[100][4];int m_vivv[100];
public:
    CPupil():m_name(""),m_mark(0)
    {}
    CPupil(string name,char mark):m_mark(mark)
    {
        m_name.assign(name,0,name.length());
    }
    CPupil(CPupil &o):m_mark(o.m_mark)
    {
        m_name.assign(o.m_name,0,o.m_name.length());
    }
    void set(void)
    {
        cout<<"Enter School\n";
        cin>>m_school;
        cout<<"Enter Class\n";
        cin>>m_clas;
        cout<<"Enter Name\n";
        cin>>m_name;
        cout<<"Enter Surname\n";
        cin>>m_surname;
        cout<<"Enter Mark\n";
        cin>>m_mark;
        m_viv[i][0]=m_school;
        m_viv[i][1]=m_clas;
        m_viv[i][2]=m_name;
        m_viv[i][3]=m_surname;
        m_vivv[i++]=m_mark;
    }
    void get(void)
    {
        cout<<"Enter count of pupil whih ypu want to see->\n";
        cin>>j;
        cout<<setw(10)<<"School  Class  Name  Surname  Mark\n";
        cout<<setw(6)<<m_viv[j][0]<<" "<<setw(6)
        <<m_viv[j][1]<<" "<<setw(5)<<m_viv[j][2]<<" "<<setw(8)<<m_viv[j][3]<<" "<<setw(5)<<m_vivv[j]<<endl;
    }
    double uspih(void)
    {
    double sum=0;int j=0;double uspih;
        for(j=1;j<i;j++)
        sum+=m_vivv[j];
        uspih=sum/(j-1);
        return uspih;
    }
    void klas(void)
    {
        string N;bool E=false;
        cout<<"Enter Class which will be sorted->\n";
        cin>>N;
        cout<<setw(10)<<"School  Class  Name  Surname  Mark\n";
        for (int j=1;j<=i;j++)
            if(m_viv[j][1]==N)
            {
             cout<<setw(6)<<m_viv[j][0]<<" "<<setw(6)
             <<m_viv[j][1]<<" "<<setw(5)<<m_viv[j][2]<<" "<<setw(8)<<
             m_viv[j][3]<<" "<<setw(5)<<m_vivv[j]<<endl;E=true;
            }if(E==false)cout<<"Not found.\n";
    }
    void sort(int z)
    {
        z=0;int l=0,k=1;bool hod=true;int c,m4;string m,m1,m2,m3;
        cout<<setw(10)<<"School  Class  Name  Surname  Mark\n";
        for(int y=1;y<i;y++)
        {
        for(int x=y+1;x<i;x++)
            if(m_viv[y][z]==m_viv[x][z])
            {
            m=m_viv[y+1][z];m1=m_viv[y+1][z+1];m2=m_viv[y+1][z+2];m3=m_viv[y+1][z+3];m4=m_vivv[y+1];
            m_viv[y+1][z]=m_viv[x][z];m_viv[y+1][z+1]=m_viv[x][z+1];m_viv[y+1][z+2]=m_viv[x][z+2];m_viv[y+1][z+3]=m_viv[x][z+3];m_vivv[y+1]=m_vivv[x];
            m_viv[x][z]=m;m_viv[x][z+1]=m1;m_viv[x][z+2]=m2;m_viv[x][z+3]=m3;m_vivv[x]=m4;
            }
 
            for(int x=y+1;x<i;x++)
            if(m_viv[y][z]==m_viv[x][z]&&m_viv[y][z+1]==m_viv[x][z+1])
            {
            m=m_viv[y+1][z];m1=m_viv[y+1][z+1];m2=m_viv[y+1][z+2];m3=m_viv[y+1][z+3];m4=m_vivv[y+1];
            m_viv[y+1][z]=m_viv[x][z];m_viv[y+1][z+1]=m_viv[x][z+1];m_viv[y+1][z+2]=m_viv[x][z+2];m_viv[y+1][z+3]=m_viv[x][z+3];m_vivv[y+1]=m_vivv[x];
            m_viv[x][z]=m;m_viv[x][z+1]=m1;m_viv[x][z+2]=m2;m_viv[x][z+3]=m3;m_vivv[x]=m4;
            }
        }
    
        for(c=1;c<i;c++)
        cout<<setw(6)<<m_viv[c][z]<<" "<<setw(6)
        <<m_viv[c][z+1]<<" "<<setw(5)<<m_viv[c][z+2]<<" "<<setw(8)<<
        m_viv[c][z+3]<<" "<<setw(5)<<m_vivv[c]<<endl;       
    }
    ~CPupil()
    {   
    }
};
int main()
{
    CPupil *a=new(CPupil);char choise,ch;int z=0;
    do
    {
    a->set();cout<<"Do you whant to continue?(y/n)\n";
    choise=getch();cout<<endl;
    }
    while(choise!='n');
    do
     {
     cout<<"IF you whant to sort pupils by class press\"s\"\n";ch=getch();
     if(ch=='s')a->klas();
     }while(ch=='s');
           cout<<"IF you whant to sort pupils by school press \"d\"\n";ch=getch();
           if(ch=='d')a->sort(z);
      cout<<"If You whant to see students progress Enter\"p\"else Enter \"n\"\n";
      ch=getche();if(ch='p'){cout<<"Progress of pupils is:"<<" "<<a->uspih()<<endl;a->get();}
           while(ch!='n'){cout<<"Do you whant to continue?(y/n)\n";ch=getch();a->get();}
           delete(a);
    getch();
    return 0;
}
Добавлено через 2 минуты
ток первый public: надо заменить на private:,хотя ето не очень меняет суть
 
Текущее время: 23:31. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru