[Curso] Introducción a la programación en C (IV)
Moderadores: Kravenbcn, largeroliker, fidelcastro, cerealkiller, pspCaracas, m0skit0, LnD, ka69, zacky06
- dark_sasuke
- Moderador Global
- Mensajes: 3379
- Registrado: 03 Sep 2009, 02:13
- Twitter: D4rkyt0
Re: [Curso] Introducción a la programación en C (IV)
ais si tienes razon profe arisma, se me paso xDDD
![Imagen](http://i237.photobucket.com/albums/ff281/Kravenbcn/Otros/mod_global.png)
Re: [Curso] Introducción a la programación en C (IV)
m0skit0 escribió:Primero veréis que ya no aparece #include <stdlib.h>. Esto es por el mero hecho de que no usamos ninguna función definida en ese fichero, por tanto nos sobra.
Disculpa mi ignorancia profe, pero a que te refieres con "funcion definida".
Dame un ejemplo de una funcion definida.
![Imagen](http://i237.photobucket.com/albums/ff281/Kravenbcn/Otros/mod_global.png)
- dark_sasuke
- Moderador Global
- Mensajes: 3379
- Registrado: 03 Sep 2009, 02:13
- Twitter: D4rkyt0
Re: [Curso] Introducción a la programación en C (IV)
Kracker escribió:m0skit0 escribió:Primero veréis que ya no aparece #include <stdlib.h>. Esto es por el mero hecho de que no usamos ninguna función definida en ese fichero, por tanto nos sobra.
Disculpa mi ignorancia profe, pero a que te refieres con "funcion definida".
Dame un ejemplo de una funcion definida.
un funcion definida de una libreria por ejemplo de la libreria <stdio.h> el printf
creo que a eso se refiere el profe
![oki :oki:](./images/smilies/smiles-oki.gif)
![Imagen](http://i237.photobucket.com/albums/ff281/Kravenbcn/Otros/mod_global.png)
- dark_sasuke
- Moderador Global
- Mensajes: 3379
- Registrado: 03 Sep 2009, 02:13
- Twitter: D4rkyt0
Re: [Curso] Introducción a la programación en C (IV)
una funcion definida, es una "palabra" reservada (asi se llama en pascal en C nuse ) la cual nos da ciertas funciones.
por ejemplo el printf imprime por pantalla
el scanf, escanea las pulsaciones del teclado
el while, nos da el bucle
osea la libreria <stdio.h> tiene todas esas funciones dentro, pero otras librerias pueden tener otras funciones que stdio no tiene.
A ver si esta vez lo cojes
![oki :oki:](./images/smilies/smiles-oki.gif)
por ejemplo el printf imprime por pantalla
el scanf, escanea las pulsaciones del teclado
el while, nos da el bucle
osea la libreria <stdio.h> tiene todas esas funciones dentro, pero otras librerias pueden tener otras funciones que stdio no tiene.
A ver si esta vez lo cojes
![Sr. Verde :mrgreen:](./images/smilies/icon_mrgreen.gif)
![oki :oki:](./images/smilies/smiles-oki.gif)
![Imagen](http://i237.photobucket.com/albums/ff281/Kravenbcn/Otros/mod_global.png)
Re: [Curso] Introducción a la programación en C (IV)
Ya caigo.
Dame un ejemplo de una funcion definida de <stdlib.h>.![Microsiervo :ugeek:](./images/smilies/icon_e_ugeek.gif)
Dame un ejemplo de una funcion definida de <stdlib.h>.
![Microsiervo :ugeek:](./images/smilies/icon_e_ugeek.gif)
![Imagen](http://i237.photobucket.com/albums/ff281/Kravenbcn/Otros/mod_global.png)
Re: [Curso] Introducción a la programación en C (IV)
Ojo no confundamos las cosas.
Los ficheros que indicamos con #include se llaman ficheros de cabecera (headers, de ahi el .h). Estos ficheros definen ciertas funciones que nos simplifican la tarea de programación, por ejemplo stdio.h (que viene de standard I/O, entrada/salida estándar) ofrece printf(), scanf(), etc... Para poder usar estas funciones (que cuando lleguéis al capítulo correspondiente entenderéis que es una función, por ahora con usarlas os basta) necesitamos incluir el fichero de cabecera correspondiente, ya que sino el compilador no sabría a qué nos estamos refiriendo con printf.
Por otro lado, están las palabras reservadas, como while, if, else... Estas forman parte del estándar de C, y no hace falta incluír ningún fichero de cabecera para que el compilador las reconozca perfectamente. Ojo, no son funciones.
http://es.wikipedia.org/wiki/Stdlib.h
Los ficheros que indicamos con #include se llaman ficheros de cabecera (headers, de ahi el .h). Estos ficheros definen ciertas funciones que nos simplifican la tarea de programación, por ejemplo stdio.h (que viene de standard I/O, entrada/salida estándar) ofrece printf(), scanf(), etc... Para poder usar estas funciones (que cuando lleguéis al capítulo correspondiente entenderéis que es una función, por ahora con usarlas os basta) necesitamos incluir el fichero de cabecera correspondiente, ya que sino el compilador no sabría a qué nos estamos refiriendo con printf.
Por otro lado, están las palabras reservadas, como while, if, else... Estas forman parte del estándar de C, y no hace falta incluír ningún fichero de cabecera para que el compilador las reconozca perfectamente. Ojo, no son funciones.
Kracker escribió:Dame un ejemplo de una funcion definida de <stdlib.h>
http://es.wikipedia.org/wiki/Stdlib.h
![Imagen](http://i237.photobucket.com/albums/ff281/Kravenbcn/Otros/firma_admin_daxh.png)
- dark_sasuke
- Moderador Global
- Mensajes: 3379
- Registrado: 03 Sep 2009, 02:13
- Twitter: D4rkyt0
Re: [Curso] Introducción a la programación en C (IV)
ups perdon
, venga el caso es que entendiste kracker ![Muy Feliz :D](./images/smilies/icon_e_biggrin.gif)
![Ofuscado :oops:](./images/smilies/icon_redface.gif)
![Ofuscado :oops:](./images/smilies/icon_redface.gif)
![Muy Feliz :D](./images/smilies/icon_e_biggrin.gif)
![Imagen](http://i237.photobucket.com/albums/ff281/Kravenbcn/Otros/mod_global.png)
- hiddenotebook
- Experto
- Mensajes: 634
- Registrado: 28 Dic 2009, 14:56
- Ubicación: En un lugar de la mancha...
Re: [Curso] Introducción a la programación en C (IV)
Código: Seleccionar todo
#include <stdio.h>
int main(int argc, char *argv[])
{
int edad_pedrito = 5;
int edad_josito = 12;
printf("Edad de Pedro ahora: %d\n", edad_pedrito);
printf("Edad de Jose ahora: %d\n", edad_josito);
printf("Edad de Pedro hace dos anios: %d\n", edad_pedrito - 2);
printf("Edad de Jose hace tres anios: %d\n", edad_josito - 3);
printf("La mitad de la edad de Pedro: %d\n", edad_pedrito / 2);
printf("La mitad de la edad de Jose: %d\n", edad_josito / 2);
printf("El triple de la edad de Jose: %d\n", edad_josito * 2);
printf("La suma de las edades de Pedro y Jose: %d\n", edad_josito + edad_pedrito);
getch();
return 0;
}
Lo segundo que algunos notaréis es que la mitad de la variable edad_pedrito (valor 5) es... ¿3? Esto es debido al tipo de datos de int edad_pedrito(integer, entero). Por tanto un entero dividido por un entero da un entero. Así que se redondea hacia el más cercano (hacia arriba si hay igual distancia como en este caso).
Profeee!!! ¿Por que a mi me da 2 en el valor 5? no lo entiendo si lo tengo igual...
Puse mi edad y la de mi chica para probar pero al ver tu explicación, me dije voy a ver el ejemplo que me pone el profesor y nada cambie las edades y que me da "2"¿Qué tengo mal?
![Ofuscado :oops:](./images/smilies/icon_redface.gif)
Código: Seleccionar todo
#include <stdio.h>
int main(int argc, char *argv[])
{
int edad_alberto = 5;
int edad_pili = 12;
printf("Edad de Alberto ahora: %d\n", edad_alberto);
printf("Edad de Pili ahora: %d\n", edad_pili);
printf("Edad de Alberto two years ago: %d\n", edad_alberto - 2);
printf("Edad de Pili three years ago: %d\n", edad_pili - 3);
printf("La mitad de la edad de Alberto: %d\n", edad_alberto / 2);
printf("La mitad de la edad de Pili: %d\n", edad_pili / 2);
printf("El triple de la edad de Pili: %d\n", edad_pili * 2);
printf("La suma de las edades de Alberto y Pili: %d\n", edad_alberto + edad_pili);
getch();
return 0;
}
Spoiler:
![](http://farm4.static.flickr.com/3250/4554162022_2f6c591fca_o.jpg)
Re: [Curso] Introducción a la programación en C (IV)
hiddenotebook escribió:¿Por que a mi me da 2 en el valor 5? no lo entiendo si lo tengo igual...
Todo depende de cómo se porte el compilador y también el procesador con estos cálculos. El caso es que está mal.
También tienes mal el cálculo del triple de la edad, pues calculas el doble.
Ánimo
![oki :oki:](./images/smilies/smiles-oki.gif)
![Imagen](http://i237.photobucket.com/albums/ff281/Kravenbcn/Otros/firma_admin_daxh.png)