Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: ElboxD en 5 Diciembre 2012, 09:57 am



Título: Consultas sobre lenguaje de programación C
Publicado por: ElboxD en 5 Diciembre 2012, 09:57 am
Buenas soy nuevo en el foro y también en el mundo de la programación, y tengo un par de consultas:

1° Cuál es la principal diferencia entre C y C++ ?
2° Si practico en Dev C++, tendré que estudiar todo de nuevo para comenzar a trabajar en C o en C++? O son similares?
3° Y Por último, me gustaría saber cómo se escribe la siguiente función en lenguaje pascal: (http://img838.imageshack.us/img838/9556/113p.gif) (http://imageshack.us/photo/my-images/838/113p.gif/)

Muchas gracias de antemano por sus respuestas.


Título: Re: Consultas sobre lenguaje de programación C
Publicado por: barnix456 en 5 Diciembre 2012, 17:14 pm
Me suena a tarea, yo no se mucho, pero C es un lenguaje estructurado, y C++ es orientado a objetos, y si tienen mucho en común C++ es por decirlo una actualización de C y lo de pascal, intenta poner aunque sea una idea tuya... 


Título: Re: Consultas sobre lenguaje de programación C
Publicado por: ElboxD en 5 Diciembre 2012, 21:46 pm
Gracias por la respuesta, no me quedo del todo claro pero ya tengo una idea y en cuando a lo de la función transcrita al lenguaje, me equivoqué, pues es muy sencillo escribirlo en pascal y lo que me piden es escribirlo en C, y es ahí que no me sale pues este último es distinto a Pascal.

Espero puedan ayudarme por favor, aquí escribo mi intento, espero me corrijan por favor.

Código:
y=x*(1-2*b)/(cosx+c)-(x+1)/(2*a);

Dónde está el error ?

Desde ya, muchas gracias.


Título: Re: Consultas sobre lenguaje de programación C
Publicado por: Legnak en 6 Diciembre 2012, 01:17 am
Código:
y=x*(1-2*b)/(cos(x)+c)-(x+1)/(2*a);


Título: Re: Consultas sobre lenguaje de programación C
Publicado por: ElboxD en 6 Diciembre 2012, 03:48 am
Muchas gracias por sus respuestas !


Título: Re: Consultas sobre lenguaje de programación C
Publicado por: dato000 en 6 Diciembre 2012, 04:55 am
a modo de pseudocodigo solo tienes que generalizar los parentesis de forma que resuelvan por espacios separados los segmentos tanto de los númeradores como denominadores de cada fracción por separado.

Citar

(http://img838.imageshack.us/img838/9556/113p.gif)

y = ( ( x*(1-2*b) ) / (cos(x)+c) ) - ( (x+1) / (2*a) );



Si aprendes C aprenderas C++, solo coge un libro y haz los fucking ejercicios, pero el esfuerzo es personal, ser un buen programador requiere de esfuerzo, aqui hay gente que se ha quemado las pestañas resolviendo retos y ayudando a muchos que como tu o como yo vienen con dudas, pero eso es porque le dedican una cantidad de tiempo y esfuerzo mental muy grande.

slds


Título: Re: Consultas sobre lenguaje de programación C
Publicado por: ElboxD en 6 Diciembre 2012, 10:10 am
Agradezco todas sus respuestas, me sirvieron de mucho y ahora he aprendido algo más. Sólo tengo una última consulta, casi boba  :P

Código:
#include <stdio.h>
#include <math.h>
#include <conio.h>
int main()
{
double x,y,s,w;
printf("x="); scanf("%lf",&x);
printf("y="); scanf("%lf",&y);
s=1+x+pow(x,2)/2+pow(x,3)/3+pow(x,4)/4;
w=x*(sin(x)+cos(y));
printf("s=%1.2f\n",s);
printf("w=%1.2f\n",w);
printf("Press any key");
getch();
}

He escrito ese "programa" y las respuestas son las siguientes:

Para:

x=0.33
y=0.02

Sale:

s=1.40
w=0.44

Y es casi perfecto pero yo quiero que me salgan con 4 decimales, en ese caso ¿Qué debo cambiar en mi código? y ¿Para qué sirve el
Código:
getch();
?

PD: He escrito este código mirando uno que ya estaba listo.

Gracias de antemano, son muy amables.  ;-)


Título: Re: Consultas sobre lenguaje de programación C
Publicado por: ElboxD en 6 Diciembre 2012, 11:39 am
Chicos no se preocupen, ya sé cómo:

Código:
#include <stdio.h>
#include <math.h>
#include <conio.h>
int main()
{
double x,y,s,w;
printf("x="); scanf("%lf",&x);
printf("y="); scanf("%lf",&y);
s=1+x+pow(x,2)/2+pow(x,3)/3+pow(x,4)/4;
w=x*(sin(x)+cos(y));
printf("s=%1.2f\n",s);
printf("w=%1.2f\n",w);
printf("Press any key");
getch();
}

Sólo debo cambiar lo que está en rojo:

printf("s=%1.2f\n",s);
printf("w=%1.2f\n",w);

Por:

printf("s=%1.4f\n",s);
printf("w=%1.4f\n",w);

Pues el número luego del decimal indica cuantos decimales, valgan redundancias, tomará la respuesta.  ;-)

Gracias por todo !


Título: Re: Consultas sobre lenguaje de programación C
Publicado por: rir3760 en 6 Diciembre 2012, 17:58 pm
¿Para qué sirve el
Código:
getch();
?
La mayoría de los IDEs en MS Windows (por ejemplo Visual C++, Lcc-win32, Code::Blocks, etc.) generan una pausa de forma automática cuando se ejecuta una aplicación de consola.

Una excepción a ello es Dev-C++, con este se debe agregar de forma manual la pausa cuando hay formas mejores (en el sentido de no agregar algo que, siendo estrictos, no es parte del programa) de hacerlo (por ejemplo un script).

En cuanto a la función getch no se recomienda su uso, el porque se describe en detalle en el tema |Lo que no hay que hacer en C/C++. Nivel basico| (http://foro.elhacker.net/programacion_cc/lo_que_no_hay_que_hacer_en_cc_nivel_basico-t277729.0.html).

Un saludo


Título: Re: Consultas sobre lenguaje de programación C
Publicado por: ElboxD en 6 Diciembre 2012, 22:38 pm
Entonces debo dejar de utilizar la librería conio.h, de ser así ¿Qué librería y/o comando debo comenzar a usar para pausar el sistema?

Leí en el link que puedo usar:  getchar(); o cin.get();

En qué librerías se encuentran ambos ?

Gracias :)


Título: Re: Consultas sobre lenguaje de programación C
Publicado por: 0xDani en 6 Diciembre 2012, 22:40 pm
cin.get() es de C++, en C puedes usar getchar(), en stdio.h