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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 08.04.2012, 20:48   #1
Владилена
Пользователь
 
Аватар для Владилена
 
Регистрация: 11.06.2011
Сообщений: 36
По умолчанию Иерархия классов на C++

Здравствуйте!
Есть следующее задание на С++ (лаб. работа)
1. Определить иерархию классов .
2. Определить в классе статическую компоненту - указатель на начало связанного списка объектов и статическую функцию для просмотра списка.
3. Реализовать классы.
4. Написать демонстрационную программу, в которой создаютсяобъекты различных классов и помещаются в список, после чего список просматривается.
Код работает.
Не получается вот что - запускаю программу, забивая в последнюю строчку ответ в виде дробного числа, просмотр выдает выдает целое число.

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

Код:
#include<iostream.h>
#include<conio.h>
#include<string.h>
#include<cstdlib>
class ISPYTANIE
{
 public:

// конструктор класса с одним параметром, который по-умолчанию равен пустой строке
 ISPYTANIE(const char * NAME = "")
 {
 // выделение памяти для name. размер выделяемой памяти = длина строки NAME
 //(возвращает ф-ция strlen)
 name = new char [strlen(NAME) + 1];
 strcpy(name,NAME);
 }
 virtual ~ISPYTANIE()
 {
     delete [] name;
 }
 virtual void show()=0;
  virtual void input()=0;
  friend class list;
  protected:
  char* name;
  ISPYTANIE* next;
};
class EXAMEN:public ISPYTANIE
 {
  public:
  EXAMEN() {st=0;}
  EXAMEN(int ST) {st=ST;}
  EXAMEN(char*NAME,int ST):ISPYTANIE(NAME)
  {
      st=ST;
      }
      void show()
      {
      cout<<"\n        Examen po: "<<name;
      cout<<"\n            Ozenka:"<<st;
      cout<<"\n";
  }
  void input()
  {
  cout<<"        Examen po: ";cin>>name;
cout<<"         Ozenka: ";cin>>st;
cout<<"\n";
}
protected:
int st;
};

class VYPUSK:public ISPYTANIE
{
    public:
    VYPUSK() {st=0;}
    VYPUSK(int ST){st=ST;}
    VYPUSK(char *NAME,int ST):ISPYTANIE(NAME)
    {
        st=ST;
    }
    void show()
    {
        cout<<"\n  Vypusknoi Examen "<<name;
        cout<<"  Srednyaya ozenka: "<<st;
        cout<<"\n";
    }
    void input()
    {
      cout<<"\n      Vypusknoi Examen : ";cin>>name;
        cout<<"  Srednyaya ozenka: ";cin>>st;
        cout<<"\n";
        }


    protected:
    int st;
};

class TEST:public ISPYTANIE
{
    public:
    TEST() {st=0;}
    TEST(int ST){st=ST;}
    TEST(char* NAME,int ST):ISPYTANIE(NAME)
    {
        st=ST;
    }

    void show()
    {
        cout<<"\n      Testirovanie po: "<<name;
        cout<<"\n  Kolichestvo nabrannyh ballov: "<<st;
        cout<<"\n";
    }
    void input()
    {
        cout<<"     Testirovanie po: "; cin>>name;

cout<<"   Kolichestvo nabrannyh ballov:";cin>>st;
cout<<"\n";
}
protected:
int st;
};

class list
{private:
    ISPYTANIE* begin;
    public:
    list(){begin=0;}
    ~list();
    void insert(ISPYTANIE*);
    void show();
    };
    list::~list()
    {ISPYTANIE* A;
    while(begin!=0)
    {A=begin;
    begin=begin->next;
    delete A;
    }
    }
void list::insert(ISPYTANIE* B)
{
ISPYTANIE* A;
A=begin;
begin=B;
B->next=A;
}
void list::show()
{
ISPYTANIE *A;
A=begin;
while(A!=0)
{
    A->show();
    A=A->next;
    }
    }
 int main()
 {
 //clrscr();
 list list;
 TEST *x1;
 EXAMEN *x2;
VYPUSK *x3;
x1= new TEST;
x2=new EXAMEN;
x3=new VYPUSK;
x1->input();
x2->input();
x3->input();
cout<<"---------------------------------";
list.insert(x3);
list.insert(x2);
list.insert(x1);
list.show();
getch();
}
Изображения
Тип файла: jpg Результат работы.jpg (74.3 Кб, 154 просмотров)
Владилена вне форума Ответить с цитированием
Старый 08.04.2012, 23:21   #2
Владилена
Пользователь
 
Аватар для Владилена
 
Регистрация: 11.06.2011
Сообщений: 36
По умолчанию

Извиняюсь перед всеми за глупый вопрос,я сама разобралась! (Видимо просто расчувствовалась)
Владилена вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
иерархия классов Freek123 Фриланс 3 28.10.2011 09:14
Иерархия классов Делфи DenNik2006 Общие вопросы Delphi 0 15.08.2011 17:04
Иерархия классов lirikoff Помощь студентам 7 21.10.2010 23:51
иерархия классов ООП Astro4ka Помощь студентам 3 29.06.2010 23:34
иерархия классов vcl SkrudjMakdak Общие вопросы Delphi 4 12.06.2010 19:16