martes, 10 de noviembre de 2015

MODO GRAFICO EN DEV C++

La librería winbgim.h a sido creada originalmente por Konstantin Knizhnik's winbgi shareware  y posteriormente modificada por Mark Richardson  y Michael Main, esta librería tiene como objetivo emular la librería graphics.h de Borland C++ y facilitar algunas funciones del Mouse. La ventaja de esta librería es que nos permite crear aplicaciones gráficas con compiladores GNU tales como el ambiente de desarrollo Dev C++ de la misma manera como se crean en el compilador comercial Borland C++.

Originalmente el autor nos ofrecía una colección de archivos que se debían ubicar en carpetas especiales e incluir ciertos comandos al la configuración del linker y del compilador, esta operación tenia cierta  complejidad y para muchos se convirtió en un dolor de cabeza.
Con el fin de facilitar el uso de esta librería me tome la libertad de realizar un instalador para la versión 4.9.9.2 del Dev C++ que realiza todas las configuraciones necesarias.
Ahora cada ves que queramos realizar un programa con soporte para gráficos solo es necesario seguir los siguientes pasos:
1 - Crear un nuevo proyecto
2 -  Seleccionar una aplicación de consola con gráficos
Y listo!
Esta librería no solo soporta los 16 colores de la librería graphics.h de Borland  mediante las constantes BLACK BLUE GREEN CYAN RED MAGENTA BROWN LIGHTGRAY DARKGRAY LIGHTBLUE LIGHTGREEN LIGHTCYAN LIGHTRED LIGHTMAGENTA YELLOW WHITE
sino que es posible usar colores rgb, lo cual nos da   al rededor de 16 millones de colores incrustando el macro “COLOR(r,g,b)” en donde originalmente estaría el indicado el color.

El resto de las funciones gráficas funcionan igual que en la librería original graphics.h y pueden encontrarse  en la ayuda del Turbo C++ de Borland o e cualquier manual de este mismo.

 Funciones  principales de la librería winbgim.h
Función
Tarea
void circle (int x, int y, int radius);
Dibuja un circulo en x,y de radio radius
void cleardevice (void);
Borra la pantalla
void line (int x1, int y1, int x2, int y2);
Traza una línea desde x1,y1 hasta x2,y2
void lineto (int x, int y)
Traza una línea desde la posición actual de cursor hasta  x,y
void putpixel (int x, int y, int color);
Dibuja un pixel en x,y de color color
void rectangle (int left, int top, int right, int bottom);
Dibuja un rectangulo de esquenas top,left y right,bottom
void setcolor (int color);
Establece el color actual.
int mousex(void)
Retorna la coordenada x del Mouse relativa a la esquina superior izquierda
int mousey(void)
Retorna la coordenada y del Mouse relativa a la esquina superior izquierda
 
EN ESTA OCACION PRETENDO ESPLICAR LO QUE ES EL MODO GRAFICO DE DEV C++ , CON ALGUNAS FUNCIONES BASICAS, TENEMOS QUE TENER INSTALADO WINBGIM, QUE ES EL MODO GRAFICO QUE USAREMOS PARA DEV C++.
BUENO PRIMERO QUE NADA ABRIMOS DEV C++. 
NOS DIRIJIMOS A FILE /New/Project.

SELECCIONAMOS  PROJECT  , AL MISMO TIEMPO NOS ABRIRA UNA VENTANA DE NEW PROJECT , SELECCIONAMOS CONSOLEGRAFICS Y DAMOS OK
ESCRIBIMOS EL NOMBRE DEL ARCHIVO Y SELECCIONAMOS LA UBICACION.  Y DAMOS EN GUARDAR.


BORRAMOS EL CODIGO QUE NOS APARECE MENOS LA LIBRERIA DE winbgim.h 
oprimimos la tecla F9 para copilarlo nos aparece una ventanapara guardar  el main en este caso yo eh elegido nombrarlo main2  , pero pueden poner el main 1 , por defecto o cualquier nombre.



BUENO AHORA EMPEZAREMOS A PROGRAMAR.
int main()   CON ESTO HACEMOS QUE INICIE NUESTRO PROGRAMA EN EL MODO GRAFICO ABRIMOS LLAVES  Y ESCRIBIREMOS LO SIGUIENTE.
con  initwindow(600,800);         // Abre una ventana gráfica de  600x800 pixeles    
con el while(!kbhit());   hacemos que la pantalla se mantenga abierta hasta que el usuario  presione una tecla.
cerramos llaves del programa.

acontinuacion escribimos entre el initwindow y el while .
outtextxy(12,300,"QUE ONDA ");  esta funcion nos permite ingresar texto   
su sintaxis es esta. outtextxy(int x,int y,"QUE ONDA ");  int x  , es el valor de la cordenada x , int y es el valor de la cordenada y.
ejecutamos el programa y quedara de la siguiente manera.

acontinuacion  haremos que  esa palabra tenga un tamaño , un tipo de letra y una posicion (orientacion.) con esta funcion
settextstyle(8,0,1);
settextstyle(LETRA,ORIENTACION,TAMAÑO DE LETRA);

EJECUTAMOS EL PROGRAMA Y QUEDARA ASI.
EN NUETRO CASO EL TAMAÑO A SIDO  8 POR LO QUE LA SINTAXIS ES ESTA.
settextstyle(8,0,8);
ACONTINUACION LE DAREMOS COLOR CON LA FUNCION setcolor(3);  (puede ser uno de los numeros permitidos , puede ser tambien con la palabra en ingles).
la sintaxis quedaria ahora asi
setcolor(3);
 settextstyle(8,0,8);
 outtextxy(12,300,"QUE ONDA ");
ejemplo de programa funcionando

ACONTINUACION INICIAREMOS CON LA CREACION DE ALGUNAS FIGURAS
lineto (int x, int y) Traza una línea desde la posición actual de cursor hasta  x,y  EJEMPLO:
lineto(100,100);                        // Dibuja una línea desde 0,0 hasta 100,100
 lineto(200,100);
 lineto(300,200);
 lineto(200,3);

en este caso inicia en la cordenada 0,0, ya que no hemos ubicado al cursor, ahora explicare primero el ejemplo con la localidad por default 0,0


ahora con la funcion:
moveto(60,60);                         // Pone el cursor en 60,60  cordenadas x,y
queda la sintaxys asi
moveto(60,60);                         // Pone el cursor en 60,60
 lineto(100,100);                        // Dibuja una línea desde 0,0 hasta 100,100
 lineto(200,100);
 lineto(300,200);
 lineto(200,3);

ejemplo del programa funcionando .

BUENO AHORA LES DEJO UN EJEMPLO DE UN ARCHIVO HECHO POR MI , ME DESPIDO .

FUENTE DE CONSULTA:
  • http://leviatan.blogcindario.com/2011/04/00003-dev-c-modo-grafico.html
  • http://appletenhtml.blogspot.com/2013/04/programacion-grafica-en-dev-c.html

lunes, 9 de noviembre de 2015

INSTALACION DE DEV C++


Para instalar el aplicativo podemos seguir los pasos expuestos a continuación:
1 El programa lo debemos descargar desde esta página web. Y una vez descargado procedemos a ejecutar el aplicativo para comenzar con la instalacion .
2. A continuación nos aparecerá un mensaje de bienvenida al cual le damos aceptar para continuar.

3. Después aparecerá una ventana donde podemos elegir el leguaje de instalación. En este caso seleccionamos español.

4. Aceptamos el acuerdo de licencia para continuar.

5. A continuación vamos a seleccionar el tipo de instalación Full y damos clic en siguiente.

6. en esta parte podemos seleccionar el directorio donde deseemos instalar.

Y con esta imagen podemos evidenciar que el proceso de instalación ya se esta ejecutando.

7. Por ultimo damos nos solicita permisos para habilitar el programa para todos los usuarios si estamos de acuerdo damos aceptar  y ya en esta nos aparece la imagen de que la instalación ha finalizado y damos clic en finalizar.
8. Al ejecutar el programa nos aparece un aviso de que estamos utilizando una versión beta, damos aceptar para continuar.

9. A continuación vamos a seleccionar el idioma para el programa,  en este caso lo voy a dejar en ingles y doy clic en next.
10. En esta parte nos permite recuperar archivos de cabeceras,  variables y otras funciones por medio de un navegador clásico, dejamos la opción por defecto “Yes” y continuamose.

11. A continuación nos permite crear una cache para optimizar procesos del aplicativo. damos clic en next y permitir que se cree la cache.
En esta parte podemos esperamos un poco ya que el programa esta creando la cache. Y cuando finalice damos clic en OK.


Y por ultimo abrirá el programa Dev C++ que acabamos de instalar.

lunes, 19 de octubre de 2015

CORRECCION DE LA PRUEBA.

CORRECCION DE LA PRUEBA.



1.-Determine el valor que tendrá las variables después de cada operación de asignación.
int  A;
A=5;                     
A=A+7;
A=A-10;   
         A=A^2;
int  A;
int  B;
A=1;
B=2;
       A=A+B;
int  X;
int  y;
X=3;
Y=X;
Y=X+3;
A=4
A=3
ERROR
int  A;
int  B;
B=12;
A=B+1;
A=B-7;
B=A+5;
    A=A*A;
int  X;
int  Y;
X=2;
Y=X+6;
X=X+1;
Y=X-5;
int  HOLA;
int  NO_SE;
int  OTRA;
HOLA=2;
NO_SE=12;
OTRA=HOLA+NO_SE;
NO_SE= HOLA+NO_SE;
     HOLA=NO_SE+OTRA;
A=25;
Y=-2
HOLA=28
int  A;
int  B;
A=0;
B=5;
B=a+B;
B=A;
int  A;
int  B;
int  C;
A=1;
B=A-1;
B=C-B;

ERROR
BASURA


2.-Definir cuál sería la salida en pantalla del siguiente código de C++ si la cadena ingresada es (1, 2, 3, 4, 5, 6, 7, 8, 9, 0). 
#include <stdlib.h>
#include <conio.h>
#include <stdio.h>
char ced[9];
char  *ptrced;

main(){

printf(“Ingrese su num de ced\n”);
gets(ced);
printf(“%d\n”,ced);
for(int i=0;i<10;i++){
     ptrced=&ced[i];
     //printf(“\n%p\n”,&ptrced);
    printf(“%d\n”,*ptrced);
}
getch();
}

  









3.-Encierre la letra de la respuesta correcta a la pregunta.
¿Qué es matriz?
a)       Es una zona de almacenamiento de memoria contiguo
b)      Es un tipo de dato que asigna valor de memoria de un solo tipo char
c)       Es una estructura dinámica
d)      Ninguna de las anteriores
¿Qué es un puntero?
a)       Es una matriz que hace referencia a una región de memoria
b)       Es un valor entero que da referencia a una región de memoria
c)        Ninguna de las anteriores
d)       Es una variable independiente de memoria que sirve para apuntar a un puntero
¿Qué es una estructura dinámica?
a)       Son estructuras que cuya dimensión puede crecer o disminuir durante la creación del programa
b)       Son estructuras que cuya dimensión puede crecer o disminuir durante el diseño del programa
c)        Son estructuras que cuya dimensión puede crecer o disminuir durante la ejecución del programa
d)      Ninguna de las anteriores
¿Qué es una lista?
a)       Es un puntero de datos que nos permite agrupar elementos de una manera organizada
b)      Es un dominio de datos que nos permite agrupar elementos de una manera organizada
c)       Es una estructura de datos que nos permite agrupar elementos de una manera organizada
d)      Ninguna de las anteriores
¿Qué es pila?
a)       Es un tipo de lista en la que solo se puede insertar y eliminar nodos en uno de sus extremos
b)       Es un tipo de puntero en la que solo se puede insertar y eliminar nodos en uno de sus extremos
c)       Es un tipo de dato int que solo se puede insertar y eliminar nodos en uno de sus extremos de las lista
d)      Ninguna de las anteriores
4.-Realizar el siguiente ejercxicio en el computador.
a) Dado por el usuario un valor numero de tipo(int) que corresponda al año de nacimiento, calcule el numero de suerte.