Sua função fez a leitura, quando na verdade, deveria ter feito a soma.
Vamos lá. Como funciona uma soma? Você tem como entrada 2 números a e b. E como saída os números somados.
A entrada de uma função compõe a lista de parâmetros. E a saída é o que terá que ser retornado no “return”. Note que nesse caso, tanto as entradas, quanto a saída da função são números inteiros. Portanto, a função soma seria:
int soma(int a, int b)
{
int valorSomado = a+b;
return valorSomado;
}
Ok. Agora o problema é chamar essa função a partir do resto do programa. O resto do programa tem como objeto:
a) Fazer a leitura das variáveis
b) Envia-las para a função
c) Exibir o resultado.
Vamos lá:
[code]#include<iostream>
using namespace std;
//No início do programa você faz a declaracao das funcoes, colocando somente seu cabecalho
int soma(int a, int b);
int main()
{
//a) Leitura dos dados
int valor1, valor2;
cout << "Digite o primeiro valor";
cin >> valor1;
cout << "Digite o segundo valor";
cin >> valor2;
//b) Chama a funcao para que o calculo seja feito
int resultado = soma(valor1, valor2);
//c) Exibe o resultado
cout << "O resultado e:" << endl << resultado;
return 0;
}
//Aqui fazemos a definicao da funcao.
int soma(int a, int b)
{
int valorSomado = a+b;
return valorSomado;
}[/code]
O código pode ser simplificado, pois algumas das variáveis temporárias que usei não precisam ser usadas. Fiz apenas para ser didático. Analise o código abaixo, que tem o mesmo resultado, e veja onde simplifiquei:
[code]
#include<iostream>
using namespace std;
int soma(int a, int b);
int main()
{
int valor1, valor2;
cout << "Digite o primeiro valor";
cin >> valor1;
cout << "Digite o segundo valor";
cin >> valor2;
cout << "O resultado e:" << endl << soma(valor1, valor2);
return 0;
}
int soma(int a, int b)
{
return a+b;
}[/code]