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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
BetoN
0 / 0 / 0
Регистрация: 22.01.2012
Сообщений: 13
#1

получение двух результатов из функции - C++

10.04.2012, 23:04. Просмотров 575. Ответов 4
Метки нет (Все метки)

нужно сделать ф-цию, которая будет возвращать периметр и площадь прямоугольника
процедура на паскале выглядит так:
Pascal
1
2
3
4
5
Procedure RectPS(x1, y1, x2, y2:real; var P, S:real);
begin
P:=(abs(x1-x2)+abs(y1-y2))*2;
S:=abs(x1-x2)*abs(y1-y2);
end;
пытался сделать, не работает(
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
#include <iostream.h>
#include <conio.h>
#include <math.h>
using namespace std;
double RectPS(int x1, int y1, int x2, int y2, int *S,int *P);
int main()
{
 int x1,y1,x2,y2,P,S;
 cout<<"Vvedite koordinati pervoy tochki\n";
 cin>>x1;
 cin>>y1;
 cout<<"Vvedite koordinati vtoroy tochki\n";
 cin>>x2;
 cin>>y2;
 S=0;
 P=0;
 if((x1!=x2)&&(y1!=y2))
  {
   RectPS(x1,y1,x2,y2,&S,&P);
   cout<<"\nPloschad' S= "<<S;
   cout<<"\nPerimetr P= "<<P;
  }
 else cout<<"\nNelzya postroit pryamougolnik";
 getch();
}
 
void RectPS(int x1, int y1, int x2, int y2, int *S,int *P)
{
 *S = abs(x1-x2) * abs(y1-y2);
 *P =(abs(x1-x2)+abs(y1-y2))*2;
}
помогите, плиз...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.04.2012, 23:04     получение двух результатов из функции
Посмотрите здесь:

Сравнение результатов двух математических выражений. - C++
Напишите программу для расчета с двумя формулами. Сначала нужно подготовить тестовые примеры использования второго Формула рассчитывается...

Получить максимум из результатов вычисления двух выражений - C++
Даны x, y, z. Вычислить a, b, используя приведенные ниже формулы. Получить max(a, b).

Найти наименьшую сумму квадратов двух результатов измерений с интервалом в 5 элементов - C++
На вход программы подаются результаты измерений, выполняемых прибором с интервалом 1 минуту. Все данные – натуральные числа, не...

Табулирования функции и вывод результатов в таблице - C++
Составить программу вычисления функции с использованием оператора цикла с предусловием. Переменная х меняется с шагом h на заданном...

Возвращение результатов функции в несколько переменных - C++
Здраствуйте, можно ли как-то припомощи оператора return вернуть несколько значений? Если да, то как после вызова функции вернуть первой...

Функции(опять передача результатов выполнения))) - C++
Есть массив элементов. Нужно реализовать функцию удаления элемента по поиску текстового поля.... например есть такая последовательность:...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Nekto
342 / 287 / 10
Регистрация: 23.03.2012
Сообщений: 838
10.04.2012, 23:11     получение двух результатов из функции #2
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
#include <iostream.h>
#include <conio.h>
#include <math.h>
using namespace std;
void RectPS(int x1, int y1, int x2, int y2, int *S,int *P);
int main()
{
 int x1,y1,x2,y2,P,S;
 cout<<"Vvedite koordinati pervoy tochki\n";
 cin>>x1;
 cin>>y1;
 cout<<"Vvedite koordinati vtoroy tochki\n";
 cin>>x2;
 cin>>y2;
 S=0;
 P=0;
 if((x1!=x2)&&(y1!=y2))
  {
   RectPS(x1,y1,x2,y2,&S,&P);
   cout<<"\nPloschad' S= "<<S;
   cout<<"\nPerimetr P= "<<P;
  }
 else cout<<"\nNelzya postroit pryamougolnik";
 cout<<endl;
 system("pause");
 return 0;
}
 
void RectPS(int x1, int y1, int x2, int y2, int *S,int *P)
{
 *S = abs(x1-x2) * abs(y1-y2);
 *P =(abs(x1-x2)+abs(y1-y2))*2;
}
BetoN
0 / 0 / 0
Регистрация: 22.01.2012
Сообщений: 13
10.04.2012, 23:21  [ТС]     получение двух результатов из функции #3
Спасибо...
если я правильно вижу то
C++
1
2
3
 cout<<endl;
 system("pause");
 return 0;
это все что ты добавил...
можешь сказать что в этом особенного? )
Nekto
342 / 287 / 10
Регистрация: 23.03.2012
Сообщений: 838
10.04.2012, 23:28     получение двух результатов из функции #4
Цитата Сообщение от BetoN Посмотреть сообщение
Спасибо...
если я правильно вижу то
C++
1
2
3
 cout<<endl;
 system("pause");
 return 0;
это все что ты добавил...
можешь сказать что в этом особенного? )
особенное не в этом, а:
1) функция у тебя войд, а объявил её как double
2) функции должны возвращать значения, поэтому в конце main надо делать return
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.04.2012, 23:32     получение двух результатов из функции
Еще ссылки по теме:

Выполнить вывод на экран результатов вычисления функции (C++) - C++
Только начал изучать C++ и не совсем понимаю как это сделать. Буду очень благодарен, если поможете!

Получение значения из функции - C++
Здравствуйте! Помогите понять что делаю не так. Очевидно неправильно возвращаю значение из функции, но как правильно реализовать не могу...

Получение числа и использование перегрузки функции - C++
Приветствую! Необходимо написать две версии общей функции get_number таким образом, чтобы функция get_number могла быть использована для...

Получение числа и использование перегрузки функции - C++
Приветствую! Необходимо написать две версии общей функции get_number таким образом, чтобы функция get_number могла быть использована для...

Получение прототипа функции имея ее адрес - C++
здравствуйте!, писать, и разбираться в программировании на C++ только начал, поэтому если вопрос покажется глупым, не обессудьте) ...

Получение адреса функции (Дизассемблер Code::Blocks) - C++
Привет всем! У меня вопрос. Работаю я в code::blocks 10.05 под minGW. Появилась нужда узнать адрес функции, начал дизассемблировать код,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
BetoN
0 / 0 / 0
Регистрация: 22.01.2012
Сообщений: 13
10.04.2012, 23:32  [ТС]     получение двух результатов из функции #5
обенное не в этом, а:
1) функция у тебя войд, а объявил её как double

это я тоже потом заметил... сначало пытался сделать double...

2) функции должны возвращать значения, поэтому в конце main надо делать return

учту, еще раз спасибо)
Yandex
Объявления
10.04.2012, 23:32     получение двух результатов из функции
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru