hacker


Ingresar con nombre de usuario, contraseña y duración de la sesión
| Portal Hacker | Editorial | Descargas | Ezine |
Inicio Ayuda Ingresar Registrarse
10 de Octubre de 2008, 10:43:53
Noticias: Caracteres maximos de las firmas
Para ver este enlace Registrate o Inicia Sesion
> leer

+  Foros pOrtal Hacker
|-+  Programacion
| |-+  C / C++ (Moderadores: mycrox, TxShAcK)
| | |-+  Curso C/C++ desde 0
0 Usuarios y 1 Visitante están viendo este tema. « anterior próximo »
Páginas: 1 [2] 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 Ir Abajo Imprimir
Autor Tema: Curso C/C++ desde 0  (Leído 20086 veces)
mycrox
Moderador
*****
Desconectado Desconectado

Mensajes: 597


"Católico Apostólico Romano. Seguidor de Cristo"


Ver Perfil
« Respuesta #15 : 02 de Diciembre de 2007, 10:46:15 »

Hola denuevo, aca poniendonos al dia con un nuevo capítulo del curso.

Ojala el admin general de lenguajes de programación pueda ordenar los post para un mejor entendimiento.


ASIGNACIONES DE VALORES.

Una asignación quiere decir que "entrego" un valor a una variable determinada. En lenguaje C esas asignaciones se hacen de derecha a izquierda, ya que al revés nos saldrá error.

ejemplos buenos:

a=5 //el valor 5 se guarda en la variable a
a=b //el valor de b se guarda en la variable a.

ejemplos malos:

5=a;
a+b=c;

si nos fijamos, los ejemplos malos tienen lógica, pero en lenguaje C eso no existe.

----------------------------------------------------------------------------------------------------------------------------

IMPRIMIR DATOS POR PANTALLA.

En lenguaje C existe una función llamAda printf que quiere decir "imprimir de first y primero de f (printf)"

¿El primero que?
El primer dispositivo de salida que en este caso es el monitor.

Sintaxis: printf("texto");

Veamos un ejemplo:



Pasaré a explicar el código.

#include <stdio.h>
#include <stdlib.h>
-- Son las librerias con las funciones necesarias para que funcione el programa, en este caso la stdio para el printf y la stdlib para el system("pause")

int main() -- Funcion principal.

printf("Esto es una cadena de texto\n"); -- La funcion printf imprimirá en la pantalla todo lo que tenga entre comillas. Lo que se añade, el "\n", quiere decir salto de línea.

system("pause"); -- Simula una instruccion del MS-DOS que en este caso es pause para que puedas visualisar lo que hay en pantalla. Prueba sin esta funcion y te aclararás más.

imprimirá lo siguiente:



----------------------------------------------------------------------------------------------------------------------------

SECUENCIAS DE ESCAPE

Tambien existen secuencias de escape, son como complementos a la funcion printf.

Las secuencias son las siguientes:

\a - Sonido audible
\b - Retroceso
\n - Salto de linea
\t  - Tabulacion

Su utilizacion es dentro dela funcion printf, solo prueben y veran de que les hablo, ya que es mejor aprender haciendo.

----------------------------------------------------------------------------------------------------------------------------


La funcion printf también puede imprimir variables y operaciones despues del cierre de comillas y separados con una coma con el signo % (porcentaje) y la inicial del tipo de dato,a continuación se muestra más claramente si no entendiste:

printf("la variable es %i", a);

suponiendo que la variable a es de tipo entero (int) se imprimirá el valor de dicha variable.

Veamoslo de una manera mas completa:



Explicación del código:


declaro las librerias correspondient es y luego dentro del main, declaro la variable a como tipo de dato entero, en este caso, le asigno el valor de 5.

Luego la imprimo con el símbolo %i, su inicial es i porque el dato es INT.

Se imprimirá lo siguiente:



Veamos otro ejemplo pero con otro tipo de dato:




En este caso para exactamente lo mismo, pero ahora es %f debido a que el dato es de tipo float, es decir, de coma flotante (con decimales).

Se imprime lo siguiente:




----------------------------------------------------------------------------------------------------------------------------

Tambien se puede imprimir mas de una variable, tan solo hay que separalas por comas para diferenciarlas .

printf("la variable a es %i y la variable b es %i", variable1, variable2);

el primer %i pertene a la variable variable1 y el segundo %i pertenece a variable 2

----------------------------------------------------------------------------------------------------------------------------

IMPRIMIENDO OPERACIONES.

Otro de tipo de operaciones puede ser imprimir operaciones como sumas, restas, multiplicacion es y un sinfin de cosas que mas adelante veremos.

veamos un ejemplo:



Si podrán darse cuenta, declaro a y b con valores iniciales y luego los sumo, tan solo imprimo su resultado como %i, ya que el resultado es un entero.

Se imprime lo siguiente:



----------------------------------------------------------------------------------------------------------------------------

PRIXIMO CAPITULO, LEER DATOS POR TECLADO.

saludos!
« Última modificación: 09 de Diciembre de 2007, 10:20:03 por mycrox » En línea

Deseas aprender a programar de verdad??
Haz click
Para ver este enlace Registrate o Inicia Sesion
Aqui

TxShAcK
Moderador Global
*****
Desconectado Desconectado

Mensajes: 1,472


Prefiero morir de pie, a vivir arrodillado


Ver Perfil WWW
« Respuesta #16 : 06 de Diciembre de 2007, 12:14:52 »

Bueno, para completar un poco mas el capitulo anterior que hizo Mycrox, voy a encargarme de mostrarles como serian esos mismos codigos, pero con el lenguage de C++, ya que el comando printf es propio de C (pero sirve tambien para C++) mientras que el cout, tipico de C++ no es posible usarlo para codigos en C.

Bueno, comenzare explicando, el 1º ejemplo que dijo, sobre imprimir un texto en pantalla, pero con el comando cout

Utilizare el mismo ejemplo para que este mas claro todo:



Y como podemos comprobar, imprime esactamente lo mismo que con el comando printf



Bueno, en esta ocasion, voy a analizar el codigo completamente, dando todos los detalles que se, para que puedan aprender lo mejor posible.

La primera linea:

Citar
#include <iostream>

Lo que hace esto, es añadir un archivo llamado iostream (libreria) dentro de nuestro codigo, que vamos a utilizar.

El primer caracter, es el simbolo # que lo que hace es actuar sobre el preprocesador.
Cada vez que comenzamos a compilar, el preprocesador es el primero en actuar, y lo que hace, es buscar por todo nuestro codigo, las lineas que empiezen por el simbolo # y lo que hace, es actuar sobre ellas, antes que se ejecute el compilador.

A continuacion del simbolo # vemos que aparece la palabra include, que lo que hace, es avisar de que devemos incluir (include) un archivo que sera usado en nuestro codigo, que en este caso sera iostream.

Y por ultimo, queda de explicar, para que se ponen alrededor de iostream los simbolos < >
Lo que hacen estos simbolos, es indicar al compilador, donde se encuentra el archivo iostream, para asi no tener que incluir la ruta.
Estos simbolos < > dicen que el archivo a buscar, esta en la carpeta include, que veremos en el directorio donde tenemos instalado en compilador Dev-C++



Bueno, con esto creo que queda claro, lo que hace cada parte el codigo...

Ahora pasemos a al 2º linea:

Código:
int main()

Aqui empieza el programa que escribimos...
Com vemos, empieza por una funcion llamada main().

Una funcion, en general, es un bloque de codigo, que ejecuta una o mas acciones.

Como todas las funciones, main(), tiene que indicarnos el valor que deve de devolvernos, que en este caso es un entero, por eso lo indicamos con la palabra int

A continuacion, en la liea siguiente, vemos que aparece una llave { y de la misma forma, acana con otra llave } que lo que hacen, es indicar, que es lo que forma parte de la funcion.

Pasemos a la siguiente linea:

Código:
std::cout << "Esto es una cadena de texto\n";

Lo que hace esta linea, es indicar que utilizaremos el comando cout, para imprimir un mensaje en pantalla.

