Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.02.2010, 23:28   #1
Defa4ka
Пользователь
 
Аватар для Defa4ka
 
Регистрация: 10.05.2009
Сообщений: 80
Сообщение Классы в Си

Помогите,пожалуйста....
Нужно Создать класс,который должен содержать дополнительно конструктор и конструктор по умолчанию,а также деструктор.Составить программу,которая будет содержать экземпляр созданного класса.

Код:
#include<iostream.h>
#include<string.h>
class CITY
{
char name [20];
float area;
int people;
int year;
int scool;
public:
CITY();
CITY(char*,float,int,int,int);
void setCITY(char*,float,int,int,int);
void printCITY();
};
CITY::CITY()
{
strcpy(name,"nonazv");
area=0.0;
people=0.0;
year=0.0;
scool=0.0;
}
CITY::CITY(char*n,float a,int p,int y,int s)
{
strcpy(name;n);
area=a;
people=p;
year=y;
scool=s;
}
void CITY::printCITY();
cout<<"nazvanie goroda="<<name<<endl;
cout<<"ploshad goroda="<<area<<endl;
cout<<"naselenie="<<people<<endl;
cout<<"kolichestvo shkol="<<scool<<endl;
}
main()
CITY Dnepr;
Dnepr.printCITY();
Dnepr.setCITY("Dnepropetrovsk,100,2,150,300);
Dnepr.printCITY();
CITY ng("Novomoskovsk,75,1,70,350);
ng.printCITY();
......
Величие человека есть его способность мыслить.
Блез Паскаль
Defa4ka вне форума Ответить с цитированием
Старый 28.02.2010, 23:29   #2
NiCola999
Не
Участник клуба
 
Регистрация: 29.10.2009
Сообщений: 1,456
По умолчанию

во-первых в Си нету классов вообще, во-вторых ваш код написан на чистом с++, в-третьих покажите какие ошибки выдает компилятор или что не понятно

учите синатксис С++ =)

вот рабочий код:

Код:
#include<iostream.h>
#include<string.h>

using namespace std;

class CITY
{
   char name [20];
   float area;
   int people;
   int year;
   int scool;
public:
       CITY();
       CITY(char*,float,int,int,int);
       void setCITY(char*,float,int,int,int);
       void printCITY();
};

CITY::CITY()
{
    strcpy(name,"nonazv");
    area=0.0;
    people=0;
    year=0;
    scool=0;
}

CITY::CITY(char*n,float a,int p,int y,int s)
{
    strcpy(name,n);
    area=a;
    people=p;
    year=y;
    scool=s;
}

void CITY::printCITY()
{
    cout<<"nazvanie goroda="<<name<<endl;
    cout<<"ploshad goroda="<<area<<endl;
    cout<<"naselenie="<<people<<endl;
    cout<<"kolichestvo shkol="<<scool<<endl;
}

void CITY::setCITY(char* n,float a,int p,int y,int s){
    strcpy(name,n);
    area=a;
    people=p;
    year=y;
    scool=s;
}

int main()
{
  CITY Dnepr;
  Dnepr.printCITY();
  Dnepr.setCITY("Dnepropetrovsk",100,2,150,300);
  Dnepr.printCITY();
  CITY ng("Novomoskovsk",75,1,70,350);
  ng.printCITY();
  return 0;
}

Последний раз редактировалось Stilet; 01.03.2010 в 09:22.
NiCola999 вне форума Ответить с цитированием
Старый 28.02.2010, 23:48   #3
Defa4ka
Пользователь
 
Аватар для Defa4ka
 
Регистрация: 10.05.2009
Сообщений: 80
По умолчанию

компилятор не выдает ошибок, помогите довести до конца,сделать все,что требуется в задании.. я не понимаю((((((( писала по примеру
Величие человека есть его способность мыслить.
Блез Паскаль
Defa4ka вне форума Ответить с цитированием
Старый 28.02.2010, 23:51   #4
NiCola999
Не
Участник клуба
 
Регистрация: 29.10.2009
Сообщений: 1,456
По умолчанию

полностью задание выложите=) я не телепат
NiCola999 вне форума Ответить с цитированием
Старый 01.03.2010, 00:11   #5
Defa4ka
Пользователь
 
Аватар для Defa4ka
 
Регистрация: 10.05.2009
Сообщений: 80
По умолчанию

класс-»Город, данные-» наименование,колличество жителей,площадь(Кв.км),год основания,колличество школ; функция-» определение плотности населения на 1 кв.м. вот...нужно создать класс со всеми возможными конструкторами и деструкторами(копирования,по умолчанию...)...
Величие человека есть его способность мыслить.
Блез Паскаль
Defa4ka вне форума Ответить с цитированием
Старый 01.03.2010, 00:47   #6
NiCola999
Не
Участник клуба
 
Регистрация: 29.10.2009
Сообщений: 1,456
По умолчанию

Код:
#include<iostream>
#include<string.h>

using namespace std;

class CITY
{
   char name [20];
   float area;
   int people;
   int year;
   int scool;
public:
       CITY();
       ~CITY() { delete[] this->name; };
       CITY(char*,float,int,int,int);
       void setCITY(char*,float,int,int,int);
       void printCITY();
       void CITY::densityPeople();
};

CITY::CITY()
{
    strcpy(name,"nonazv");
    area=0.0;
    people=0;
    year=0;
    scool=0;
}

CITY::CITY(char*n,float a,int p,int y,int s)
{
    strcpy(name,n);
    area=a;
    people=p;
    year=y;
    scool=s;
}

void CITY::printCITY()
{
    cout<<"nazvanie goroda="<<name<<endl;
    cout<<"ploshad goroda="<<area<<endl;
    cout<<"naselenie="<<people<<endl;
    cout<<"kolichestvo shkol="<<scool<<endl;
}

void CITY::setCITY(char* n,float a,int p,int y,int s){
    strcpy(name,n);
    area=a;
    people=p;
    year=y;
    scool=s;
}

void CITY::densityPeople() {
    cout << "Plotnost naseleniya=" << people/area << endl;
}

int main()
{
  CITY Dnepr;
  Dnepr.setCITY("Dnepropetrovsk",405,1013006,150,300);
  Dnepr.printCITY();
  Dnepr.densityPeople();
  return 0;
}
NiCola999 вне форума Ответить с цитированием
Старый 01.03.2010, 00:57   #7
Defa4ka
Пользователь
 
Аватар для Defa4ka
 
Регистрация: 10.05.2009
Сообщений: 80
По умолчанию

спасибо)
Величие человека есть его способность мыслить.
Блез Паскаль
Defa4ka вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
классы Sined121 Общие вопросы C/C++ 3 22.12.2009 20:29
Классы (C#) Andrey_k Помощь студентам 0 23.09.2009 20:56
Классы Sasuke-sama Общие вопросы C/C++ 8 30.05.2009 15:15
Классы С++ kims Общие вопросы C/C++ 2 05.03.2009 00:45