Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - -Gtz-

#1
Programación C/C++ / Re: Problema con pow()
6 Abril 2012, 06:14 AM
Que tonto soy, sorry sorry, bueno parece es un problema del compilador, lo compile desde terminal y me lo compilo perfectamente, creo que debí haber hecho eso desde un principio, aunque no entiendo por que actua de esa manera el compilador?
#2
Programación C/C++ / Re: Problema con pow()
6 Abril 2012, 05:53 AM
Si creo que -lm es para que al compilar en gcc puedas usar sin nungun problema la libreria math.h, eso lo comprendo, lo que no es entiendo es por que asi no me compila:

abase = pow(lado, 2);
alateral = 4 * abase;
atotal = 6 * abase;
volumen = pow(lado, 3);


pero si cambio el 3 por un 2:

abase = pow(lado, 2);
alateral = 4 * abase;
atotal = 6 * abase;
volumen = pow(lado, 2);


me compila sin ningun problema

Nota: Uso el compilador ZinjaI en Fedora 16
#3
Hola que tal , bueno realmente no estoy tan seguro de por que lo primero del "WARNINGS: function should return a value", pero creo que te puedo ayudar en lo del "=" y "==".

Bueno el "=", por las clases de matematicas lo conocemos como el signo de igual, pero en C funciona algo diferente, en C es el signo de asignación, es decir si tienes:

a = b;

Esta diciendo: "asigna el valor de "b" a "a"

Y cuando se utilizan dos "==" se utiliza para comparar o osea que ahora si se utiliza como el signo de igual, es decir:

a == b;

y se le "a" es igual a "b"?

dando como resultado un 1 o un 0, segun sea el caso.
#4
Programación C/C++ / Problema con pow()
6 Abril 2012, 04:13 AM
Hola que tal, veran al compila este programa:

#include <stdio.h>
#include <math.h>

int main(void)
{
float lado, abase, alateral, atotal, volumen;

printf("Introduzca la medida del lado del cubo: ");
scanf("%f", &lado);

abase = pow(lado, 2);
alateral = 4 * abase;
atotal = 6 * abase;
volumen = pow(lado, 3);

printf("el area de la base es %.2f, el area lateral %.2f, al area total %.2f y el volumen es %.2f", abase, alateral, atotal, volumen);


al compilarlo me aparece:

Citarps113.c:14: undefined reference to 'pow'
collect2: ld returned 1 exit status

parece que el error esta en el segundo pow(), pero si cambio el 3 del exponente por un 2 como el primero si me lo compila, por que pasa estos con algún otro valor diferente a 2?
Claro que lo puedo evitar poniendo:

volumen = lado * lado * lado

pero quiero saber por que me tira el error.