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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 17.04.2011, 14:45   #1
SKyzZz
Пользователь
 
Регистрация: 14.02.2011
Сообщений: 43
Злость Перегрузка функций!

Напишите перегружаемую функцию dlina, которая определяет длину вектора в 2D или 3D координатах.

Координаты могут быть заданы как целые или вещественные числа..

Продемонстрируйте работу функции для всех вариантов данных

Код:
#include <iostream>
#include <math.h>
#include <windows.h>

using namespace std;

double dlina(int x1,int y1,double x2,double y2)
{ return sqrt(fabs(x2-x1)*fabs(x2-x1)+fabs(y2-y1)*fabs(y2-y1)); }
double dlina(int x1,int y1,double z1,double x2,double y2,double z2) 
{ return sqrt(fabs(x2-x1)*fabs(x2-x1)+fabs(y2-y1)*fabs(y2-y1)+fabs(z2-z1)*fabs(z2-z1)); }
double dlina(double x1,double y1,double x2,double y2) 
{ return sqrt(fabs(x2-x1)*fabs(x2-x1)+fabs(y2-y1)*fabs(y2-y1)); }
double dlina(double x1,double y1,double z1,double x2,double y2,double z2) 
{ return sqrt(fabs(x2-x1)*fabs(x2-x1)+fabs(y2-y1)*fabs(y2-y1)+fabs(z2-z1)*fabs(z2-z1)); }

void main()
{
char change;
double x_1,y_1,z_1,x_2,y_2,z_2;
int x_p, y_p, z_p, x_p2,y_p2,z_p2;
cout << "Format: " << endl;
cout << "2 - 2D" << endl;
cout << "3 - 3D" << endl;
cin >> change;
cout << "Input format" << endl;
cin >> x_1;
cin >> y_1;
if (change=='3') cin >> z_1;
cout << "Output format" << endl;
cin >> x_2;
cin >> y_2;
if (change=='3') cin >> z_2;
cout << "Rezult: ";

x_p=int(x_1);
y_p=int(y_1);
if (change=='3') z_p=int(z_1);
x_p2=int(x_2);
y_p2=int(y_2);
if (change=='3') z_p2=int(z_2);
if (change=='2')
if (double(x_p)!=x_1 || double(y_p)!=y_1 || double(x_p2)!=x_2 || double(y_p2)!=y_2) cout << dlina(x_1,y_1,x_2,y_2)<<endl;
else cout << dlina(x_p,y_p,x_p2,y_p2) << endl;
if (change=='3')
if (double(x_p)!=x_1 || double(y_p)!=y_1 || double(z_p)!=z_1 || double(x_p2)!=x_2 || double(y_p2)!=y_2 || double(z_p2)!=z_2) cout << dlina(x_1,y_1,z_1,x_2,y_2,z_2)<<endl;
else cout << dlina(x_p,y_p,z_p,x_p2,y_p2,z_p2)<<endl;
}
А второе неполучается, что объясните мне ну или хотя бы помогите?
Напишите перегружаемую функцию square, которая определяет площадь поверхности шара, цилиндра и прямоугольного параллелепипеда.Аргументы могут быть заданы как целые или вещественные числа. Продемонстрируйте работу функции для всех вариантов данных.

Последний раз редактировалось ACE Valery; 18.04.2011 в 21:31.
SKyzZz вне форума Ответить с цитированием
Старый 18.04.2011, 17:03   #2
doter
Пользователь
 
Регистрация: 25.09.2010
Сообщений: 34
Радость

сам недавно такую прогу сдал . в общем держи мою прогу . прога находит
норму числа , норму матрицы и норму вектора (то бишь длину ) . Размерность пространства , в котором рассматривается вектор вводится с клавы . Прога работает , за нее получил 5) Думаю разберешься , удалишь ненужное )
Вложения
Тип файла: zip norma.zip (1.0 Кб, 14 просмотров)
doter вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перегрузка функций doter Visual C++ 2 31.03.2011 12:24
С++.. Перегрузка функций serserega Помощь студентам 9 07.02.2011 19:04
Перегрузка функций... bondik Общие вопросы C/C++ 12 28.04.2008 01:07
перегрузка функций Snake_ua Общие вопросы Delphi 3 26.11.2007 10:54