Fiz uma calculadora simples de 6 operações em que as funções das mesmas estão em uma header file que eu criei. O código não da error mas quando as funções das operações são executadas o resultado não existe (00161041 por exemplo quando eu faço uma soma de 1 e 1):
#include <iostream>
#include <cmath>
#include <locale.h>
#include "Mat.h"
using namespace std;
void menu();
float n1, n2;
void escolha(int esc);
int retorno();
int main()
{
setlocale(LC_ALL, ("Portuguese"));
menu();
system("PAUSE");
return 0;
}
void escolha(int escolha)
{
switch (escolha)
{
case 1: cout << "a soma dos números é: " << soma << endl;
break;
case 2: cout << "a subtração dos números é: " << sub << endl;
break;
case 3: cout << "a multiplicação dos números é: " << multi << endl;
break;
case 4: cout << "a divisão dos números é: " << divisao << endl;
break;
case 5: cout << "a potenciação dos números é: " << potencia << endl;
break;
case 6: cout << "a raiz quadrada dos números é: " << raiz << endl;
break;
default: cout << "opção inválida" << endl;
}
}
void menu()
{
cout << "digite o primeiro número: ";
cin >> n1;
cout << endl << "digite o segundo número: ";
cin >> n2;
retorno();
}
int retorno()
{
int esc = 0;
cout << "operações: \nsoma 1 \nsub 2 \nmulti 3 \ndiv 4 \npotencia 5 \nraiz 6\n";
cin >> esc;
escolha(esc);
return esc;
}
-------------------------------------------------
a header file q criei
---------------------------------------------------
#pragma once
float soma(float n1, float n2);
float sub(float n1, float n2);
float multi(float n1, float n2);
float divisao(float n1, float n2);
float potencia(float n1, float n2);
float raiz(float n1);
-------------------------------------------------
o cpp da header file que criei
-----------------------------------------------
#include <iostream>
#include <cmath>
using namespace std;
float soma(float n1, float n2)
{
return n1 + n2;
}
float sub(float n1, float n2)
{
return n1 - n2;
}
float multi(float n1, float n2)
{
return n1 * n2;
}
float divisao(float n1, float n2)
{
return n1 / n2;
}
float potencia(float n1, float n2)
{
return pow(n1, n2);
}
float raiz(float n)
{
return sqrt(n);
}