Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: matver en 15 Marzo 2018, 23:41 pm



Título: no funciona
Publicado por: matver en 15 Marzo 2018, 23:41 pm
Alguien puede decirme porque no funciona este programa bajo linux:
Código
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. int main (void){
  5.  
  6. cout<<"El cuadradro de 27 es: "<<cuadrado(27)<<endl;
  7. cout<<"El cubo de 27 es: "<<cubo(27)<<endl;
  8. return 0;
  9. }
  10.  
  11.  
  12. int cuadrado (int n){
  13. return n*n;
  14. }
  15. int cubo(int n){
  16. return n*n*n;
  17. }
  18.  
  19.  
  20.  




In function ‘int main()’:
programa1.cpp:6:45: error: ‘cuadrado’ was not declared in this scope
 cout<<"El cuadradro de 27 es: "<<cuadrado(27)<<endl;
                                             ^
programa1.cpp:7:36: error: ‘cubo’ was not declared in this scope
 cout<<"El cubo de 27 es: "<<cubo(27)<<endl;

no se como borrar el post pero el error estaba en no declarar la función antes del main.


Título: Re: no funciona
Publicado por: dariodr01 en 16 Marzo 2018, 04:36 am
Te falto declarar los prototipos de funciones.

Código
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. //te falto esto, prototipo de funciones.
  5. int cuadrado(int);
  6. int cubo(int);
  7.  
  8. int main (void){
  9.  
  10.  cout<<"El cuadradro de 27 es: "<<cuadrado(27)<<endl;
  11.  cout<<"El cubo de 27 es: "<<cubo(27)<<endl;
  12.  
  13.  return 0;
  14. }
  15.  
  16.  
  17. int cuadrado (int n){
  18.  return n*n;
  19. }
  20.  
  21. int cubo(int n){
  22.  return n*n*n;
  23. }
  24.