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

не могу найти ошибку , тема классы в С++ - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Считать массив А(n) из файла. В массиве наименьший элемент поместить на первое место, наименьший из оставшихся – на последнее место http://www.cyberforum.ru/cpp-beginners/thread384894.html
Колокол. Считать массив А(n) из файла. В массиве наименьший элемент поместить на первое место, наименьший из оставшихся – на последнее место, следующий по величине – на второе место, следующий – на предпоследнее и так далее – до середины массива. Реализацию выше описанных действий по изменению массива оформить в виде отдельной функции, в которую передать массив в качестве параметра Помогите...
C++ Занести из файла в массив A фамилии учеников 11 класса, в матрицу С – их оценки Оценки учеников 1. Занести из файла в массив A фамилии учеников 11 класса, в матрицу С – их оценки по 10 предметам за первое полугодие, в массив B – названия этих предметов. Составить список неуспевающих учеников. Удалить из матрицы C все оценки ученика, имеющего больше трех двоек, а из массива A – его фамилию. http://www.cyberforum.ru/cpp-beginners/thread384892.html
C++ Библиотека для работы с большими числами, возможность факторизации
Привет всем! Какие библиотеки можете посоветовать для работы с большими числами, с возможностью их факторизации. Хотелось бы иметь стандартные методы: поларда, проверки на простоту(вероятностныи естественно), ферма и т.п.
C++ Имитация нажатия кнопки
как программно сымитировать нажатие кнопки в программе нужно нажать кнопку PgUp а на клавиатуре ее нет как это можно сделать
C++ КАк задать бездействие на с++ ( подробности в теме ) http://www.cyberforum.ru/cpp-beginners/thread384884.html
Всем привет) люди при создание кнопок возникла проблема- нужно задать бездействие при нажатии другой клавиши. К примеру ты задал при нажатии интер , вылезает сообщение , а если нажимаешь другую клавишу , то ничего не происходит. Составил часть проги , теперь мне нужна вставить команду бездействия после cout<<"вы ввели не верную клавишу"<<endl; . #include<iostream> #include<conio.h> using...
C++ Как "подкрасить" некоторые элементы массива на выводе во время выполнения программы как "подкрасить" некоторые элементы массива на выводе во время выполнения программы в общем, необходимо, если такое возможно, чтобы, например, элементы 1 строки двумерного массива были как-то выделены. задача состоит в том, чтобы подсчитать определенные элементы, поэтому хочется их как-то выделить, чтобы понятно было что считаем :) подробнее

Показать сообщение отдельно
нона
0 / 0 / 0
Регистрация: 16.10.2011
Сообщений: 14
16.11.2011, 00:27     не могу найти ошибку , тема классы в С++
вот код задания
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
#include<iostream.h>
#include<math.h>
 
class Prism_Inscribed_Rectilineal_Triangl{
     double r,a,h;
public:
     void set_Init(double r,double a,double h);
     void print();
     void skan();
     double get_So();
     double get_Sb();
     double get_Sp();
 };
 void skan(Prism_Inscribed_Rectilineal_Triangl *t);
 
 int main(){
 
 
     Prism_Inscribed_Rectilineal_Triangl my_pr;
     Prism_Inscribed_Rectilineal_Triangl *my_pr1 =new Prism_Inscribed_Rectilineal_Triangl ;
 
     cout<<"1 \n";
     skan(&my_pr);
     my_pr.print();
 
     cout<<"2\n";
     skan(my_pr1);
     my_pr1->print();
 
     delete my_pr1;
     system ("pause");
 
     return 0;
 }
 
 void Prism_Inscribed_Rectilineal_Triangl::set_Init (double rr,double aa,double hh){
     r=rr; a=aa; h=hh;
 }
 
 void Prism_Inscribed_Rectilineal_Triangl::print(){
     cout<<"r="<<r<<" "<<"a="<<a<<" "<<"h="<<h<<endl;
     cout<<"So="<<get_So()<<" Sb="<<get_Sb()<<" Sp="<<get_Sp()<<endl;
 }
 
 double Prism_Inscribed_Rectilineal_Triangl:: get_So(){
     return a*a*sqrt(3/4.0); }
 
 double Prism_Inscribed_Rectilineal_Triangl:: get_Sb() {
     return 3*a*h;
 }
 
 double Prism_Inscribed_Rectilineal_Triangl:: get_Sp() { 
     return 2* get_So()+ get_Sb(); 
 }
 
