Translate

martes, 25 de noviembre de 2014

Libro: Fundamentos de la programación piensa en C, Cairo (2014). Capítulo: 3

Construye un diagrama de flujo y el correspondiente programa en C que, al recibir como datos el peso, la altura y el sexo de N personas que pertenecen a un estado de la República Mexicana, obtenga el promedio del peso (edad ≥ 18) y el promedio de la altura (edad ≥ 18), tanto de la población masculina como de la femenina.
Se ingresa 1 si es hombre y 0 si es mujer.

Análisis del problema: Necesitamos un programa que nos ayude a determinar un promedio de altura y un promedio de peso entre hombres y mujeres ingresados, ya sea en grandes cantidades o simplemente pocas personas. El programa clasificara cada persona de acuerdo a su sexo y si cumple con la condición de que sean mayores o sean de una edad de 18 años, al final el programa dará salida al promedio general de peso y altura de hombres y mujeres.
Datos de entrada: Edad, sexo, altura, peso.
Datos de salida: Promedio general de altura y peso de hombres y mujeres.
Datos adicionales: Ninguno.
Proceso:
El programa cuenta con dos contadores para hombres y para mujeres respectivamente con cuatro variables que van a tomar el rol de acumuladoras, ya que se necesitara almacenar el peso y la altura de cada persona de edad mayor o igual a 18 sea hombre o mujer, además si el sexo o la edad son valores incorrectos el programa desplegara un mensaje de error y se deberá volver a escribir los datos, el programa utilizara además un ciclo do while en otras palabras una sentencia repetitiva para cada persona que ingrese al sus datos. En el ciclo do-while será evaluada la variable sexo con una sentencia selectiva, guardando así los datos introducidos en los acumuladores y en los contadores.


 La condición del ciclo do-while es si la respuesta del usuario es de terminar entonces este procederá a la finalización del programa y empezara a hacer el cálculo de los promedios de la altura y el peso de cada hombre y cada mujer ingresados mediante cada acumulador y cada contador respectivamente, si en el caso de que exista valores nulos por parte de hombres o mujeres o ambos a la vez el programa utilizara sentencias condicionales, permitiendo así que el programa de salida a valores de cero y no valores no definidos. Por último el programa da salida al promedio de cada hombre y mujer respecto a su peso y a su altura



Diagrama de flujo:









Programa en C:






Codigo fuente:

//Algoritmo: Promedio
//Nombre:David Ponce
//Fecha: 24/11/2014
/* Descripcion: El programa cuenta con dos contadores para hombres y para mujeres respectivamente con cuatro varibles que van a tomar el rol de acumuladoras,
 ya que se necesitara almacenar el peso y la altura de cada persona de edad mayor o igual a 18 sea hombre o mujer,
 ademas si el sexo o la edad son valores incorrectos el programa desplegara un mensaje de error y se debera volver a escribir los datos,
  el programa utilizara ademas un ciclo do while en otras palabras una sentencia repetitiva para cada persona que ingrese al sus datos. En el ciclo do while
  sera evaluada la variable sexo con una sentencia selectiva, guardando asi los datos introducidos en los acumuladores y en los contadores. La
  condicion del ciclo do while es si la respuesta del usuario es de terminar entonces este procedera a la finalizacion del programa y empezara a hacer el 
  calculo de los promedios de la altura y el peso de cada hombre y cada mujer ingresados mediante cada acumulador y cada contador respectivamente, si en el caso
  de que exista valores nulos por parte de hombres o mujeres o ambos a la vez el programa utilizara sentencias condicionales, permitiendo asi que el programa 
  de salida a valores de cero y no valores no definidos. Por ultimo el programa da salida al promedio de cada hombre y mujer respecto a su peso y a su altura.*/
  
   #include <stdio.h>
   #include <math.h>
   

main()