El comando cout, biene con la libreria estandar en todos los compiladores, y por lo tanto, lo que hacemos a la hora de escribir std:: es indiarle al compilador, que cout, forma parte de la libreria estandar. Esto tampoco es necesario, tal y como vieron en el primer capitulo, pero es lo correcto a la hora de programar, ya que podemos indicarle otro distinto a la estandar (std) por lo que nos podria imprimir cosas diferentes...

El std es conocido como el "namespace" que mas adelante veremos mas sobre ellos.

El cout es el "objeto"

El << es el "operador" que en este caso nos indica que es un operador de salida, que lo que hace, es mostrar en la consola el texto que hayamos puesto detras.

Y lo que esta entre las " " en este caso "Esto es una cadena de texto\n" es conocido como el string, es decir, caracteres escritos. El \n lo que indica, es que una vez mostrado el texto, debe llebar acabo un salto de linea.

Bueno, con eso que acabamos de explicar, creo que serian perfectamente capazes de hacer el 2º codigo que indico Mycrox, empleando la funcion cout.

Espero que hayan entendido todo bien.

Esta a sido una clase un poco mas teorica tal vez, donde me e centrado un poco mas, en mostrar que hace cada parte del codigo, ya que creo que es necesario saberlo...

Un saludo, y hasta pronto.
En línea

Por una red libre de información y sin censuras



"Podrán morir las personas, pero jamas sus ideales"


Para ver este enlace Registrate o Inicia Sesion
Si algún tema del foro te parece inapropiado, crees que debe moverse o cerrarse, repórtalo aquí

(No respondo dudas por MP)
Para ver este enlace Registrate o Inicia Sesion
Reglas
<->
Para ver este enlace Registrate o Inicia Sesion
Subir imagen al foro
Daniel_G
Recien llegado
*
Desconectado Desconectado

Mensajes: 22



Ver Perfil
« Respuesta #17 : 06 de Diciembre de 2007, 10:39:29 »

Gracias por el manual, estoy empezando a aprender, aun no tengo dudas pero seguro que me iran surgiendo. De momento ya pove con las sumas y el texto espero que continuen pronto jeje
En línea

Daniel_G
Recien llegado
*
Desconectado Desconectado

Mensajes: 22



Ver Perfil
« Respuesta #18 : 06 de Diciembre de 2007, 10:42:53 »

Hola otra vez, ya prove a compilar y ejecutar. ¿No se puede hacer algo para que no aparezca en la ventana del msdos lo de presionar una tecla para seguir?
En línea

TxShAcK
Moderador Global
*****
Desconectado Desconectado

Mensajes: 1,472


Prefiero morir de pie, a vivir arrodillado


Ver Perfil WWW
« Respuesta #19 : 06 de Diciembre de 2007, 10:53:15 »

Hola Daniel_G, en primer lugar, un saludo y decirte que utilizes el boton modificar, si vas a postear de forma seguida, para evitar el doble post Wink
No pasa nada, solo para que tengas en cuenta para la proxima vez.

Con respecto a tu pregunta, pues es sencillo.

Para que no aparezca, haz la siguiente modificacion.. ..

system ("pause > nul")

de forma que si por ejemplo as provado con el 1º codigo del tutorial, quedaria asi:

Código:
#include <iostream.h>
#include <stdlib.h>

int main()
{
    cout << "Hola mundo" << endl;
    system("pause > nul");
    return 0;
}

Un saludo
En línea

Por una red libre de información y sin censuras



"Podrán morir las personas, pero jamas sus ideales"


Para ver este enlace Registrate o Inicia Sesion
Si algún tema del foro te parece inapropiado, crees que debe moverse o cerrarse, repórtalo aquí

(No respondo dudas por MP)
Para ver este enlace Registrate o Inicia Sesion
Reglas
<->
Para ver este enlace Registrate o Inicia Sesion
Subir imagen al foro
Daniel_G
Recien llegado
*
Desconectado Desconectado

Mensajes: 22



Ver Perfil
« Respuesta #20 : 06 de Diciembre de 2007, 11:31:14 »

AH Ok, asi ya no aparece, gracias. y perdon por lo del doble post ese, no sabia.

 Wink
En línea

mycrox
Moderador
*****
Desconectado Desconectado

Mensajes: 597


"Católico Apostólico Romano. Seguidor de Cristo"


