Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Práctica #10
1
ÍNDICE
Requisitos de la aplicación 3
Herramientas empleadas en el desarrollo de la aplicación 3
Instalación del programa (Manual Técnico) 4
2
Requisitos de la aplicación
● Requisitos técnicos.
Equipo, teclado, mouse, monitor, laptop, CPU.
Memoria RAM 2 GB como mínimo.
Tarjeta de red LAN y/o Wireless.
Procesador 1.4 GHz.
3
Instalación del programa (Manual Técnico)
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <windows.h>
#include <iostream>
#define N 10
//PROTOTIPO DE FUNCIONES
void ingresar();
void vacio();
void adopcion();
void menu();
void CursorOff();
void limpia();
void adopcion();
4
void listar();
void eliminar();
struct perro{
char nombre[35];
char codigo[15];
char fecha[30];
char raza[30];
int edad;
int lleno;
};
perro pe[N];
5
FUNCIÓN PRINCIPAL MAIN: ES LA PRIMER FUNCIÓN QUE EJECUTA EL
PROGRAMA
int main(){
system("COLOR 70");
dibujarCuadro(1,1,78,24);//Cuadro grande
vacio();
menu();
getch();
return 0;
void menu(){
char op,op2;
CursorOn(1,10);
do{
6
if(op!='1' && op!='2' && op!='3'){
CursorOff();
getch();
CursorOn(1,10);
if (op=='1'){
limpia();
do{
7
if(op2!='1' && op2!='2' && op2!='3'){
CursorOff();
getch();
CursorOn(1,10);
if (op2=='1')
ingresar();
if (op2=='2')
eliminar();
if(op2=='3')
listar();
if (op=='2'){
8
int a = 0;
if ( pe[i].lleno == 1)
a = 1;
if (a==0){
CursorOff();
getch();
menu();
else
adopcion();
if (op=='3')
exit(0);
9
void ingresar(){
char op;
limpia();
if (pe[i].lleno == 0) {
do{
rep=0;
CursorOn(1,10);
fflush(stdin);
fgets(pe[i].codigo,N,stdin);
cambio(pe[i].codigo);
if(strcmp(pe[i].codigo,pe[j].codigo) == 0){
rep = 1;
CursorOff();
getch();
10
gotoxy(4,22); cout << "
";
}while(rep!=0);
fflush(stdin);
fflush(stdin);
fgets(pe[i].nombre,N,stdin);
cambio(pe[i].nombre);
fflush(stdin);
fgets(pe[i].fecha,N,stdin);
cambio(pe[i].fecha);
fflush(stdin);
fgets(pe[i].raza,N,stdin);
cambio(pe[i].raza);
11
gotoxy(4,17); cout << "Edad: ";
fflush(stdin);
scanf("%i",&pe[i].edad);
pe[i].lleno = 1;
do{
CursorOff();
op = getch();
if(op=='1'){
CursorOn(1,10);
12
}
if (op == '2')
aux=1;
if (aux == 0){
gotoxy(4,22); cout << "No quedan mas espacios. Presione una tecla
para continuar..";
getch();
CursorOff();
limpia();
menu();
void listar(){
13
limpia();
int f=10;
if (pe[i].lleno == 1) {
f+=2;
CursorOff();
getch();
limpia();
menu();
14
}
void eliminar(){
char cod[15];
int aux = 0;
char op,op2;
limpia();
fflush(stdin);
fgets(cod,N,stdin);
cambio(cod);
if(strcmp(cod,pe[i].codigo) == 0){
aux = 1;
do{
15
CursorOff();
op = getch();
if (op=='1'){
pe[i].lleno = 0;
if (op=='2'){
CursorOff();
getch();
limpia();
menu();
if (aux ==1){
CursorOff();
16
gotoxy(4,22); cout << "Presione una tecla para volver al menu
principal";
getch();
limpia();
menu();
else if (aux==0){
CursorOff();
getch();
limpia();
menu();
CursorOff();
getch();
limpia();
menu();
17
void adopcion(){
char cod[15];
int aux = 0;
char op;
limpia();
fflush(stdin);
fgets(cod,N,stdin);
cambio(cod);
limpia();
if(strcmp(cod,pe[i].codigo) == 0){
aux = 1;
dibujarCuadro(13,8,67,20);
if(pe[i].edad>7){
18
gotoxy(17,13); cout << "Estado: No factible de dar en
adopcion";
else{
if (aux ==1){
CursorOff();
getch();
limpia();
menu();
19
else if (aux==0){
CursorOff();
getch();
limpia();
menu();
void vacio(){
pe[i].lleno = 0;
int aux;
aux = strlen(a);
20
a[aux-1] = '\0';
void limpia(){
int i,j;
for(i=5;i<=23;i++){
for(j=3;j<=76;j++){
HANDLE hcon;
hcon = GetStdHandle(STD_OUTPUT_HANDLE);
COORD dwPos;
dwPos.X = x;
dwPos.Y= y;
SetConsoleCursorPosition(hcon,dwPos);
int i;
for (i=x1;i<x2;i++){
21
gotoxy(i,y1); cout << "Ä";
for (i=y1;i<y2;i++){
void CursorOff(){
SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE), &cursor);
22
{
if(size == 0)
size = 20;
CONSOLE_CURSOR_INFO lpCursor;
lpCursor.bVisible = visible;
lpCursor.dwSize = size;
SetConsoleCursorInfo(console,&lpCursor);
23