{
float phombresp=0, pmujeresp=0, phombresh=0, pmujeresh=0, p=0, h=0, pthombresp, pthombresh, ptmujeresh, ptmujeresp;
int totalh=0, totalm=0, sex, e, r;
do
{
printf("\n Ingrese su sexo 1 Hombres, 0 Mujeres: ");
scanf("%d", &sex);
printf("\n Ingrese su edad: ");
scanf("%d", &e);
printf("\n Ingrese su altura: ");
scanf("%f", &h);
printf("\n Ingrese su peso: ");
scanf("%f", &p);
if ((sex==1||sex==0)&&e>=18)
{
switch (sex)
{
case 0: 
pmujeresh=pmujeresh+h;
pmujeresp=pmujeresp+p;
totalm++;
break;
case 1: 
phombresp=phombresp+p;
phombresh=phombresh+h;
totalh++;
break;
}
}
else 
{
printf("\n Datos incorrectos");
}
printf("\n Hay mas personas? Presione 1 para continuar, 0 para terminar ");
scanf("%d", &r);
}while (r==1);
if ((pmujeresp!=0&&pmujeresh!=0)&&(phombresp!=0&&phombresh!=0))
{
pthombresp=phombresp/totalh;
pthombresh=phombresh/totalh;
ptmujeresp=pmujeresp/totalm;
ptmujeresh=pmujeresh/totalm;
printf("\n El promedio del peso de los hombres es %.2f ", pthombresp);
printf("\n El promedio de la altura de los hombres es %.2f ", pthombresh);
printf("\n El promedio del peso da las mujeres es %.2f ", ptmujeresp);
printf("\n El promedio de la altura de las mujeres es %.2f ", ptmujeresh);
}
else
{
if((pmujeresp!=0&&pmujeresh!=0)&&(phombresp==0&&phombresh==0) )
{
pthombresp=0;
pthombresh=0;
ptmujeresp=pmujeresp/totalm;
ptmujeresh=pmujeresh/totalm;
printf("\n El promedio del peso de los hombres es %.2f ", pthombresp);
printf("\n El promedio de la altura de los hombres es %.2f ", pthombresh);
printf("\n El promedio del peso da las mujeres es %.2f ", ptmujeresp);
printf("\n El promedio de la altura de las mujeres es %.2f ", ptmujeresh);
}
else
{
pthombresp=phombresp/totalh;
pthombresh=phombresh/totalh;
ptmujeresp=0;
ptmujeresh=0;
printf("\n El promedio del peso de los hombres es %.2f ", pthombresp);
printf("\n El promedio de la altura de los hombres es %.2f ", pthombresh);
printf("\n El promedio del peso da las mujeres es %.2f ", ptmujeresp);
printf("\n El promedio de la altura de las mujeres es %.2f ", ptmujeresh);
}
}
getch();
}

martes, 18 de noviembre de 2014

Programacion Estructurada Libro: Fundamentos de la programación piensa en C, Cairo (2014) Programa para determinar el salario.

En algunas oficinas del gobierno pagan horas extra a los burócratas, además del salario correspondiente. Escribe un diagrama de flujo y el correspondiente programa en C que permita calcular la cantidad a pagar a un trabajador tomando en cuenta su salario y las horas extra trabajadas. Las horas extra se calculan en función de la tabla 2.8. Cada trabajador puede tener como máximo 30 horas extra, si tienen más, sólo se les pagarán las primeras 30. Los trabajadores con categoría 4 o mayor a 4 no pueden recibir este beneficio.


TABLA 2.8
Categoría trabajador Hora extra
1                                     $40
2                                     $50
3                                     $85

Análisis del problema: Necesitamos un programa que nos ayude a conocer el valor del salario total de un burócrata dependiendo de su categoría, de manera que debemos establecer condiciones para el número de horas base y secuencias selectivas para escoger la categoría necesaria el programa desplegara el valor del salario total calculado.

Datos de entrada: Numero entero de la categoría, numero entero de las horas extra trabajadas, número real del salario.

Datos de salida: Valor total del salario.

Datos adicionales: Ninguno.

Proceso:

El usuario introduce los datos requeridos que son el número de la categoría, el salario y las horas extras, estas dependiendo su número van a tomar un factor importante ya que solo se aceptan 30 horas extras como máximo, además se debe tener en cuenta que se deben usar sentencias condicionales y selectivas para conocer las horas extra base como también la categoría a las que pertenece, el programa calculara el valor del salario total y lo imprimirá.


Diagrama de flujo:



Programa en C:







Codigo fuente:


//Algoritmo: Salario
//Nombre:David Ponce
//Fecha: 11/11/2014
/* Descripcion: El usuario introduce los datos requeridos que son el nuemro de la categoría, el salario y las horas extras, estas dependiendo 
su numero van a tomar un factor importante ya que solo se aceptan 30 horas extras como máximo, además se debe tener en cuenta que se deben usar
 sentencias condicionales y selectivas para conocer las horas extra base como también la categoría a las que pertenece, el programa calculara el 
 valor del salario total y lo imprimirá.*/

 #include <stdio.h>

main()
{
int hx, cat;
float sal, salt;
printf("Ingrese por favor su salario \n ");
scanf("%f", &sal);
printf("Ingrese el numero de horas extra \n ");
scanf("%d", &hx);
printf("Ingrese su categoria \n ");
scanf("%d", &cat);
if (hx>30)
{
switch (cat)
{
case 1: 
salt=1200+sal;
break;
case 2:
salt=1500+sal;
break;
case 3:
salt=2550+sal;
break;
case 4:
salt=sal;
break;
default:
salt=sal;
break;
}
}
else
{
switch (cat)
{
case 1: 
salt=(hx*40)+sal;
break;
case 2:
salt=(hx*50)+sal;
break;
case 3:
salt=(hx*85)+sal;
break;
case 4:
salt=sal;
break;
default:
salt=sal;
break;
}
}
printf("Su salario total es %.3f", salt);
getch();
}

domingo, 16 de noviembre de 2014

Programacion en C Video tutorial para sumar dos enteros

En este video podemos apreciar las sentencias secuenciales, en donde recordaremos las librerías y las reglas que debemos seguir para programar en C, en este video podemos ver como se suman dos números y podremos comprender las ordenes que se deben ejecutar en cualquier programa que desarrollaremos.





miércoles, 12 de noviembre de 2014

Programa en C para saber si tres numeros estan forma Acendente

Construye un diagrama de flujo y el correspondiente programa en C que, al recibir como datos de entrada tres valores enteros diferentes entre sí, determine si los mismos están en orden creciente.

Análisis del problema: Necesitamos una un programa para determinar si una serie de 3 números esta ordenada en forma ascendente y para determinarla debemos usar secuencias condicionales anidadas.

Datos de entrada: Tres números enteros positivos.

Datos de salida: Los números en forma ascendente y un mensaje de los números están ordenados.

Datos adicionales: Ninguno.

Proceso:

El usuario introduce los números sea en forma ordenada o desordenada el programa verificara si los números estas ordenados en forma ascendente mediante sentencias condicionales anidadas, de no ser así el programa desplegara un mensaje de “los números no están ordenados en forma ascendente” y si están ordenados, el programa desplegara los números ordenados y el mensaje “los números están ordenados”.



Diagrama de flujo:






Código fuente:

//Algoritmo: Acendente
//Nombre:David Ponce
//Fecha: 12/11/2014
/* Descripcion: El programa debera identificar si los numeros introducidos estas en orden ascendente, caso contrario el programa dara un mensaje de que 
esta en dicho orden, esto lo logramas con sentencias condionales, que nos ayudan a determinar si son iguales, y si cumplen con los requerimentos,
se usara secuencias condicionales de segundo nivel de anidamiento.*/

 #include <stdio.h>

main()
{
int n1, n2, n3;
printf("Ingrese el primer numero \n ");
scanf("%d", &n1);
printf("Ingrese el segundo numero \n ");
scanf("%d", &n2);
printf("Ingrese el tercer numero \n ");
scanf("%d", &n3);
if (n1!=n2&&n1!=n3&&n2!=n3)
{
if(n1<n2&&n1<n3)
{
if(n2<n3)
{
printf("Los numeros %d, %d, %d estan en orden", n1, n2, n3);
}
else
{
printf("Los numeros estan en desorden");
}
}
else
{
printf("Los numeros estan en desorden");
}
}
else
{
printf("Los numeros son iguales");
}
getch();
}

Programa en C:








domingo, 9 de noviembre de 2014

Programa en C para Determinar el numero mayor entre dos numeros

El programa nos ayudara a conocer el numero mayor de los dos ingresados, este mediante secuencias condicionales identificara el numero mayor, ademas si se ingresa dos números iguales el programa dará salida a un mensaje de que son iguales.

//Cabecera
//Nombre: David Ponce
//Fecha: 07/11/2014
/* Descripción: Se debe ingresar dos números enteros, de manera que el programa identifique con una declaración de sentencia condicional si es mayor, de ser el caso el programa despliega el valor mayor, ademas existe otra secuencia condicional para que si los números son iguales el programa desplegara un mensaje que son iguales.*/


Código Fuente:


Pruebas de Escritorio:








miércoles, 5 de noviembre de 2014

Programa en C "contraseña"

El programa creado permitirá conocer sobre las secuencias condicionales y algunos comando vistos para desplegar texto en pantalla, se muestra aquí el código fuente usado, como también las pruebas de escritorio realizadas.

Código Fuente:




Pruebas de Escritorio:








con este programa identificamos las secuencias secuenciales y practicamos los comandos para la salida de información como también los de ingreso de datos.