Ver Perfil
« Respuesta #21 : 06 de Diciembre de 2007, 02:03:17 »

tambien, como dijo mi ya "colegaWink Txshack, puedes evitarte el molesto "Presione una tecla para continuar" y hacer que el usuario continue solamente apretando ENTER.

oitra forma de hacerlo seria con un getchar();


cambie el system("pause") por getchar(); y veras a lo que me refiero.

saludos y espero que los users sigan el manual para que puedan aprender. xD
« Última modificación: 06 de Diciembre de 2007, 02:21:29 por mycrox » En línea

Deseas aprender a programar de verdad??
Haz click
Para ver este enlace Registrate o Inicia Sesion
Aqui

Daniel_G
Recien llegado
*
Desconectado Desconectado

Mensajes: 22



Ver Perfil
« Respuesta #22 : 08 de Diciembre de 2007, 12:47:45 »

tambien, como dijo mi ya "colegaWink Txshack, puedes evitarte el molesto "Presione una tecla para continuar" y hacer que el usuario continue solamente apretando ENTER.

oitra forma de hacerlo seria con un getchar();


cambie el system("pause") por getchar(); y veras a lo que me refiero.

saludos y espero que los users sigan el manual para que puedan aprender. xD

ok Wink provare asi tambien haber
En línea

Matthew Farrel
NZ2
**
Desconectado Desconectado

Mensajes: 122


El hacker, es la mejor creaccion de Dios


Ver Perfil
« Respuesta #23 : 09 de Diciembre de 2007, 07:46:45 »

Felicidades TxShAcK y mycrox, es un manual estupendo, y tengo tantas cosas que decir que no se por donde empezar.

1. Lo mas importante: Cuando le doy a ejecutar y compilar, lo dejo como esta, y no me crea el .exe, solo el maldito archivo .cpp que me devuelve a dev c++

2. En c++ existe el if y el goto de batch?

3. No se puede cambiar la pantalla del .exe?, ya que para obtener el mismo resultado que batch, pues uso batch y via.

Eso era todo, saludos y felicidades de nuevo.
En línea

Si te falla linux vete a vivir al campo

TxShAcK
Moderador Global
*****
Desconectado Desconectado

Mensajes: 1,472


Prefiero morir de pie, a vivir arrodillado


Ver Perfil WWW
« Respuesta #24 : 09 de Diciembre de 2007, 08:54:49 »

Felicidades TxShAcK y mycrox, es un manual estupendo, y tengo tantas cosas que decir que no se por donde empezar.

1. Lo mas importante: Cuando le doy a ejecutar y compilar, lo dejo como esta, y no me crea el .exe, solo el maldito archivo .cpp que me devuelve a dev c++

2. En c++ existe el if y el goto de batch?

3. No se puede cambiar la pantalla del .exe?, ya que para obtener el mismo resultado que batch, pues uso batch y via.

Eso era todo, saludos y felicidades de nuevo.

Gracias Wink

Mira haber si iendo a herramientas, opciones del compilador, pones <predeterminado, puesto qe te deveria crear en .exe, y tal ves lo tengas en otro directorio guadado...

el if Y goto, tambien se pueden usar en C++ ya lo veremos Grin

Segun tengo entendido en C o C++ el tipo de aplicación debe ser "aplicación de ventana" o "Window application", es decir, la ventana del CMD

Aunque para crear lo que tu quieres decir, hay metodos claro esta, por ejemplo yo e leido algo sobre el TheForger Win32 API aunque no se tampoco muy bien como va, pero echale un vistazo a este enlace:
Para ver este enlace Registrate o Inicia Sesion
VER


En línea

Por una red libre de información y sin censuras



"Podrán morir las personas, pero jamas sus ideales"


Para ver este enlace Registrate o Inicia Sesion
Si algún tema del foro te parece inapropiado, crees que debe moverse o cerrarse, repórtalo aquí

(No respondo dudas por MP)
Para ver este enlace Registrate o Inicia Sesion
Reglas
<->
Para ver este enlace Registrate o Inicia Sesion
Subir imagen al foro
mycrox
Moderador
*****
Desconectado Desconectado

Mensajes: 597


"Católico Apostólico Romano. Seguidor de Cristo"


Ver Perfil
« Respuesta #25 : 09 de Diciembre de 2007, 09:36:43 »

Felicidades TxShAcK y mycrox, es un manual estupendo, y tengo tantas cosas que decir que no se por donde empezar.

1. Lo mas importante: Cuando le doy a ejecutar y compilar, lo dejo como esta, y no me crea el .exe, solo el maldito archivo .cpp que me devuelve a dev c++

2. En c++ existe el if y el goto de batch?

3. No se puede cambiar la pantalla del .exe?, ya que para obtener el mismo resultado que batch, pues uso batch y via.

Eso era todo, saludos y felicidades de nuevo.

atencion personalizada. .. jajajajaja

aunque Txshack te respondio, te dire otras cosillas que te serviran.

Problema 1: Es muy extrano lo que cuentas, si no funciona lo que te dice Txshack, reinstala el DevC++.

Problema 2: Claro que existe, si te fijas bien, la funcion if es una funcion condicional que mu pronto veremos. La funcion goto
 tambien existe, pero se dejo de utilizar cuando C se convirtio en un lenguaje estructurado, promesa que mas adelante lo veremos, por mientras, no lo utilices si averiguas. En muchos manuales o tutoriales sale como se usa el goto pero yo no lo recomienda ya que rompe todos los esquemas de la programacion estructurada.

Problema 3: En lenguaje C puedes usar todo tipo de ventanas pero su uso es algo mas avanzado, en el transcurso del manual solamente usaremos la ventana clasica MS-DOS. Primero se debe aprender la programacion, los graficos van al final.... bien al final.

bueno, creo que mas rato aportare otro capitulo.

saludos.
En línea

Deseas aprender a programar de verdad??
Haz click
Para ver este enlace Registrate o Inicia Sesion
Aqui

mycrox
Moderador
*****
Desconectado Desconectado

Mensajes: 597


"Católico Apostólico Romano. Seguidor de Cristo"


Ver Perfil
« Respuesta #26 : 09 de Diciembre de 2007, 11:03:49 »

LO PROMETIDO SE CUMPLE:


Ya hemos visto:

-Descarga e insalacion del compilador DevC++
-Generalidades
-Tipos de datos y variables
-Identificadores
-Palabras reservadas
-Librerias
-Tipos de errores
-Asignaciones
-Imprimir datos en pantalla (printf y cout)


A continuacion:  LEER DATOS POR TECLADO.

En lenguaje C existen varias maneras de ingresar varios tipos de datos, por el momento, veremos como ingresar tipos de datos numericos, no nos vamos a meter con caracteres (letras) ya que por lo que hemos avanzado, quedarian colgados. Para los curiosos, las cadenas de caracteres se llaman strings.

Bueno, vamos al grano y basta de bla bla.

FUNCION:

la funcion para leer datos por teclado es scanf.

sintaxis:

scanf("%tipo de dato", &variable);

veamos varios ejemplos para que esto quede totalmente claro.



El resultado es el siguiente:



Explicacion del codigo:

- Declaro las librerias.
- Declaro la funcion main.
- Declaro la variable numero como variable entera.
- imprimo con printf diciendole al usuairo que ingrese un numero.
- Utilizo la funcion scanf y guardo la variable numero en memoria.
- Luego imprimo el resultado de ese scanf o variable.


Veamos ahora otro ejemplo pero con dos variables:



El resultado es el siguiente:



Explicacion del codigo:

- Declaro las librerias.
- Declaro la funcion main.
- Declaro las variables numero1 y numero 2 como variables enteras (int).
- Imprimo que ingrese un numero, lo guardo en la variable numero1.
- vuelvo a imprimir que ingrese otro numero y lo guardo en la variable numero2.
- Luego imprimo las dos variables que el usuario ingreso.

---------------------------------------------------------------------------------------------------------------------------

- Si se habran dado cuenta, utilizo en el scanf el tipo de dato "%i" que quiere decir "int", es decir, entero. Si yo escribiese "%f" la variable tendria que ser float, es decir, coma flotante o decimales.

- Luego utilizo el & (ampersand o algo asi xD) que indica al PC que la variable se guarde en una posicion de memoria aleatoria (en la RAM). Esto es de suma importancia, ya que si no antepones el & antes de la variable, no te saldra error, pero el PC no guardara el valor que le ingresaste.

-Por ultimo escribo el nombre de la variable donde voy a guardar el valor que ingrese.

---------------------------------------------------------------------------------------------------------------------------

Veamos un ultimo ejemplo para que todo quede mas claro:



El resultado es el siguiente:



Explicacion del codigo:

- Declaro las librerias.
- Declaro la funcion main.
- Declaro las variables numero1 y numero 2 como variables enteras (int).
- Declaro la variable numero3 pero como un tipo de dato con decimales (float).
- Imprimo que ingrese los numeros.
- Por cada impresion, guardo en su respectiva variable el valor ingresado.
- Si podran notar, en la variable numero3, el scanf tiene "%f" debido a que la variable es de tipo float.
- Luego imprimo una operacion dentro del printf.
- Imprimo la variable numero3 y la sumo con el numero 1. Imprimo su resultado.

---------------------------------------------------------------------------------------------------------------------------

Como comprenderan, el uso de la funcion scanf es esencial al momento de crear un programa, ya que no sabemos con que valores va a trabajar el usuario y esto nos permite guardar cualquier valor en una variable cualquiera para que despues podamos trabajar con ella.

No es dificil usar scanf pero es sumamente importante.

Espero verlos el proximo capitulo.

saludos.
« Última modificación: 09 de Diciembre de 2007, 11:17:06 por mycrox » En línea

Deseas aprender a programar de verdad??
Haz click
Para ver este enlace Registrate o Inicia Sesion
Aqui

Matthew Farrel
NZ2
**
Desconectado Desconectado

Mensajes: 122


El hacker, es la mejor creaccion de Dios


Ver Perfil
« Respuesta #27 : 10 de Diciembre de 2007, 12:25:13 »

Bueno, como a veces compilaba y a veces no, hice lo que me dijistes de reinstalar dev, y ahora es un hacha.

Gacias y Saludos
« Última modificación: 10 de Diciembre de 2007, 04:40:54 por Matthew Farrel » En línea

Si te falla linux vete a vivir al campo

TxShAcK
Moderador Global
*****
Desconectado Desconectado

Mensajes: 1,472


Prefiero morir de pie, a vivir arrodillado


Ver Perfil WWW
« Respuesta #28 : 10 de Diciembre de 2007, 02:06:59 »

Bueno, como a veces compilaba y a veces no, hice lei que me dijistes de reinstalar dev, y ahora es un hacha.

Gacias y Saludos

jaja, me alegra que se te solucionase Grin

Ya lei el nuevo capitulo mycrox, esta muy bien jaja ^^

Yo asta este fin de semana no podre hacer nada, nado muy liado con los estudios y proyectos finales...

Un saludo.
En línea

Por una red libre de información y sin censuras



"Podrán morir las personas, pero jamas sus ideales"


Para ver este enlace Registrate o Inicia Sesion
Si algún tema del foro te parece inapropiado, crees que debe moverse o cerrarse, repórtalo aquí

(No respondo dudas por MP)
Para ver este enlace Registrate o Inicia Sesion
Reglas
<->
Para ver este enlace Registrate o Inicia Sesion
Subir imagen al foro
alain_eb8
NZ1
*
Desconectado Desconectado

Mensajes: 25



Ver Perfil
« Respuesta #29 : 11 de Diciembre de 2007, 02:31:46 »

grax por el manual, ya estoy empezando a estudiar el lenguaje C++ aunke va ser dificil comprenderlo =S de todos modos grx  kool
En línea


Para ver este enlace Registrate o Inicia Sesion


Para ver este enlace Registrate o Inicia Sesion
Páginas: 1 [2] 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 Ir Arriba Imprimir 
« anterior próximo »
Ir a:  


Ingresar con nombre de usuario, contraseña y duración de la sesión

Powered by SMF 1.1.6 | SMF © 2006-2008, Simple Machines LLC hacker

Juegos gratis - Articulos PHP - Juegos - Trucos - Letras - Juegos - Juegos Online