Indice
1.
Introducción
2. Algoritmo:
Definición
4. Variables:
Definición
5. Flujograma:
Definición
6.
Bibliografía
1. Introducción
Los matemáticos hindúes, árabes y
europeos fueron los primeros que desarrollaron técnicas
de cálculo
escrito. El matemático árabe Al'Khwarizmi , alrededor del
año 830 DC, escribe un libro de
Aritmética, traducido al latín como Algoritmi de
numero Indorum, donde introduce el sistema
numérico indio (sólo conocido por los árabes
unos 50 años antes) y los métodos
para calcular con él. De esta versión latina
proviene la palabra Algoritmo.
Por algoritmo se
entiende "una lista de instrucciones donde se especifica una
sucesión de operaciones
necesarias para resolver cualquier problema de un tipo dado". Los
algoritmos son
modos de resolución de problemas,
cabe aclarar que no sólo son aplicables a la actividad
intelectual, sino también a todo tipo de problemas
relacionados con actividades cotidianas. El algoritmo es de
carácter general y puede aplicarse a
cualquier operación matemática
o a cualquier problema. La formulación de algoritmos fue
uno de los más grandes adelantos dentro de la ciencia
matemática ya que a partir de ello se pudieron resolver
infinidad de problemas.
Landa, matemático ruso, quien ha investigado mucho al
respecto nos dice que "la ciencia
matemática, en el proceso de su
desarrollo, ha
tratado de encontrar los algoritmos óptimos más
generales para resolver los problemas que permitan la
solución uniforme de clases más amplias de
problemas de una manera, es decir, empleando siempre el mismo
sistema de operación. Los algoritmos, para llegar a ser
tales deben reunir ciertas características. Una de ellas es que los
pasos que deben seguirse deben estar estrictamente descritos,
cada acción debe ser precisa, y debe ser general, es
decir, que pueda ser aplicable a todos los elementos de una misma
clase. Por ejemplo en el caso del algoritmo de una
multiplicación, no sólo se realizará el
procedimiento
de resolución parte para la multiplicación de 4 x
4, sino que el mismo algoritmo podrá aplicarse a cualquier
multiplicación. La última de estas
características será la resolución, en otras
palabras, esto quiere decir que el algoritmo deberá llegar
a un resultado específico.
Es de gran importancia aclarar que los algoritmos en si mismos no
resuelven problemas, se resuelven gracias al producto de
ejercer las operaciones dictadas por el algoritmo, se puede decir
que es por el planteamiento mismo. La realización de
algoritmos es natural e innata en el hombre y en
la mayoría de los casos es de tipo inconsciente, en otras
palabras, las personas suelen resolver problemas sin tener que
recurrir a la aplicación de cierto algoritmo. No obstante
al encontrarse con problemas de un grado de dificultad mayor es
necesario detenerse a analizar y pensar en la solución de
éste .
En el presente trabajo se enfocan diversos puntos que son de gran
importancia como lo son Algoritmo del cual hemos comentado
anteriormente . Flujograma el cual no es más que la
representación gráfica de un algoritmo y el cual es
necesario para la realización de un buen programa ,
haciendo que el hombre
organice sus ideas y conozca a fondo el problema a solucionar con
todas las posibles variantes o alternativas utilizando esta
técnica. También se hablará de ciertos
puntos referentes a Estructura de
Datos, Variables ,
Constantes y se reflejaran ejemplos para su mejor
compresión.
Es un Método
para resolver un problema mediante una serie de pasos precisos ,
definidos y finitos. Un algoritmo es una serie de operaciones
detalladas ,en otras palabras un algoritmo es un conjunto de
reglas para resolver una cierta clase de problemas y se puede
formular de muchas formas con el cuidado de que no exista
ambigüedad.
Características
- Preciso (debe indicar el orden de realización
en cada paso y no puede tener ambiguedad ). - Definido (si se sigue dos veces, obtiene el mismo
resultado cada vez) - Finito (tiene fin; un número determinado de
pasos ). - Debe ser Sencillo , Legible.
- Modular.
- Eficiente y Efectivo.
- Se ha de desarrollar en el menor tiempo
posible. - Correcto.
- Todo Algoritmo debe tener cero ó mas
entradas. - Debe tener al menos una salida y ésta debe ser
tangible.
Una constante es un dato cuyo valor no puede
cambiar durante la ejecución del programa. Recibe un valor
en el momento de la compilación y este permanece
inalterado durante todo el programa. Las constantes se declaran
en una sección que comienza con la palabra reservada const
. Después de declarar una constante se puede usar en
el cuerpo principal del programa.
Tienen varios usos: ser miembro en una
expresión, en una comparación, asignar su
valor a una variable, etc.
En el siguiente ejemplo se contemplan varios casos:
const Min = 0; Max = 100; Sep = 10; var i : integer; begin i := Min; while i < Max do begin writeln(i); i := i + Sep end end. |
En este ejemplo se declaran tres constantes (Min, Max y
Sep). En la primera línea del cuerpo del programa se
asigna una constante a una variable. En la siguiente, se usa una
constante en una comparación. Y en la cuarta, la constante
Sep interviene en una expresión que se asigna a una
variable. El resultado de ejecutar este programa sería una
impresión en pantalla de los números: 0, 10, 20,
30, 40, 50, 60, 70, 80 y 90.
Se puede hacer una división de las constantes en tres
clases:
- Constantes literales(sin nombre)
- Constantes declaradas (con
nombre) - Constantes expresión
- Constantes literales
Son valores de
cualquier tipo que se utilizan directamente, no se declaran ya
que no tienen nombre. En el siguiente ejemplo tienes un par de
constantes literales (el 3, el 4, y el 3.1416):
VolumenEsfera := 4/3 * 3.1416 * Radio |
- Constantes declaradas
También llamadas constantes con nombre, son las que se
declaran en la sección Const asignándoles un
valor directamente.
Por ejemplo:
const Pi = 3.141592; (* valor real *) |
- Constantes expresión
También se declaran en la sección Const pero a
estas no se les asigna un valor directamente, sino que se les
asigna una expresión. Esta expresión se
evalúa en tiempo de compilación y el resultado se
le asigna a la constante.
Ejemplo:
const Min = 0; |
4. Variables: Definición
Una variable es un nombre asociado a un elemento de
datos que
está situado en posiciones contiguas de la memoria
principal, y su valor puede cambiar durante la ejecución
de un programa. Toda variable pertenece a un tipo de dato
concreto. En
la declaración de una variable se debe indicar el tipo al
que pertenece. Así tendremos variables enteras, reales,
booleanas, etc. Por otro lado, distinguimos tres partes
fundamentales en la vida de una variable:
Declaración de variables
Esta es la primera fase en la vida de cualquier variable. La
forma de declarar variables es muy sencilla. Esta sección
debe comenzar con la palabra reservada var, seguida de una lista
de parejas lista_de_variables=tipo_al_que_pertenecen. Cada par
debe ir seguido por un punto y coma.
La lista_de_variables es uno o más nombres de variables
separados por comas:
var |
Una variable no representa más que una
porción de memoria en donde
guardamos un dato que dependerá del tipo al que pertenezca
la variable. A diferencia de una constante, el valor de una
variable puede cambiar durante la ejecución de un
programa. Otra diferencia, es que a una variable no basta con
declararla, sino que también es necesario iniciarla. Esto
se refiere a darle un valor inicial, y es importante ya que si no
lo hacemos, igual nos encontramos con errores cuando ejecutemos
el programa.
Ejemplo de declaración de variables:
… I, J, K : Integer; (* valores enteros Contador : Integer; Radio : Real; (* valor real *) Letra : Char; (* un caracter *) … |
En este ejemplo se declaran seis variables. Las cuatro
primeras son de tipo entero. La quinta es de tipo real, o sea, un
número con parte decimal. Y la sexta es un
carácter, que no es lo mismo que una cadena de un
carácter (String[1]).
Iniciación de variables
Esto no es más que darle un valor inicial a una variable.
Así como lo primero que se hace con una variable es
declararla, lo siguiente tiene que ser iniciarla. Esto se hace
para evitar posibles errores en tiempo de ejecución, pues
una variable tiene un valor indeterminado después de
declararla. Principalmente, existen dos maneras de otorgar
valores iniciales a variables:
- Mediante una sentencia de
asignación - Mediante uno de los procedimientos
de entrada de datos (read o readln)
Veamos un ejemplo que reúne los dos
casos:
begin … i:=1; readln(n); while i < n do begin (* cuerpo del bucle *) i := i + 1 end; … end. |
Utilización de variables
Una vez declarada e iniciada una variable, es el momento de
utilizarla. Esta es la parte que presenta un mayor abanico de
posibilidades. A continuación se presentan unas
cuantas:
- Incrementar su valor:
i := i + 1
- Controlar un bucle:
for i:=1 to 10 do …
- Chequear una condición:
if i<10 then …
- Participar en una expresión:
n := (Max – Min) div I
Tipos de datos.
El tipo de un dato es el conjunto de valores que puede tomar
durante el programa. Si se le intenta dar un valor fuera del
conjunto se producirá un error. El tipo de dato le indica
al compilador del lenguaje de
programación dos cosas: el número de bytes
requeridos para guardar el dato, y la manera en que se manipulara
y operara el dato.
La asignación de tipos a los datos tiene dos objetivos
principales:
- Por un lado, detectar errores en las
operaciones - Por el otro, determinar cómo ejecutar estas
operaciones
Cada lenguaje de
programación tiene sus propios tipos de datos,
algunos de estos son comunes a todos, entre los tipos de datos
comunes están :
- Entero,
- Real,
- Carácter,
- Lógico,
- Fecha / hora y Cadena.
El tipo integer (entero)
El
tipo de datos entero es un tipo simple, y dentro de estos, es
ordinal. Al declarar una variable de tipo entero, se
está creando una variable numérica que puede tomar
valores positivos o negativos, y sin parte decimal. Este tipo de
variables, puede utilizarse en asignaciones, comparaciones,
expresiones aritméticas, etc. Algunos de los papeles
más comunes que desarrollan son:
- Controlar un bucle .
- Usarlas como contador, incrementando su valor cuando
sucede algo . - Realizar operaciones enteras, es decir, sin parte
decimal - Y muchas más…
A continuación se muestra un
ejemplo en el que aparecen dos variables enteras. Como se puede
ver, en el ejemplo se muestran las dos maneras de declarar una
variable de tipo entero:
type tContador = integer; var i : tContador; n : integer; begin n := 10; (* asignamos valor al maximo i := 1; (* asignamos valor al contador while (i <= n) do begin writeln('El valor de i es ',i); i := i + 1 end end. |
El tipo boolean (lógico)
El tipo de datos lógico es el que permite usar variables
que disponen sólo de dos posibles valores: cierto ó
falso. Debido a esto, su utilidad salta a
la vista, y no es otra que variables de chequeo. Nos sirven para
mantener el estado de
un objeto mediante dos valores:
si/no
cierto/falso
funciona/no funciona
on/off
etc.
Para aclararlo, se muestra el siguiente
ejemplo:
type tLogico = boolean; var llueve : tLogico; (* si llueve o no paraguas : boolean; (* si encuentro o no el begin (* aqui se determinarian los if llueve and (not paraguas) then writeln('Me quedo en casita') else writeln('Me voy a dar un paseo') end. |
El tipo real
El tipo de datos real es el que se corresponde con los
números reales. Este es un tipo importante para los
cálculos. Por ejemplo en los estadísticos, ya que
se caracterizan por tratar fundamentalmente con valores
decimales. A continuación se muestra un ejemplo en el que
se utiliza el tipo real. En el se puede ver las dos formas de
declarar una variable real, y también el uso de una
constante real.
const pi = 3.1416; type tArea = real; var A : tArea; (* area *) R : real; (* radio *) begin R := 4.50; A := pi * R * R; (* calculamos el area writeln('El area para un radio de ',R:4:2,' es end. |
Los tipos char y string (carácter y cadena)
Con el tipo carácter se pueden tener objetos que
representen una letra, un número, etc. Es decir, se usan
variables o constantes que representen un valor
alfanumérico. Pero , cada variable sólo
podrá almacenar un carácter. Sin embargo, con las
cadenas de caracteres (strings) se puede contener en una
sóla variable más de un carácter. Por
ejemplo, se puede tener en una variable tu nombre.
Veamos a continuación cómo se usan ambos
tipos en el siguiente ejemplo:
type tNombre = string[10]; (* puede almacenar 10 var nombre : tNombre; (* variable para almacenar el letra_NIF : char; (* caracter para contener la begin nombre := 'Beni'; letra_NIF := 'L'; writeln('Mi nombre es ',nombre,' y mi letra es end. |
Estructura de Datos :Repetitivas y Secuencial
- Estructuras Repetitivas
Las estructuras
repetitivas o iterativas son aquellas en las que las acciones se
ejecutan un número determinado de veces y dependen de un
valor predefinido o el cumplimiento de una determinada
acción.
Características
- Las estructuras repetitivas permiten representar
aquellas acciones que pueden descomponerse en otras
sub-acciones primitivas. - Es una estructura
con una entrada y una salida en la cual se repite una
acción un número determinado o indeterminado de
veces - En una Estructura Repetitiva Mientras (While) se
repite una acción mientras se cumpla la condición
que controla el bucle. La característica principal de
esta estructura es lque la condición es evaluada siempre
antes de cada repetición. - La estructura repetitiva Desde(FOR) permite que las
instrucciones las cuales contiene en su ámbito, se
ejecuten un número de veces determinado.
Entre las estructuras repetitivas se
encuentran:
Mientras (while) | |
Repetir (repeat) |
Estructura Mientras (while)
La estructura repetitiva while, es aquélla en que
el cuerpo del bucle se repite mientras se cumple una determinada
condición, su representación gráfica
es:
Pseudocódigo en español
Pseudocódigo en inglés
Mientras condición hacer
while
condición
do
Acción S1
<Acciones>
Acción S2
:
:
End_while
acción Sn
Fin_mientras
Diagrama N-S
1er. Ejemplo:
Contar los números enteros positivos introducidos
por teclado. Se
consideran dos variables enteras NUMERO y CONTADOR
(contará el número de enteros positivos). Se
supone que se leen números positivos y se detiene el bucle
cuando se lee un número negativo o cero.
Pseudocódigo
Inicio
contador 0
Leer (numero)
Mientras numero > 0 hacer
contador
contador+1
Leer (numero)
Fin_Mientras
Escribir('El número de enteros positivos es : ',
contador)
Fin
Diagrama de Flujo – 1er. Ejemplo
2do. Ejemplo
Se presenta algoritmo para el cálculo de la
sumatoria de los n primeros términos de la siguiente
serie:
1*2*3 + 2*3*4 + 3*4*5 + 4*5*6
//WHILE_
#include <iostream.h>
#include <conio.h>
main(){
int i=0, n;
float termino, suma=0;
clrscr(); cout << "Digite el valor de N: "; cin
>> n; cout << "n";
while( i<n ){
i = i + 1;
termino = i * (i+1) * (i+2);
suma = suma + termino;
cout << i << " * " << i+1 << " *
" << i+2 << " = " << termino <<
endl;
}
cout << "nSumatoria = " << suma;
}
Estructura Repetir (repeat)
Esta estructura se ejecuta hasta que se cumpla una
condición determinada que se comprueba hasta el final del
bucle. Se ejecuta al menos una vez. El bucle
repetir-Hasta_que se repite mientras el valor de la
expresión booleana de la condición sea falsa, justo
la opuesta de la sentencia mientras.
Pseudocódigo en Español
Pseudocódigo en Inglés
Repetir
Repeat
<acciones>
<acciones>
:
:
Hasta que <condición>
Until <condición>
Diagrama de Flujo de Repetir
1 er .Ejemplo :
Preguntar un nombre y repetirse en pantalla tantas veces como se
desee. (preguntar cantidad de repeticiones), indicando el
número de repetición.
Declaración de variables
Cadena : nom
entero : x, n
Inicio
escribir(‘Nombre : ‘)
leer(nom)
escribir(‘Cuántas veces quieres
repetirlo ? : ‘)
leer(n)
para x 1 hasta n
hacer
escribir(x’.- ‘, nom)
Fin
2do. Ejemplo
Construir un
programa que sume todos los números que introduce el
usuario hasta que introduzca el número cero.
/* declaraciones */
float numero, suma_acumulada;
/*instrucciones*/
comienzo
/* inicialización */
suma_acumulada := 0;
leer (numero);
mientras numero > 0 repetir
comienzo
suma_acumulada := suma_acumulada + numero;
leer (numero);
fin mientras;
mostrar ("La suma acumulada es: ",
suma_acumulada);
fin;
Estructura Desde/Para (for)
Esta sentencia incluye una expresión que especifica el
valor inicial de un índice, otra expresión que
determina cuando se continúa o no el bucle y una tercera
expresión que permite que el índice se modifique al
final de cada pasada.
La forma general de esta sentencia es:
for (expresión 1; expresión 2; expresión 3)
sentencia
en donde
expresión 1 (expresión de asignación),
inicializa algún parámetro (llamado índice)
que controla la repetición del bucle;
expresión 2 (expresión lógica), representa una condición
que debe ser satisfecha para que se continúe la
ejecución del bucle;
expresión 3 (expresión monaria o expresión
de asignación), modifica el valor del parámetro
inicialmente asignado por la expresión
La ejecución de la sentencia for sucede de la siguiente
forma:
- Se inicializan los parámetros.
- Se evalúa la expresión
lógica.
2.1. Si el resultado es distinto de cero
(verdadero), se ejecuta la sentencia, se evalúa la
expresión que da lugar a la progresión de la
condición y se vuelve al punto 2.
2.2. Si el resultado de 2, es cero (falso), la
ejecución de la sentencia for se da por finalizada y se
continúa en la siguiente sentencia del programa.
En muchas ocasiones se conoce de antemano el número de
veces que se desean ejecutar las acciones de un bucle. En
estos casos en el que el número de iteraciones es fija, se
debe usar la estructura desde o para.
La estructura Desde ejecuta las acciones del cuerpo del bucle un
número específico de veces y de modo
automático controla el número de iteraciones o
pasos a través del cuerpo del bucle.
Pseudocódigo en Español
Pseudocódigo en Inglés
Desde variable(v)= vi Hasta vf hacer
For variable (v)= vi To
vf Do
<acciones>
<acciones>
:
Fin_desde
Donde:
v: Variable índice
vi, vf:
Valores inicial y final de la variable
Diagrama de Flujo de la estructura Desde/Para
1er.Ejemplo
Cuenta del 1 al 50 varias veces, con variantes de la
instrucción FOR.
//FOR_
#include <iostream.h>
#include <iomanip.h>
#include <conio.h>
main(){
int i=1;
clrscr();
for( ; i<=50; i++)
cout << setw(5) << i;
cout << "nn";
for(i=1; i<=50; i++)
cout << setw(5) << i;
cout << "nn";
i = 0;
for( ; i<50; ) {
i++;
cout << setw(5) << i;
}
cout << "nn";
for(i=1 ; i<=50; ) {
cout << setw(5) << i;
i++;
}
cout << "nn";
i = 0;
for( ; ; ) {
i ++;
if (i > 50)
break;
else
cout << setw(5) << i;
}
getch();}
2do. Ejemplo
Expansión binomial:
n n-i i
(a+b)_ = S ( n! / (i!×(n-i)!))×a ×
b
i=0
El siguiente algoritmo muestra en pantalla los
coeficientes de la expansión binomial para un N dado por
teclado:
//FOR_5.CPP
#include <iostream.h>
#include <conio.h>
float factorial(int numero){
int i;
float f=1;
for(i=1; i<=numero; i++)
f = f * i;
return f;
}
main(){
int n, i, a, b, coeficiente;
clrscr();
cout<<"Digite exponente(n) para calcular
coeficientes del binomial (a+b)_: ";
cin >> n;
cout <<"n";
for(i=0; i<=n; i++) {
coeficiente = factorial(n) /
(factorial(i)*factorial(n-i));
cout << coeficiente << " ";
}
getch();
return 0;
}
- Estructura Secuencial
- Es aquélla en la que una acción
(instrucción) sigue a otra en secuencia. Las tareas se
suceden de tal modo que la salida de una es la entrada de la
siguiente y así sucesivamente hasta el fin del
proceso.
Características
- La estructura secuencial tiene una entrada y una
salida. - Un programa puede contener simplemente una secuencia
de instrucciones. - Es aquella que ejecuta las acciones sucesivamente
unas a continuación de otras sin posibilidad de omitir
ninguna y naturalmente, sin bifurcaciones. - Su representación gráfica es la
siguiente:
Estructura Secuencial
….
Pseudocódigo De Una Estructura
Secuencial
Inicio
:
:
acciones
:
fin
1er. Ejemplo :
Calcular el
salario neto de
un trabajador en función
del número de horas trabajadas, precio de la
hora de trabajo y considerando unos descuentos fijos al sueldo
bruto en concepto de
impuestos (20
por 100).
Pseudocódigo
Inicio
{cálculo salario neto}
leer nombre, horas, precio_hora
salario_bruto horas * precio
impuestos 0.20 * salario_bruto
salario_neto salario_bruto_impuestos
escribir nombre, salario_bruto, salario_neto_bruto,
salario_neto
Fin
Diagrama de flujo – 1er. Ejemplo
2do. Ejemplo
Suponga que un curso estaba compuesto de tres estudiantes. Cada
uno de los estudiantes cursó dos asignaturas. Se deben
leer inicialmente los nombres de los tres estudiantes, los
nombres de las dos asignaturas y luego: las calificaciones
definitivas de cada una de las dos asignaturas para cada uno de
los tres estudiantes. Calcular:
- la nota promedio de cada uno de los tres
estudiantes. - 2. la nota promedio de cada una de las
asignaturas.
INICIO
CARACTER Asignatura1[10], Asignatura2[10],
Estudiante1[15], Estudiante2[15], Estudiante3[15];
REAL Est1Asig1, Est1Asig2,
Est2Asig1, Est2Asig2,
Est3Asig1, Est3Asig2,
PromedioAsignatura1, PromedioAsignatura2,
PromedioEstudiante1,PromedioEstudiante2,
PromedioEstudiante3;
Escribir("Digite Nombre asignatura 1: ")
Leer(Asignatura1)
Escribir("Digite Nombre asignatura 2: ")
Leer(Asignatura2)
Escribir("Digite Nombre estudiante 1: ")
Leer(Estudiante1)
Escribir("Digite Nombre estudiante 2: ")
Leer(Estudiante2)
Escribir("Digite Nombre estudiante 3: ")
Leer(Estudiante3)
//A continuación se pedirá digitar las 3 *
2 = 6 calificaciones
Escribir("Digite Calificaciones de ", Estudiante1,
":")
Escribir("En la asignatura de ", Asignatura1, ":
")
Leer(Est1Asig1)
Escribir("En la asignatura de ", Asignatura2, ":
")
Leer(Est1Asig2)
Escribir("Digite Calificaciones de ", Estudiante2 ":
")
Escribir("En la asignatura de ", Asignatura1, ":
")
Leer(Est2Asig1)
Escribir("En la asignatura de ", Asignatura2, ":
")
Leer(Est2Asig2)
Escribir("Digite Calificaciones de ", Estudiante3, ":
")
Escribir("En la asignatura de ", Asignatura1, ":
")
Leer(Est3Asig1)
Escribir("En la asignatura de ", Asignatura2, ":
")
Leer(Est3Asig2)
//A continuación los cálculos
necesarios
PromedioEstudiante1 = (Est1Asig1 + Est1Asig2) /
2
PromedioEstudiante2 = (Est2Asig1 + Est2Asig2) /
2
PromedioEstudiante3 = (Est3Asig1 + Est3Asig2) /
2
PromedioAsignatura1 = (Est1Asig1 + Est2Asig1 +
Est3Asig1) / 3
PromedioAsignatura2 = (Est1Asig2 + Est2Asig2 +
Est3Asig2) / 3
Escribir("Promedio estudiantes en ", Asignatura1, "=",
PromedioAsignatura1)
Escribir("Promedio estudiantes en ", Asignatura2, "=",
PromedioAsignatura2)
Escribir("Promedio ", Estudiante1, " = ",
PromedioEstudiante1)
Escribir("Promedio ", Estudiante2, " = ",
PromedioEstudiante2)
Escribir("Promedio ", Estudiante3, " = ",
PromedioEstudiante3)
FIN.
3er. Ejemplo
En unas elecciones se presentan tres candidatos. a
continuación se presenta algoritmo para calcular estadísticas elementales de la
elección. Se tienen en cuenta los votos en blanco y la
población electoral total.
A
INICIO
Constante REAL TotalCensoElectoral = 50000
CARACTER Candidato1[15], Candidato2[15],
Candidato3[15]
REAL VotosCandidato1, VotosCandidato2, VotosCandidato3,
VotosEnBlanco,
TotalVotosEleccion,
PorcentajeCandidato1,PorcentajeCandidato2,
PorcentajeCandidato3,
PorcentajeVotosEnBlanco,
PorcentajeCiudadanosResponsables,
PorcentajeCiudadanosInconcientes;
Escribir("Digite Nombre candidato 1: ")
Leer(Candidato1)
Escribir("Digite Nombre candidato 2: ")
Leer(Candidato2)
Escribir("Digite Nombre candidato 3: ")
Leer(Candidato3)
Escribir("Digite votación de ", Candidato1, ":
")
Leer(VotosCandidato1)
Escribir("Digite votación de ", Candidato2, ":
")
Leer(VotosCandidato2)
Escribir("Digite votación de ", Candidato3, ":
")
Leer(VotosCandidato3)
Escribir("Digite votación en blanco ")
Leer(VotosEnBlanco)
//A continuación los cálculos
necesarios
TotalVotosEleccion = VotosCandidato1 + VotosCandidato2
+
VotosCandidato3 + VotosEnBlanco
PorcentajeCandidato1 = ( VotosCandidato1 /
TotalVotosEleccion ) * 100
PorcentajeCandidato2 = ( VotosCandidato2 /
TotalVotosEleccion ) * 100
PorcentajeCandidato3 = ( VotosCandidato3 /
TotalVotosEleccion ) * 100
PorcentajeVotosEnBlanco = ( VotosEnBlanco /
TotalVotosEleccion ) * 100
PorcentajeCiudadanosResponsables=(TotalVotosEleccion/TotalCensoElectoral)*100
PorcentajeCiudadanosInconcientes = 100 –
PorcentajeCiudadanosResponsables
Escribir("Porcentaje ", Candidato1, " = ",
PorcentajeCandidato1)
Escribir("Porcentaje ", Candidato2, " = ",
PorcentajeCandidato2)
Escribir("Porcentaje ", Candidato3, " = ",
PorcentajeCandidato3)
Escribir("Porcentaje de votos en blanco = ",
PorcentajeVotosEnBlanco)
Escribir("Si votaron = ",
PorcentajeCiudadanosResponsables, "%")
Escribir("NO votaron = ",
PorcentajeCiudadanosInconcientes, "%")
FIN.
Es un esquema para representar gráficamente un
algoritmo .Se basan en la utilización de diversos
símbolos para representar operaciones
específicas. Se les llama diagramas de
flujo porque los símbolos utilizados se conectan por
medio de flechas para indicar la secuencia de
operación.
Para hacer comprensible los Diagramas a todas
las personas , los Símbolos se sometieron a una normalización , o lo que es en realidad se
hicieron símbolos casi universales, ya que , en un
principio cada usuario podría tener sus propios
símbolos para representar sus procesos en
forma de Diagrama de
Flujo. Esto trajo como consecuencia que solo el que
conocía sus símbolos, los podía
interpretar.
La simbología utilizada para la elaboración de
diagramas de flujo es variable y debe ajustarse a un
patrón definido previamente.
A continuación se mostrara las simbologías mas
utilizadas :
Simbologia utilizada en los diagramas de flujo
Símbolo
función
Ejemplo de un Algoritmo sencillo con su respectivo
Flujograma
Considere un Algoritmo para leer dos números A y B luego
sumarlos y por último imprimir o mostrar el resultado de
la suma.
Algoritmo : Representación Grafica :
Inicio
Leer A
Leer B
C = A + B
Mostrar C
Fin
- Rivas , Dolores y Salas Régulo.
1985
Introducción a la Computación
Tercera Edición – Esprosistemas.
- http : //www.ulpgc.es/otros/tutoriales/mtutor/indice.html
- http : //www.monografías.com
- http :
//www.edu.aytolacoruna.es/aula/programación/flujo.htm - http :
//www.etsi2.ugr.es/alumnos/mlii/alkhwarizmi/.htm - http :
//www.etsi2.ugr.es/alumnos/mlii/algoritmo/.htm - Colección Practica del Estudiante(Cole) ,
1983
Editorial Portada
Autor:
Anna Guzman