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

функции - C++

Восстановить пароль Регистрация
 
van77715
0 / 0 / 0
Регистрация: 22.09.2013
Сообщений: 50
22.10.2013, 21:29     функции #1
Функции могут возвращать несколько значений?
Если да то как?

return a;
return b;
Это явно не сработает
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.10.2013, 21:29     функции
Посмотрите здесь:

C++ Найти среднее арифметическое значений функции f(x) в точках a, b, (a+b)/2 используя обращение к функции
Одномерный массив и функции (сделать 3 функции ввода/решения/вывода) C++
C++ Табулирование заданной функции и определение максимального и минимального значения функции в таблице
Вычислить m значений функции f(x) на отрезке [a, b]. Вычисление величины f(x) оформить в виде функции C++
Вычислить функции с использованием их разложения в степенной ряд. Функции и Перегрузка функций C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ValeryS
Модератор
6377 / 4843 / 442
Регистрация: 14.02.2011
Сообщений: 16,061
22.10.2013, 21:34     функции #2
Цитата Сообщение от van77715 Посмотреть сообщение
Функции могут возвращать несколько значений?
смотря что понимать под словом возвращать
return может вернуть какую нибудь структуру, указатель на область памяти где будут лежать разные значения
можно под возвращением понимать и изменение аргументов переданных по ссылке
типичный пример scanf
Цитата Сообщение от van77715 Посмотреть сообщение
return a;
return b;
Это явно не сработает
сработает но не так как ты хочешь до return b дело не дойдет
van77715
0 / 0 / 0
Регистрация: 22.09.2013
Сообщений: 50
22.10.2013, 21:44  [ТС]     функции #3
например

функция (инт а, инт б)
ретурн а+б;
ретурн а * б;

а потом я хочу чтобы мне вывело на екран и то и другое

я так понял можноч через
сиоут << функция(число, число)
можне еще по другому вывести это? (я можно сказать функции 2 день учу)
ValeryS
Модератор
6377 / 4843 / 442
Регистрация: 14.02.2011
Сообщений: 16,061
22.10.2013, 21:51     функции #4
C++
1
2
3
4
5
6
7
8
void xzFunc(int * a, int * b)
{
int tmpAdd,tmpPov;
tmpAdd=(*a)+(*b);
tmpPov=(*a )*(*b);
*a=tmpAdd;
*b=tmpPov;
}
но по правильному написать две функции,для умножения и для сложения, поскольку логика у них разная
van77715
0 / 0 / 0
Регистрация: 22.09.2013
Сообщений: 50
22.10.2013, 21:58  [ТС]     функции #5
если я понял мы в конце в а и б заводим решения?
а как их можно перенести с функции в програму?
или если я в маин напишу
cout << b;
оно выведет?
ValeryS
Модератор
6377 / 4843 / 442
Регистрация: 14.02.2011
Сообщений: 16,061
22.10.2013, 22:25     функции #6
вызывать будешь так
C++
1
2
3
4
int a=10;
int b=20;
xzFunc(&a,&b);
cout<<a<<b;
Verbillion
9 / 9 / 0
Регистрация: 22.10.2013
Сообщений: 36
23.10.2013, 08:54     функции #7
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <cstdlib>
#include <cmath>
 
using namespace std;
int func(int a, int b, int *s, int *p)
{
    *s=a+b;
    *p=a*b;
    return 0;     
}
int main()
{
    int a = 1, b = 2,s,p;
    func(a,b,&s,&p);
    cout << s << endl << p << endl;
    system("PAUSE");
    return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.10.2013, 09:01     функции
Еще ссылки по теме:

Написать три функции, которые будут вызываться из функции main() C++
C++ Вычисление функции на заданном промежутке, и построение графика этой функции

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

Или воспользуйтесь поиском по форуму:
Ev[G]eN
Эксперт С++
 Аватар для Ev[G]eN
5093 / 1531 / 381
Регистрация: 23.01.2011
Сообщений: 3,148
23.10.2013, 09:01     функции #8
я вот так обычно делаю
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
 
std::pair <int, double> function(int firstParam, double secondParam)
{
    firstParam = 155;
    secondParam = 155.5;
    std::pair <int, double> result(firstParam, secondParam);
    return result;
}
 
int main()
{
    int firstParam;
    double secondParam;
    std::cout << (firstParam = 255) << ' ' << (secondParam = 255.5) << std::endl;
    std::cout << function(firstParam, secondParam).first << ' ' << function(firstParam, secondParam).second << std::endl;
    
    system("pause > file");
    return 0;
}
Yandex
Объявления
23.10.2013, 09:01     функции
Ответ Создать тему
Опции темы

Текущее время: 04:57. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru