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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 29.05.2009, 22:43   #1
Sasuke-sama
Пользователь
 
Регистрация: 22.05.2009
Сообщений: 63
По умолчанию Классы

Программа должна включать в себя статический и динамический способы создания объектов, и для каждого объекта использовать прямую и косвенную адресацию при вызове методов класса.
http://opicture.ru/upload/2009/05/29...2614228791.jpg
Код:
#include<iostream.h>
#include<conio.h>
#include<math.h>
class myclass  //opredeleniye klassa
{
	public:
	void set(float xx,float yy,float zz);//prototip functsii ustanovki znacheniy
	void run();  //prototip functsii vichisleniya virazheniya
	void print();//prototip f-ii vivoda na ekran
	private:
	float x,y,z,u;//znacheniya
};
//opredeleniya functsiy classa
void myclass::set(float xx,float yy,float zz)
{
	x=xx;
	y=yy;
	z=zz;
}
void myclass::run()
{
	u=     // как тут задать эту функцию и вообще программа соответствует заданию программы????????
}
void myclass::print()
{
	cout<<"X="<<x<<"\nY="<<y<<"\nZ="<<z<<"\nU="<<u;
}
//glavnaya programma
void main()
{
	myclass m;    //staticheskiy sposob
	clrscr();
	m.set(-4.5,0.75E-4,0.845E2); //ustanovka znacheniy
	m.run();    //vichisleniye rezultata
	m.print();  //vivod na ekran
	cout<<"\n\n";

	myclass *m1=&m; //dinamicheskiy sposob
	m1->set(-4.5,0.75E-4,0.845E2);
	m1->run();
	m1->print();
	getch();
}
Sasuke-sama вне форума Ответить с цитированием
Старый 29.05.2009, 23:06   #2
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Для степени есть функция pow, для модуля - abs (или fabs для вещественных чисел). Арктангенс - atan. Константа Пи - M_PI.
Цитата:
Сообщение от Sasuke-sama
и вообще программа соответствует заданию программы????????
А это что за вопрос? Если ее писали вы, то логично предположить, что писали ее в соответствии с заданием.
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 30.05.2009, 14:17   #3
Sasuke-sama
Пользователь
 
Регистрация: 22.05.2009
Сообщений: 63
По умолчанию

Проверте пожалуйста, что-то не компилируется:
Код:
#include<iostream.h>
#include<conio.h>
#include<math.h>
class myclass  //opredeleniye klassa
{
	public:
	void set(float xx,float yy,float zz);//prototip functsii ustanovki znacheniy
	void run();  //prototip functsii vichisleniya virazheniya
	void print();//prototip f-ii vivoda na ekran
	private:
	float x,y,z,u;//znacheniya
};
//opredeleniya functsiy classa
void myclass::set(float xx,float yy,float zz)
{
	x=xx;
	y=yy;
	z=zz;
}
void myclass::run()
{
	u=pow(2,pow(y,x))+pow(3,pow(x,y))-y*(atan(-M_PI/6))/(abs(x)+1/(pow(y,2)+1));
}
void myclass::print()
{
	cout<<"X="<<x<<"\nY="<<y<<"\nZ="<<z<<"\nU="<<u;
}
//glavnaya programma
void main()
{
	myclass m;    //staticheskiy sposob
	clrscr();
	m.set(3.251,0.325,0.466E-4); //ustanovka znacheniy
	m.run();    //vichisleniye rezultata
	m.print();  //vivod na ekran
	cout<<"\n\n";

	myclass *m1=&m; //dinamicheskiy sposob
	m1->set(-4.5,0.75E-4,0.845E2);
	m1->run();
	m1->print();
	getch();
}
Sasuke-sama вне форума Ответить с цитированием
Старый 30.05.2009, 14:31   #4
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Код:
u=pow(2,pow(y,x))+pow(3,pow(x,y))-y*(atan(-M_PI/6))/(abs(x)+1/(pow(y,2)+1));
x - вещественное число. Поэтому нужно fabs.
А вообще, формула неправильно записана. Отметил синим.
Должно быть что-то вроде
Код:
pow(pow(3,x),y)
и
Код:
atan(z) - M_PI/6
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 30.05.2009, 14:39   #5
Sasuke-sama
Пользователь
 
Регистрация: 22.05.2009
Сообщений: 63
По умолчанию

Я поправил формулу, но ошибки осталиь вот:
http://opicture.ru/upload/2009/05/30...9935702513.jpg
А вот код который поправил!:
Код:
#include<iostream.h>
#include<conio.h>
#include<math.h>
class myclass                                 //opredeleniye klassa
{ 
	public:
	void set(float xx,float yy,float zz);   //prototip functsii ustanovki znacheniy
	void run();                             //prototip functsii vichisleniya virazheniya
	void print();                           //prototip f-ii vivoda na ekran
	private:
	float x,y,z,u;                          //znacheniya
};
                                             //opredeleniya functsiy classa
void myclass::set(float xx,float yy,float zz)
{
	x=xx;
	y=yy;
	z=zz;
}
void myclass::run()
{
	u=pow(2,pow(y,x))+pow(pow(3,x),y)-y*(atan(z)-M_PI/6)/(fabs(x)+1/(pow(y,2)+1));
}
void myclass::print()
{
	cout<<"X="<<x<<"\nY="<<y<<"\nZ="<<z<<"\nU="<<u;
}
                     //glavnaya programma
void main()
{
	myclass m;       //staticheskiy sposob
	clrscr();
	m.set(3.251,0.325,0.466E-4);         //ustanovka znacheniy
	m.run();                            //vichisleniye rezultata
	m.print();                          //vivod na ekran
	cout<<"\n\n";

	myclass *m1=&m;                     //dinamicheskiy sposob
	m1->set(-4.5,0.75E-4,0.845E2);
	m1->run();
	m1->print();
	getch();
}
Sasuke-sama вне форума Ответить с цитированием
Старый 30.05.2009, 14:45   #6
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Цитата:
Сообщение от Sasuke-sama
Я поправил формулу, но ошибки осталиь вот:
А вообще сообщения компилятора для кого нужны?
Черным по белому написано:
"main должна возвращать int".
И "не знаю, что такое clrscr".
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 30.05.2009, 14:58   #7
Sasuke-sama
Пользователь
 
Регистрация: 22.05.2009
Сообщений: 63
По умолчанию

Спасибо всё получилось, токо почемуто мой DEV-C++ не хочут понимать библиотеку #include<iostream.h>, но считает верно, вот код:
Код:
#include<iostream.h>
#include<conio.h>
#include<math.h>
class myclass                                 //opredeleniye klassa
{ 
	public:
	void set(float xx,float yy,float zz);   //prototip functsii ustanovki znacheniy
	void run();                             //prototip functsii vichisleniya virazheniya
	void print();                           //prototip f-ii vivoda na ekran
	private:
	float x,y,z,u;                          //znacheniya
};
                                             //opredeleniya functsiy classa
void myclass::set(float xx,float yy,float zz)
{
	x=xx;
	y=yy;
	z=zz;
}
void myclass::run()
{
	u=pow(2,pow(y,x))+pow(pow(3,x),y)-y*(atan(z)-M_PI/6)/(fabs(x)+1/(pow(y,2)+1));
}
void myclass::print()
{
	cout<<"X="<<x<<"\nY="<<y<<"\nZ="<<z<<"\nU="<<u;
}
                     //glavnaya programma
int main()
{
	myclass m;       //staticheskiy sposob
	m.set(3.251,0.325,0.466E-4);         //ustanovka znacheniy
	m.run();                            //vichisleniye rezultata
	m.print();                          //vivod na ekran
	cout<<"\n\n";

	myclass *m1=&m;                     //dinamicheskiy sposob
	m1->set(3.251,0.325,0.466E-4);
	m1->run();
	m1->print();
	getch();
}
Sasuke-sama вне форума Ответить с цитированием
Старый 30.05.2009, 15:03   #8
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Цитата:
Сообщение от Sasuke-sama
токо почемуто мой DEV-C++ не хочут понимать библиотеку #include<iostream.h>
Это старая версия библиотеки, о чем он вам и говорит.
Используйте
Код:
#include <iostream>
И допишите после инклудов:
Код:
using namespace std;
чтобы сделать глобальным пространство имен std.
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 30.05.2009, 15:15   #9
Sasuke-sama
Пользователь
 
Регистрация: 22.05.2009
Сообщений: 63
По умолчанию

Спасибо, теперь всё точно норм всё поправил))))
Код:
#include<iostream>
#include<conio.h>
#include<math.h>
using namespace std;

class myclass                                 //opredeleniye klassa
{ 
	public:
	void set(float xx,float yy,float zz);   //prototip functsii ustanovki znacheniy
	void run();                             //prototip functsii vichisleniya virazheniya
	void print();                           //prototip f-ii vivoda na ekran
	private:
	float x,y,z,u;                          //znacheniya
};
                                             //opredeleniya functsiy classa
void myclass::set(float xx,float yy,float zz)
{
	x=xx;
	y=yy;
	z=zz;
}
void myclass::run()
{
	u=pow(2,pow(y,x))+pow(pow(3,x),y)-y*(atan(z)-M_PI/6)/(fabs(x)+1/(pow(y,2)+1));
}
void myclass::print()
{
	cout<<"X="<<x<<"\nY="<<y<<"\nZ="<<z<<"\nU="<<u;
}
                     //glavnaya programma
int main()
{
	myclass m;       //staticheskiy sposob
	m.set(3.251,0.325,0.466E-4);         //ustanovka znacheniy
	m.run();                            //vichisleniye rezultata
	m.print();                          //vivod na ekran
	cout<<"\n\n";

	myclass *m1=&m;                     //dinamicheskiy sposob
	m1->set(3.251,0.325,0.466E-4);
	m1->run();
	m1->print();
	getch();
}
Sasuke-sama вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
классы Valerik Общие вопросы C/C++ 2 22.04.2009 22:10
Классы в С++ S2S Общие вопросы C/C++ 0 15.03.2009 13:25
Классы С++ kims Общие вопросы C/C++ 2 05.03.2009 00:45
Классы MaxiMILLION Помощь студентам 4 12.10.2008 14:05