practica dibujo de marco dev c++

6
#include <stdlib.h> #include <stdio.h> /* Realizar un programa que dibuje un marco del tamaño que el usuario determine. El programa deberá utilizar funciones y leer 2 coordenadas, la primera es la esquina superior izquierda y la segunda la esquina inferior derecha. Comprobar que las coordenadas sean válidas. */ //Este de aqui se dedicara ha sacar las distancias entre x-x/y-y int distancia(int p1,int p2); int main(){ int dx,dy,x1,x2,y1,y2,conta1=0,conta2=0,conta3=0,conta4=0; //bienvenida printf("\n\n \t ** DIBUJO POR SISTEMA DE COORDENADAS ** \n"); //Pedimos nuestras coordenadas printf("\n\n \t Ingrese x de la primera coordenada: \n");

Upload: elizabeth-foxworth

Post on 20-Jun-2015

157 views

Category:

Engineering


2 download

TRANSCRIPT

Page 1: Practica dibujo de marco dev c++

#include <stdlib.h>

#include <stdio.h>

/*

Realizar un programa que dibuje un marco del tamaño que el usuario determine.

El programa deberá

utilizar funciones y leer 2 coordenadas, la primera es la esquina superior izquierda y la segunda la

esquina inferior derecha.

Comprobar que las coordenadas sean válidas.

*/

//Este de aqui se dedicara ha sacar las distancias entre x-x/y-y

int distancia(int p1,int p2);

int main(){

int dx,dy,x1,x2,y1,y2,conta1=0,conta2=0,conta3=0,conta4=0;

//bienvenida

printf("\n\n \t ** DIBUJO POR SISTEMA DE COORDENADAS ** \n");

//Pedimos nuestras coordenadas

printf("\n\n \t Ingrese x de la primera coordenada: \n");

scanf("%d",&x1);

printf("\n\n \t Ingrese y de la primera coordenada: \n");

Page 2: Practica dibujo de marco dev c++

scanf("%d",&y1);

printf("\n\n \tIngrese x de la segunda coordenada: \n");

scanf("%d",&x2);

printf("\n\n \t Ingrese y de la segunda coordenada: \n");

scanf("%d",&y2);

dx=distancia(x1,x2);

dy=distancia(y1,y2);

//Crea el espacio entre el el bloque de texto y el recuadro

while(dy>=conta4){

printf("\n");

conta4++;

}

conta4=0;

//Aqui empieza la impresion de la primera linea

while(dx>=conta1){

//Crea el espacio entre el inciio de consola y la primera cordenada x

while(dx>=conta4){

printf(" ");

conta4++;

Page 3: Practica dibujo de marco dev c++

}

printf("*");

conta1++;

}

//Aqui termina la impresion de la primera linea

//Aqui empieza la impresion de la linea vertical

while((dy-2)>=conta3){

printf("\n");

//Reinicia conta4

conta4=0;

//Crea el espacio entre el inciio de consola y la linea

while(dx>=conta4){

printf(" ");

conta4++;

}

printf("*");

conta2=0;

Page 4: Practica dibujo de marco dev c++

//Aqui la empieza la impresion de los espacios necesarios dentro ddel cuadrado

while((dx-2)>=conta2){

printf(" ");

conta2++;

}

//Cerramos el cuadrado del lado derecho

printf("*");

conta3++;

//Recorrer cada linea

printf("\n");

conta1=0;

}

//Reiniciamos conta4 para implementar los esapcios

conta4=0;

//Impresion de la ultima linea

//Crea el espacio entre el inciio de consola y la ultima linea

while(dx>=conta4){

printf(" ");

Page 5: Practica dibujo de marco dev c++

conta4++;

}

while(dx>=conta1){

printf("*");

conta1++;

}

printf("\n");

system("PAUSE");

return 0;

}

int distancia(int p1,int p2){

int d;

d=p2-p1;

//Por si acaso ponen algo muy pequeño

if(d<2){

printf("\t Espacio muy chico, no se puede ** \n");

d=1;

}

return d;

}