Pages

lunes, 31 de diciembre de 2012

Calcular el costo de una llamada telefónica – Diagrama de flujo

Problema
Hacer un programa o algoritmo que dada la duración en minutos de una llamada calcular el costo, considerando:
 - Hasta tres minutos el costo es 0.50
 - Por encima de tres minutos es 0.50 más 0.1 por
    cada minuto adicional a los tres primeros.

Solución
Inicializamos la variable “costo” en cero, luego se solicita al usuario ingrese el número de minutos que duró la llamada, se captura ese valor e la variable “m”,  luego:
Se compara si los minutos son menor igual a 3 (m<=3)
Si es Verdadero (Si)
    Costo de la llamada es 0.50
Si es Falso (No)
    Costo  lo calculamos con  0.5 + (0.5 * 0.1)*(m-3)
Se muestra el costo de la llamada
Finaliza.


Diagrama de flujo - Costo de llamada telefónica.

 Diagrama Fuente en FreeDFD 
 Código fuente en Java
 Código fuente en C++
 Código fuente en C
 Código fuente en C#
 Código fuente en Python
 Código fuente en Visual Basic

Determinar la cantidad de números mayor, menor e igual a once – Diagrama de flujo

Problema
Hacer un programa o algoritmo que de una lista de 10 números calcular la media y determinar cuántos son mayores que 11, cuántos son iguales y cuántos son menores.


Solución
Inicializa las variables “eq”,”ma”,”me” y “Sum” a cero, se solicita al usuario ingrese 10 números, Se crea un ciclo For, Los números se capturan en la variable “N”, luego
Se comprueba si el numero es igual a once (N=11)
Si es Verdadero (Si)
    Se actualiza el valor de “eq” adicionándole 1.
Si es Falso (No)
    Se compara si el numero es mayor a once (N>11)
    Si es Verdadero (Si)
        Se actualiza el valor de “ma” adicionándole 1.
    Si es Falso (No)
        Se actualiza el valor de “me” adicionándole 1.
Luego Se actualiza el valor de Sum adicionándole el valor del Numero, finaliza el ciclo, se muestra los resultados y finaliza.



Diagrama de flujo -  Determinar la cantidad de números igual, menor y mayor a 11.

 Diagrama Fuente en FreeDFD 
 Código fuente en Java
 Código fuente en C++
 Código fuente en C
 Código fuente en C#
 Código fuente en Python
 Código fuente en Visual Basic

Calcular el número personas asistentes a una fiesta – Diagrama de flujo

Problema
A una fiesta asistieron personas de diferentes edades y sexos. Construir un algoritmos dadas las edades y sexos de las personas.
Cuantas personas asistieron a la fiesta.
Cuantos hombres y cuantas mujeres.
Promedio de edades por sexo.
La edad de la persona más joven que asistió.
No se permiten menores de edad a la fiesta.
Ingresar datos hasta que se ingrese una edad igual a cero.

Solución
Se hace una llamada a la subrutina Inicializar en ella se inicializan las variables que van a ser utilizadas, se solicita al usuario ingresar la edad, luego se crea un bucle While, con la finalidad de ingresar datos hasta que se ingrese una edad igual a cero, este dato se guarda en la variable “E”,
Se comprueba si la edad es mayor igual a18  (E>=18)
Si es Verdadero (Si)
Se llama a la subrutina JovenFiesta, la cual nos permite determinar la edad del asistente mas joven de la fiesta, luego se llama a la subrutina ContarPersona, esta nos permite contar a los asistentes por sexo y calcular el total de asistentes a la fiesta.
Si es Falso (No)
    Se comprueba si la edad es igual a cero (E=0)
    Si es Verdadero (Si)
        Se retorna
    Si es Falso (No)
        Se muestra el mensaje que no se permiten menores de edad.
Finaliza el ciclo.
Fin.


Diagrama de flujo - Calcular el numero de asistentes a una fiesta

En la subrutina Inicializar, se inicializa las variables Sumv, para el promedio de edad de varones, Summ para el promedio de edades de las mujeres, cm, contador del número de mujeres,cv, contador del número de varones, E, valor inicial para poder acceder al ciclo while , men  toma un valor grande para realizar las comparaciones para hallar al más joven.


Diagrama de flujo - Subrutina Inicializar

En la Subrutina JovenFiesta,
Se compara si el valor de la edad es menor que men (E<men)
Si es Verdadero (Si)
    Se actualiza el valor de men con la Edad entrante
Si  es Falso (No)
    No hace nada 

Diagrama de flujo - Subrutina JovenFiesta

En la subrutina ContarPersona, Se solicita el ingreso del sexo, la cual se guarda en la variable “S”,
Se compara si S es igual a 1 (S=1)
Si es Verdadero (Si)
Entonces este asistente es varón,  Se actualiza la variable “Sumv” adicionándole la Edad, Se actualiza la variable “cv” adicionándole uno
Si es Falso (No)
    Entonces este asistente es mujer,  Se actualiza la variable “Summ” adicionándole la Edad, Se actualiza la variable “cm” adicionándole uno.

Diagrama de flujo - Subrutina ContarPersona.

 Diagrama Fuente en FreeDFD 
 Código fuente en Java
 Código fuente en C++
 Código fuente en C
 Código fuente en C#
 Código fuente en Python
 Código fuente en Visual Basic

Calcular el salario total de 20 personas – Diagrama de flujo

Problema
Hacer un programa o algoritmo que dado las horas trabajadas de 20 personas y la tarifa de pago, calcular el salario  total.

Solución
  • Entrada: 40 horas, 15 soles por hora
  • Salida: 12000
Se solicita al usuario ingrese las total de horas trabajadas y el costo por hora, estos valores se capturan en las variables, “h”, ”s”, luego de ello se realiza el cálculo del monto total de 20 trabajadores con  20*h*s, luego se muestra el resultado y finaliza.


Diagrama de flujo - Calcular Salario de 20 personas


 Diagrama Fuente en FreeDFD 
 Código fuente en Java
 Código fuente en C++
 Código fuente en C
 Código fuente en C#
 Código fuente en Python
 Código fuente en Visual Basic

Calcular las 30 primeras potencias de 3 – Diagrama de flujo

Problema
Hacer un programa o algoritmo que calcule las 30 primeras potencias de 3 y la suma de ellos.

Solución
Inicializamos la variable ”Sum” en cero, luego se crea un ciclo For para generar las 30 potencias de 3, luego se muestra cada una de las potencias de tres, se actualiza el valor de “Sum” con (Sum + ( 3^i)) adicionándole el valor de cada potencia para obtener la sumatoria, finalmente se muestra  la sumatoria y Finaliza.


Diagrama de flujo - Calcular las 30 primeras potencias de tres.

 Diagrama Fuente en FreeDFD
 Código fuente en Java
 Código fuente en C++
 Código fuente en C
 Código fuente en C#
 Código fuente en Python
 Código fuente en Visual Basic

Calcular el monto de descuento de una compra – Diagrama de flujo

Problema
Hacer un programa o algoritmo que dado el monto de una compra calcular el descuento considerado:
 Descuento es 20% si el monto es mayor a 100 soles.
 Descuento es 10% si el monto es mayor a 50 soles y menor o igual a 100 soles.
 No hay descuento si el monto es menor o igual a 50 soles.

Solución
  • Entrada: 100
  • Salida: 90
Se solicita al usuario ingrese el monto de la compra, la cual se captura en la variable “N”, luego
Se comprueba su el monto es mayor a 100 (N>100)
Si es verdadero (Si)
  Se realiza un descuento del 20% al monto de la compra y se muestra el valor de la compra,
  donde “monto” es N - N*0.2.
Si es Falso (No)
    Se compara si el monto esta entre  50 y 100 (N<=100 AND N>50)
    Si es Verdadero (Si)
           Se realiza un descuento del 10% al monto de la compra y se muestra el valor
           de la compra, donde   “monto” es N - N*0.1.
    Si es Falso (No)
          Se muestra el valor de la compra.
Finaliza.


Diagrama de Flujo - Calcular Monto de descuento en una compra.

 Diagrama Fuente en FreeDFD 
 Código fuente en Java
 Código fuente en C++
 Código fuente en C
 Código fuente en C#
 Código fuente en Python
 Código fuente en Visual Basic