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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 20.04.2012, 13:21   #1
mishanya6
Пользователь
 
Регистрация: 04.11.2011
Сообщений: 10
Счастье Классы

Код:
// Laba_7.cpp: определяет точку входа для консольного приложения.
/*
Составить описание класса для представления комплексных чисел. Обеспечить выполнение операций сложения, вычитания и умножения комплексных чисел.
Написать программу, демонстрирующую все разработанные элементы класса.
*/
#include "stdafx.h"
#include <cstdlib>
#include <iostream>
#include<stdio.h>
#include<conio.h>
#include<string.h>
#include<time.h>
#include <locale.h>

using namespace std;

template <class T> class complex
{
public:
	int slozh(T a,T b,T c,T d,int x,int y)
		{x=(a+c); y=(b+d);return a;return b;}
	/*int vuch(T a,T b,T c,T d,T x,T y)
		{a-=c;b-=d;return a;return b;return c;return b;}
	int mult(T a,T b,T c,T d,T x,T y)
		{a=a*c-b*d; b=a*d+b*c;return a;return b;return c;return b;}*/
	void print(int x, int y)
		{cout<<x<<"+"<<y<<"i";};
};


int main()
{setlocale(0,"Russian");
complex<int> chislo,result;
//----------------------------------------------------------------	
	srand(time(NULL));
	int a,b,c,d;
	char m;
	cout<<"Как вы хотите задать комплексное число, вручную или случайно (v/s)?";
	cin>>m;
	if (m=='v')
	{cout<<"Введите a-> ";cin>>a;
	cout<<"Введите b-> ";cin>>b;
	cout<<"Введите с-> ";cin>>c;
	cout<<"Введите d-> ";cin>>d;}
	else{a=rand()%26;b=rand()%26;c=rand()%26;d=rand()%26;}
	
//----------------------------------------------------------------
int n,x,y;
cout<<"Какую операцию Вы хотите(s/v/m)?\n";
cin>>n;
switch(n)
{

case 1:{result.slozh(a,b,c,d,x,y);  result.print(x,y); break;}
//case 2:{result.vuch(a,b,c,d);   result.print(x,y); break;}
//case 3:{result.mult(a,b,c,d);   result.print(x,y); break;}
case 4:{result.print(a,b);cout<<" ";result.print(c,d);break;}
default:cout<<"Такой операции не существует";
}
//----------------------------------------------------------------

 system("PAUSE");
 return 0; 
}
Выбивает ошибку, помогите разобраться!!

Последний раз редактировалось ACE Valery; 20.04.2012 в 18:32.
mishanya6 вне форума Ответить с цитированием
Старый 20.04.2012, 14:18   #2
microbit
Форумчанин
 
Аватар для microbit
 
Регистрация: 26.09.2011
Сообщений: 176
По умолчанию

так делать нельзя
Код:
{x=(a+c); y=(b+d);return a;return b;}
чтобы вернуть несколько значений можно использовать ссылки
Код:
void slozh(int a,int b,int c,int d,int& x,int& y)
{x=(a+c); y=(b+d);}
вызывается это так
Код:
int x, y;
slozh(10, 15, 20, 10, x, y);
\\в x и y результат
microbit вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Классы Sergey240892 Помощь студентам 18 30.05.2011 19:06
Классы Kukkk Компоненты Delphi 2 26.12.2009 13:00
классы Sined121 Общие вопросы C/C++ 3 22.12.2009 20:29
Классы honest Помощь студентам 5 21.09.2009 21:23