void skan(Prism_Inscribed_Rectilineal_Triangl *t){
      double r,a,h;
      cout<<" r=";
      cin>>r;
      cout<<" "<<"a=";
      cin>>a;
      cout<<" "<<"h=";
      cin>>h;
      t->set_Init(r,a,h);
 }
нужно изменить программу так чтобы инициализация объекта производилась с помощью конструктора с параметрами.Ввести еще одну закрытую переменную класса для хранения имени объекта. Выделение памяти для имени объекта (посредством оператора new) и его инициализацию провести в конструкторе, освобождение выделенной памяти (посредством оператора delete)- в деструкторе.Создать несколько объектов разработанного класса , вывести занчения площадей их оснований, боковой и полной поверхностей. Вот что я написала....


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
#include <math.h>
#include <stdio.h>
#include <conio.h>
#include <string.h>
 
class Prism_Inscribed_Rectilineal_Triangl
{
protected:
    char*   fName;
    double  fR;
    double  fH;
    double  fA;
public:
Prism_Inscribed_Rectilineal_Triangl ( char*  Name,double R, double H,double A);
~ Prism_Inscribed_Rectilineal_Triangl()
 double get_So();
 double get_Sb();
 double get_Sp();
void set_Init (char*  Name,double R, double H,double A);
void print ();
};
Prism_Inscribed_Rectilineal_Triangl::Prism_Inscribed_Rectilineal_Triangl(char *Name,double R,double H,double A)
{
  strcpy ( Prism_Inscribed_Rectilineal_Triangl::R,R);
  strcpy ( Prism_Inscribed_Rectilineal_Triangl::H,H);
  strcpy ( Prism_Inscribed_Rectilineal_Triangl::A,A);
  Prism_Inscribed_Rectilineal_Triangl:: Name=Name;
}
Prism_Inscribed_Rectilineal_Triangl::~Prism_Inscribed_Rectilineal_Triangl()
{
  delete[] this->fName;
}
{
cout<<" Destruction of the object!"<< endl;
}
void  Prism_Inscribed_Rectilineal_Triangl ::set_Init (char* Name, double R, double H,double A)
{
  delete[] this->fName;
  this->fName = new char[strlen(Name)];
  strcpy(this->fName, Name);
  this->fR = R;
  this->fH = H;
  this->fA = A;
}
void Prism_Inscribed_Rectilineal_Triangl::Print ()
{
     cout<<"R="<<R<<" "<<"A="<<A<<" "<<"H="<<H<<endl;
     cout<<" So="<<get_So()<<" Sb="<<get_Sb()<<" Sp="<<get_Sp()<<endl;
 }
 
 double Prism_Inscribed_Rectilineal_Triangl:: get_So(){
     return A*A*sqrt(3/4.0); }
 
 double Prism_Inscribed_Rectilineal_Triangl:: get_Sb() {
     return 3*A*H;
 }
 
 double Prism_Inscribed_Rectilineal_Triangl:: get_Sp() { 
     return 2* get_So()+ get_Sb(); 
 }
int main ()
{
Prism_Inscribed_Rectilineal_Triangl *a  = new Prism_Inscribed_Rectilineal_Triangl(13, "F= ", 7.0);
  Prism_Inscribed_Rectilineal_Triangl *b  = new Prism_Inscribed_Rectilineal_Triangl(13, "F= ", 1.0);
 
  a->Print();
  b->Print();
 
  delete a;
  delete b;
 
  getch();
  return 0;
}
 Комментарий модератора 
код выделяем тегами
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 13:53. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru