Documentos de Académico
Documentos de Profesional
Documentos de Cultura
INGENIERÍA EN IRRIGACIÓN
PROGRAMACIÓN
SEMANA 4
GRADO: 4º GRUPO: B
// Fecha:
#include <conio.h>
#include <string.h>
#include <math.h>
#define Digito 1;
#define Letra 2;
char *Texto[10];
/* Proedimientos para el manejo de la Consola */
textbackground(ColorFondo);
textcolor(ColorTexto);
ActivaColores(ColorFondo,ColorTexto);
clrscr();
}
void LimpiaLinea(int y, int ColorFondo, int ColorTexto)
gotoxy(1,y);
ActivaColores(ColorFondo,ColorTexto);
clreol();
gotoxy(x,y);
ActivaColores(ColorFondo,ColorTexto);
printf("%s",Texto);
ActivaColores(0,7); // Colores Originales
}
int x;
x=40-int(strlen(Texto)/2);
UbicaTexto(x,y,ColorFondo,ColorTexto,Texto);
}
char Linea[3][81];
int i;
for (i=0;i<3;i++) {
strcpy(&Linea[i][0],"");
Linea[0][0]='+';
Linea[0][xf-xi]='+';
Linea[1][0]='³'; // Linea Vertical
Linea[1][xf-xi]='³';
strcpy(Linea[2],Linea[0]);
Linea[2][0]='+';
Linea[2][xf-xi]='+';
UbicaTexto(xi,yi,ColorFondo,ColorTexto,Linea[0]);
for (i=yi+1;i<yf;i++) {
UbicaTexto(xi,i,ColorFondo,ColorTexto,Linea[1]);
}
UbicaTexto(xi,yf,ColorFondo,ColorTexto,Linea[2]);
ActivaColores(CFondo,CTexto);
gotoxy(x,y);
cprintf("%s %0.2f",Letrero,Valor);
ActivaColores(0,7);
}
void UbicaInt(int x, int y, int CFondo, int CTexto, char *Letrero, int
Valor)
ActivaColores(CFondo,CTexto);
gotoxy(x,y);
cprintf("%s %d",Letrero,Valor);
ActivaColores(0,7);
}
void colorpant(int xi, int xf, int yi, int yf,int color,char *espacio)
{
for (int j=yi;j<=yf;j++) {
gotoxy(i,j);
textbackground(color);
printf("%s",espacio);
//textbackground(color);
}
}
{
int i,j;
textcolor(color);
gotoxy(i,yi);
cprintf("%s",texto);
gotoxy(i,yf);
cprintf("%s",texto);
textcolor(color);
gotoxy(xi,j);
cprintf("%s",texto);
gotoxy(xf,j);
cprintf("%s",texto);
}
int i, Opcion=0;
char Tecla;
UbicaTexto(x,y+i,CFondo,CTexto,Texto[i]);
}
do {
UbicaTexto(x,y+Opcion,FMarcado,TMarcado,Texto[Opcion]);
Tecla=getch();
switch (Tecla) {
case 50 : // Hacia Abajo [8]-Teclado numerico
UbicaTexto(x,y+Opcion,CFondo,CTexto,Texto[Opcion]);
if (Opcion<NoOpciones-1) Opcion++;
else
Opcion=0;
break;
UbicaTexto(x,y+Opcion,CFondo,CTexto,Texto[Opcion]);
if (Opcion>0) Opcion--;
else
Opcion=NoOpciones-1;
break;
}
}
while (Tecla!=13);
return Opcion;
void Portada ()
LimpiaLinea(1,7,14);
LimpiaLinea(25,7,14);
colorpant(1,80,1,25,3," ");
contorno(2,79,1,25,4,"*");
CentraTexto(5,3,0,"CURSO DE PROGRAMACION");
UbicaTexto(15,6,3,0,
"|||||||||||||||||||||||||||||||||||||||||||||||||||||");
UbicaTexto(15,7,3,0, "||
||");
UbicaTexto(15,8,3,0, "|| |||||||||| || |||||||| |||||||||
||");
UbicaTexto(15,17,3,0,"|||||||||||||||||||||||||||||||||||||||||||||||||||
||");
UbicaTexto(29,18,3,15,"PROGRAMA DE ALGORITMOS EN C Version 1.0");
UbicaTexto(15,20,3,0,"Disenio y Programacion:");
getch();
}
void Despedida()
LimpiaPantalla(1,7);
colorpant(1,80,1,25,3," ");
contorno(2,79,1,25,4,"<");
colorpant(14,65,8,14,11," ");
contorno(14,65,8,14,4,"*");
//CuadroSimple(14,65,8,14,1,14);
CentraTexto(11,11,0,"GRACIAS POR USAR... PAEC (version 1.0)");
ActivaColores(0,15);
printf("\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n");
getch();
}
void portadafig()
LimpiaPantalla(1,14);
LimpiaLinea(1,7,14);
LimpiaLinea(25,7,14);
colorpant(1,80,1,25,3," ");
contorno(2,79,1,25,4,"*");
getch();
}
void portadaest()
{
LimpiaPantalla(1,14);
LimpiaLinea(1,7,14);
LimpiaLinea(25,7,14);
colorpant(1,80,1,25,3," ");
contorno(2,79,1,25,4,"*");
UbicaTexto(28,3,3,0,"DEPARTAMENTO DE IRRIGACION");
CentraTexto(5,3,0,"CURSO DE PROGRAMACION");
void portadatopo()
{
LimpiaPantalla(1,14);
LimpiaLinea(1,7,14);
LimpiaLinea(25,7,14);
colorpant(1,80,1,25,3," ");
contorno(2,79,1,25,4,"*");
UbicaTexto(28,3,3,0,"DEPARTAMENTO DE IRRIGACION");
CentraTexto(5,3,0,"CURSO DE PROGRAMACION");
}
void PMatematicas()
LimpiaPantalla(1,14);
LimpiaLinea(1,7,14);
LimpiaLinea(25,7,14);
colorpant(1,80,1,25,3," ");
contorno(2,79,1,25,4,"*");
CentraTexto(5,3,0,"CURSO DE PROGRAMACION");
getch();
void potadamiscela()
{
LimpiaPantalla(1,14);
LimpiaLinea(1,7,14);
LimpiaLinea(25,7,14);
colorpant(1,80,1,25,3," ");
contorno(2,79,1,25,4,"*");
UbicaTexto(28,3,3,0,"DEPARTAMENTO DE IRRIGACION");
CentraTexto(5,3,0,"CURSO DE PROGRAMACION");
getch();
}
// INICIAN SUB PROGRAMAS DE LA FUNCION FIGURAS GEOMETRICAS
void CuaRecta()
{
char Resp;
float L,B,H,A,P;
LimpiaPantalla(1,14);
LimpiaLinea(1,7,14);
LimpiaLinea(25,7,14);
colorpant(1,80,1,25,8," ");
if (Resp=='C') {
do {
UbicaTexto(5,6,1,14,"Lado (L): ");
scanf("%f",&L);
} while (L<0);
P = 4*L;
}
else {
do {
do {
} while (H<0);
A = B*H;
P = 2*B + 2*H;
UbicaTexto(5,10,1,15,"RESULTADOS:");
UbicaFloat(5,12,1,15,"Area = ",A);
UbicaFloat(5,13,1,15,"Perimetro = ",P);
getch();
}
void triangulo()
char Resp;
float Ba,H,a,b,c,s,Ar,p;
LimpiaPantalla(1,14);
LimpiaLinea(1,7,14);
LimpiaLinea(25,7,14);
scanf("%s",&Resp);
if (Resp=='t'){
CentraTexto(3,7,1,"TRIANGULO TRADICCIONAL");
do {
UbicaTexto(5,6,1,14,"Base (B):");
scanf("%f",&Ba);
while (Ba<0);
do {
UbicaTexto(5,7,1,14,"Altura (h):");
scanf("%f",&H);
}
while(H<0);
Ar=(Ba*H)/2;
p=(2*sqrt(pow(Ba/2,2)+pow(H,2)))+Ba;
else{
CentraTexto(3,7,1,"TRIANGULO HERON ");
do {
UbicaTexto(5,6,1,14,"LADO A:");
scanf("%f",&a);
while (a<0);
do {
UbicaTexto(5,7,1,14,"LADO B:");
scanf("%f",&b);
}
while (b<0);
do {
UbicaTexto(5,8,1,14,"LADO C:");
scanf("%f",&c);
}
while (c<0);
s=(a+b+c)/2;
Ar=sqrt(s*(s-a)*(s-b)*(s-c));
p=a+b+c;
}
UbicaTexto(5,10,1,15,"RESULTADOS:");
UbicaFloat(5,12,1,15,"Area = ",Ar);
UbicaFloat(5,13,1,15,"Perimetro = ",p);
getch();
//////////////////////////////////////////////////////////
void TraRombo()
char Resp;
float Bme,Bma,H,L,A,P,Dma,Dme;
LimpiaPantalla(1,14);
LimpiaLinea(1,7,14);
LimpiaLinea(25,7,14);
scanf("%s",&Resp);
if (Resp=='t')
do
{
scanf("%f",&Bme);
}
while(Bme<0);
do
scanf("%f",&Bma);
}
while(Bma<0);
do
{
UbicaTexto(5,7,1,14,"Altura (H):");
scanf("%f",&H);
while(H<0);
L=sqrt(pow(H,2)+pow((Bma-Bme)/2,2));
A=((Bma+Bme)*H)/2;
P=Bme+Bma+(2*L);
else
{
scanf("%f",&Dma);
}
while(Dma<0);
do
{
UbicaTexto(5,6,1,14,"DIAGONAL MENOR (Dme):");
scanf("%f",&Dme);
while(Dme<0);
L=sqrt(pow(Dma/2,2)+pow(Dme/2,2));
P=4*L;
A=(Dma*Dme)/2;
UbicaTexto(5,12,1,15,"RESULTADOS:");
UbicaFloat(5,13,1,15,"Area = ",A);
UbicaFloat(5,14,1,15,"Perimetro = ",P);
getch();
}
//////////////////////////////////////////////////////////////////////
void circulo()
char Resp;
float r,d,A,P;
LimpiaPantalla(1,14);
LimpiaLinea(1,7,14);
LimpiaLinea(25,7,14);
if (Resp=='r')
UbicaTexto(5,5,1,14,"Radio (r):");
scanf("%f",&r);
}
while(r<0);
A=M_PI*pow(r,2);
P=2*r*M_PI;
}
else
do
{
UbicaTexto(5,5,1,14,"Diametro (d):");
scanf("%f",&d);
}
while(d<0);
A=(M_PI*pow(d,2))/4;
P=d*M_PI;
}
UbicaTexto(5,12,1,15,"RESULTADOS:");
UbicaFloat(5,13,1,15,"Area = ",A);
UbicaFloat(5,14,1,15,"Perimetro = ",P);
getch();
void FigurasGeometricas()
{
int Opcion1;
portadafig();
do {
LimpiaPantalla(1,14);
LimpiaLinea(1,7,14);
LimpiaLinea(25,7,14);
colorpant(1,80,1,25,3," ");
//colorpant(15,65,5,15,7," ");
CuadroSimple(15,5,65,15,1,0);
UbicaTexto(24,5,7,1,"Seleccione opcion: ");
Texto[4]="5.- Salir";
Opcion1=Selector(20,7,1,15,0,10,5);
switch (Opcion1) {
case 0 :
triangulo(); // Triangulo
getch();
break;
case 1 : // Cuadrado/Rectangulo
CuaRecta();
getch();
break;
case 2 :
TraRombo(); // Trapecio/Rombo
getch();
break;
case 3 :
circulo();// Circulo
getch();
break;
}
}
while (Opcion1!=4);
void Estadisticas()
{
int Opcion2;
portadaest();
do {
LimpiaPantalla(1,14);
LimpiaLinea(1,7,14);
LimpiaLinea(25,7,14);
CentraTexto(1,7,1,"METODOS ESTADISTICOS");
colorpant(1,80,1,25,3," ");
//colorpant(15,65,5,15,7," ");
CuadroSimple(15,5,65,15,1,0);
UbicaTexto(24,5,7,1,"Seleccione opcion:");
Opcion2=Selector(20,7,1,15,0,10,7);
switch (Opcion2) {
case 0 :
LimpiaPantalla(1,14);
LimpiaLinea(1,7,14);
LimpiaLinea(25,7,14);
cprintf(" NUMERO MENOR Y MAYOR ");
getch();
break;
case 1 : // Cuadrado/Rectangulo
getch();
break;
case 2 :
// Trapecio/Rombo
getch();
break;
case 3 :
// Circulo
getch();
break;
case 4 :
// Circulo
getch();
break;
case 5 :
// Circulo
getch();
break;
while (Opcion2!=6);
void topo()
int Opcion3;
portadatopo();
do {
LimpiaPantalla(1,14);
LimpiaLinea(1,7,14);
LimpiaLinea(25,7,14);
CentraTexto(1,7,1,"CALCULOS TOPOGRAFICOS");
colorpant(1,80,1,25,3," ");
//colorpant(15,65,5,15,7," ");
CuadroSimple(15,5,65,15,1,0);
UbicaTexto(24,5,7,1,"Seleccione opcion:");
Texto[3]="4.- salir";
Opcion3=Selector(20,7,1,15,0,10,4);
switch (Opcion3) {
case 0 :
LimpiaPantalla(1,14);
LimpiaLinea(1,7,14);
LimpiaLinea(25,7,14);
getch();
break;
case 1 :
getch();
break;
case 2 :
getch();
break;
}
while (Opcion3!=3);
}
////////
void Mate()
{
int Opcion4;
PMatematicas();
do {
LimpiaPantalla(1,14);
LimpiaLinea(1,7,14);
LimpiaLinea(25,7,14);
//colorpant(15,65,5,15,7," ");
CuadroSimple(15,5,65,18,1,0);
UbicaTexto(24,5,7,1,"Seleccione opcion:");
Texto[0]="1.- PAR / INPAR";
Texto[5]="6.- FACTORIAL";
Texto[9]="10.-SALIR";
Opcion4=Selector(20,7,1,15,0,10,10);
switch (Opcion4) {
case 0 :
getch();
break;
case 1 :
getch();
break;
case 2 :
getch();
case 3 :
getch();
break;
case 4 :
getch();
break;
case 5 :
getch();
break;
case 6 :
getch();
break;
case 7 :
getch();
break;
case 8:
getch();
break;
}
while (Opcion4!=9);
///////////////////
void Miscelanea()
{
int Opcion5;
potadamiscela();
do {
LimpiaPantalla(1,14);
LimpiaLinea(1,7,14);
LimpiaLinea(25,7,14);
colorpant(1,80,1,25,3," ");
//colorpant(15,65,5,15,7," ");
CuadroSimple(15,5,65,18,1,0);
UbicaTexto(24,5,7,1,"Seleccione opcion:");
Opcion5=Selector(20,7,1,15,0,10,5);
switch (Opcion5) {
case 0 :
getch();
break;
case 1 :
getch();
break;
case 2 :
getch();
case 3 :
getch();
break;
case 4 :
getch();
break;
}
}
while (Opcion5!=4);
}
// Menu Principal de PAEC
void MenuPrincipal() {
int Opcion;
do {
LimpiaPantalla(1,14);
LimpiaLinea(1,7,14);
LimpiaLinea(25,7,14);
colorpant(1,80,1,25,3," ");
UbicaTexto(30,5,7,0,"MENU PRINCIPAL:");
Opcion=Selector(30,7,1,15,3,0,7);
switch (Opcion) {
case 0 :
FigurasGeometricas();
getch();
break;
case 1 :
Estadisticas();
getch();
break;
case 2 :
topo();
getch();
break;
case 3 :
Mate();
getch();
break;
case 4 :
Miscelanea();
getch();
break;
break;
default:
if (Opcion!=6) {
cprintf("Opcion INVALIDA \r\n");
getch();
break;
} // Fin Switch
}
// Cuerpo Principal
Portada();
MenuPrincipal();
Despedida();
return 0;
}