Ejercicio de Examen programacion
Ejercicio de Examen programación Máquina Expendedora en lenguaje de programación C
/* Maquina Expendedora de medicamentos
Un estudiante de Bioingeniería Médica generará un expendedor de recetas automáticamente a partir de 10
medicamentos, enfocado en 5 enfermedades comunes: gripa, estrés, tos, dolor de cabeza y dolor de oído.
Para abastecer el expendedor o máquina de recetas se deberá introducir el usuario root y la contraseña
admin, en caso contrario indicará que no tiene permisos suficientes. El abastecimiento se hace en orden
de 0 a n, y cada medicamento deberá tener un mínimo de 20 y máximo de 100 (el abastecimiento del
expendedor puede ser manual o aleatorio). Esto solo se hace una vez al inicio del programa
Los pacientes pasan al expendedor, con base a un menú eligen la enfermedad para la cual quieren
generar una receta, después introducen su nombre y se les genera una receta con un máximo de 10
unidades por medicamento para curar su malestar (puede ser manual o aleatorio).
Mostrar la receta generada con nombre, id y cantidad de cada medicamento.
El programa termina cuando el expendedor tiene menos de 10 unidades de cualquier medicamento. En
caso contrario, muestra el menú de nuevo y se queda en espera de que llegue el siguiente paciente*/
#include<stdio.h>
void VALIDAR (int& m){
do{
scanf ("%d", &m);
if (m<20||m>100){
printf("Tiene que ser un valor entre 20 y 100 ");
}
}while(m<20||m>100);
}
int main(){
char user[10]="root", contra[10]="admin", NOMBRE[50], resp1[10], resp2[10];
int i=0, flag=1, band=1, M0, M1, M2, M3, M4, M5, M6, M7, M8, M9, opc;
printf("\tMaquina Expendedora de medicamentos\n");
printf("Primero hay que abastecer la maquina de recetas\n");
fflush(stdin);
printf("Introduzca su usuario: \n");
gets(resp1);
printf("Introduzca su contrasenia: \n");
gets(resp2);
do {
if (user[i]==resp1[i]){
flag=1;
}
else {
flag=0;
}
i++;
}while (i<4&& flag==1);
do {
if (contra[i]==resp2[i]){
band=1;
}
else {
band=0;
}
i++;
}while (i<5&& band==1);
if (flag==0||band==0){
printf("No tiene recursos suficientes");
}else{
printf("Cuantas unidades de medicamento 0 va a abastecer? [20-100] \n");
VALIDAR(M0);
printf("Cuantas unidades de medicamento 1 va a abastecer? [20-100] \n");
VALIDAR(M1);
printf("Cuantas unidades de medicamento 2 va a abastecer? [20-100] \n");
VALIDAR(M2);
printf("Cuantas unidades de medicamento 3 va a abastecer? [20-100] \n");
VALIDAR(M3);
printf("Cuantas unidades de medicamento 4 va a abastecer? [20-100] \n");
VALIDAR(M4);
printf("Cuantas unidades de medicamento 5 va a abastecer? [20-100] \n");
VALIDAR(M5);
printf("Cuantas unidades de medicamento 6 va a abastecer? [20-100] \n");
VALIDAR(M6);
printf("Cuantas unidades de medicamento 7 va a abastecer? [20-100] \n");
VALIDAR(M7);
printf("Cuantas unidades de medicamento 8 va a abastecer? [20-100] \n");
VALIDAR(M8);
printf("Cuantas unidades de medicamento 9 va a abastecer? [20-100] \n");
VALIDAR(M9);
printf("\tES TURNO DE LOS PACIENTES\n"); //gripa, estrés, tos, dolor de cabeza y dolor de oído
do{
printf("\tMenu\n");
printf("1.- Gripa\n");
printf("2.-Estres \n");
printf("3.-Tos\n");
printf("4.-Dolor de Cabeza\n");
printf("5.-Dolor de Oido");
scanf("%d", &opc);
switch (opc){
case 1:
printf("\nCual es su nombre? \n");
scanf("%s", &NOMBRE);
printf("\t EXPENDEDOR DE RECETAS XIMENA \n");
printf("NOMBRE DEL PACIENTE: %s \n", NOMBRE);
printf("DIAGNOSTICO: gripa\n");
printf("MEDICAMENTO O, 1----- 10 UNIDADES\n");
M0=M0-10;
M1=M1-10;
break;
case 2:
printf("Cual es su nombre? \n");
scanf("%s", &NOMBRE);
printf("\t EXPENDEDOR DE RECETAS XIMENA \n");
printf("NOMBRE DEL PACIENTE: %s \n", NOMBRE);
printf("DIAGNOSTICO: ESTRES\n");
printf("MEDICAMENTO 2, 3----- 10 UNIDADES");
M2=M2-10;
M3=M3-10;
break;
case 3:
printf("Cual es su nombre? \n");
scanf("%s", &NOMBRE);
printf("\t EXPENDEDOR DE RECETAS XIMENA \n");
printf("NOMBRE DEL PACIENTE: %s \n", NOMBRE);
printf("DIAGNOSTICO: TOS\n");
printf("MEDICAMENTO 4, 5----- 10 UNIDADES");
M4=M4-10;
M5=M5-10;
break;
case 4:
printf("Cual es su nombre? \n");
scanf("%s", &NOMBRE);
printf("\t EXPENDEDOR DE RECETAS XIMENA \n");
printf("NOMBRE DEL PACIENTE: %s \n", NOMBRE);
printf("DIAGNOSTICO: DOLOR DE CABEZA\n");
printf("MEDICAMENTO 6, 7----- 10 UNIDADES");
M6=M6-10;
M7=M7-10;
case 5:
printf("Cual es su nombre? \n");
scanf("%s", &NOMBRE);
printf("\t EXPENDEDOR DE RECETAS XIMENA \n");
printf("NOMBRE DEL PACIENTE: %s \n", NOMBRE);
printf("DIAGNOSTICO: DOLOR DE OIDO \n");
printf("MEDICAMENTO 8, 9----- 10 UNIDADES");
M8=M8-10;
M9=M9-10;
break;
default:
printf("opcion invalida");
}
if(M1>10&&M2>10&&M3>10&&M4>10&&M5>10&&M6>10&&M7>10&&M8>10&&M9>10){
band=1;
}else{
band=0;
}
} while (band !=0||band !=0);
}
}
Comentarios
Publicar un comentario