You are on page 1of 12

ING.

DESARROLLO DE SOFTWARE
Planteamiento de arreglos y estructuras de datos

UnADM Universidad Abierta y a Distancia de Mxico


Omar Barragan Moreno Matricula: ES162006477
Algoritmo
Inicio:
Hospital la concordia.
1. Registrar paciente.
2. Buscar paciente.
3. Salir.
Elegir una opcin.
Opcion 1
Buscando si hay espacio disponible.
Si. <10
1. Ingresar los datos del paciente a internar.
2. Nombre del paciente.
3. Apellido materno del paciente.
4. Sexo del paciente.
5. Edad del paciente.
6. Gravedad del paciente donde 5 es el mximo y 1 como el minimo.
7. Solo hay 10 espacios disponibles.
Sino
1. Opcion invalida y regresar al men principal.
2. No hay espacio disponible para el paciente. Regresar al men principal.
opcin 2
Introducir el numero del paciente.
Si <10
1. Nombre.
2. Apellido materno.
3. Sexo.
4. Edad.
5. Gravedad donde 5 es el mximo y 1 es el minimo.
Sino
1. Numero incorrecto, favor de introducir numero valido y regresar a la opcin dos.
Opcion 3
Si, mientras no eligan la opcin 3
1. No salir del men
Sino
1. Saliendo

Fin.
Diagrama de flujo.
Codificacin de programa
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

struct datospersonales {
char nombre[70];
char apellido[70];
char sexo[40];
int edad, gravedad;

}paciente[11];

int main () {
int h=0, op, numero;
paciente;
printf ("++++++++++++Hospital la concordia++++++++++++");
printf ("\n\n");

do {

printf ("\n1. Registrar a un paciente");


printf ("\n2. Buscar a un paciente");
printf ("\n3. salir");
printf ("\n\n");
printf ("\nElegir opcion: ");
scanf ("%d", &op);
printf ("\n\n");
switch (op){
case 1:
if(h>10)
printf ("No hay espacio disponible para paciente");
else {
printf( "Ingresa los datos del paciente a internar ");
printf ("\n\n");
printf ("\nNombre del paciente: ");
fflush (stdin);
gets (paciente[h].nombre);
printf ("\nApellido materno del paciente: ");
gets (paciente[h].apellido);
printf ("\nSexo del paciente: ");
gets (paciente[h].sexo);
printf ("\nEdad del paciente: ");
scanf ("%i", &paciente[h].edad);
printf ("\nGravedad donde 5 se calcula como maximo y 1 como el minimo: ");
scanf ("%i", &paciente[h].gravedad);
h++;
}
break;
case 2:
printf ("Numero del paciente: ");
scanf ("%d", &numero);
while (numero>=11 || numero <0){
printf ("numero incorrecto, favor de introducir numero valido: ");
scanf ("%d", &numero);
}
printf ("\nNombre del paciente: %s", paciente[numero].nombre);
printf ("\nApellido materno: %s", paciente[numero].apellido);
printf ("\nSexo: %s", paciente[numero].sexo);
printf ("\nEdad: %i", paciente[numero].edad);
printf ("\nGravedad donde 5 se calcula como maximo y 1 como el minimo: %i",
paciente[numero].gravedad);
printf ("\n\n");
break;
case 3:
printf ("saliendo...");
break;
default:
printf ("Opcion invalida");
printf ("\n\n");
}
}while(op!=3);

getch();
return 0;
}

You might also like