Documentos de Académico
Documentos de Profesional
Documentos de Cultura
# include <stdio.h>
# include <math.h>
double leerDatoReal(char d);
void mostrarMensaje(char mensaje[50]);
void calcular(double na, double nb, double nc);
int main()
{
double a, b, c;
a = leerDatoReal('a');
b = leerDatoReal('b');
c = leerDatoReal('c');
calcular(a, b, c);
return 0;
}
double leerDatoReal(char d)
{
double dato;
if(na==0)
{
mostrarMensaje("Ingresó un cero para a, no es posible dividir en cero");
}
else if (discriminante < 0)
{
mostrarMensaje("El resultado es imaginario");
}
else
{
res = (-nb + sqrt(pow(nb,2) - 4*na*nc)) / (2*na);
sprintf(mensaj,"X1 con +b es = %.2lf \n", res);
mostrarMensaje(mensaj);
Ya sabemos que lenguaje C No tiene datos lógicos. Lo que se hace es aprovechar una librería
que alguien creó. Esa librería es:
bool esFumador;
bool estaCasado; true, false; (Realmente almacena un cero o un 1)
esFumador = leerDatoLogico();
bool leerDatoLogico()
{
bool esFumador;
char respuesta;
# include <stdio.h>
# include <stdbool.h>
bool leerDatoLogico();
int main()
{
bool esFumador;
esFumador = leerDatoLogico();
if (esFumador==true)
{
printf("Pilas, va a acabar con sus pulmones");
}
else
{
printf("Lo felicito, le recomiendo que tampoco beba");
}
return 0;
}
bool leerDatoLogico()
{
bool esFumador;
char respuesta;
if (respuesta=='S' || respuesta=='s')
{
esFumador = true;
}
else
{
esFumador = false;
}
return esFumador;
}
Ejercicio
Construya un programa en lenguaje C que, con funciones permita saber si una persona con
síntomas de covid 19 se debe quedar o no en la clínica en observación. Cuando un paciente
llega, le preguntan: Es ud mayor de 60 años?, Es usted diabético?, Es ud hipertenso?. Si la
respuesta a las tres preguntas es verdadera, el paciente debe quedarse en estricta observación,
de lo contrario, si el paciente presente dos de estas características, debe quedarse en
observación media, sino, se puede ir para la casa.
# include <stdio.h>
# include <stdbool.h>
# include <string.h>
int main()
{
bool esMayor60, esDiabetico, esHipertenso;
return 0;
}
bool leerDatoLogico(char mensaje[50])
{
bool dato;
char res;
if (res=='S')
dato = true;
else
dato = false;
return dato;
}
Construya un programa en lenguaje C con un menú hecho con switch … case que permita hacer
lo siguiente invocando funciones y procedimientos:
Opcion 4: dividir los dos números teniendo en cuenta que el segundo no puede ser cero
Opcion 5: determinar la suma de los tres dígitos de cada número ingresado y encontrar la
mayor de esas dos sumas.
Opcion 6: salir
Variables Banderas
Es una variable que indica si algo ya se hizo o no, si algo ya sucedió o no en la ejecución del
programa. Es de tipo lógico. También recibe el nombre de centinela o switche del Ingles.
# include <stdio.h>
# include <stdbool.h>
int main()
{
int n1, n2, opc, res;
bool yaLeyo;
yaLeyo = false;
n1 = 0;
n2 = 0;
switch(opc)
{
case 1: n1 = leerEntero("Ingrese un número de tres cifras: ");
n2 = leerEntero("Ingrese un número de tres cifras: ");
yaLeyo = true;
break;
return 0;
}
printf("%s", mensaje);
scanf("%i", &n);
if (n<100 || n>999)
{
printf("el numero no es de tres cifras");
return 100;
}
else
{
return n;
}
}
int sumar(int n1, int n2)
{
return (n1+n2);
}
void mostrarMensaje(int n)
{
printf("El resultado es %i ", n);
}