Vous êtes sur la page 1sur 14

Indice

1. Introduccin
2. Algoritmo: Definicin

4. Variables: Definicin
5. Flujograma: Definicin
6. Bibliografa
1. Introduccin
Los matemticos hindes, rabes y europeos fueron los primeros que
desarrollaron tcnicas de clculo escrito. El matemtico rabe Al'Khwarizmi , alrededor del ao 830 DC,
escribe un libro de Aritmtica, traducido al latn como Algoritmi de numero Indorum, donde introduce
el sistema numrico indio (slo conocido por los rabes unos 50 aos antes) y los mtodos para calcular
con l. De esta versin latina proviene la palabraAlgoritmo.
Por algoritmo se entiende "una lista de instrucciones donde se especifica una sucesin
de operaciones necesarias para resolver cualquier problema de un tipo dado". Los algoritmos son modos
de resolucin de problemas, cabe aclarar que no slo son aplicables a la actividad intelectual, sino
tambin a todo tipo de problemas relacionados con actividades cotidianas. El algoritmo es
de carcter general y puede aplicarse a cualquier operacin matemtica o a cualquier problema. La
formulacin de algoritmos fue uno de los ms grandes adelantos dentro de la ciencia matemtica ya que a
partir de ello se pudieron resolver infinidad de problemas.
Landa, matemtico ruso, quien ha investigado mucho al respecto nos dice que "la ciencia matemtica, en
el proceso de su desarrollo, ha tratado de encontrar los algoritmos ptimos ms generales para resolver
los problemas que permitan la solucin uniforme de clases ms amplias de problemas de una manera, es
decir, empleando siempre el mismo sistema de operacin. Los algoritmos, para llegar a ser tales deben
reunir ciertas caractersticas. Una de ellas es que los pasos que deben seguirse deben estar
estrictamente descritos, cada accin 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
multiplicacin, no slo se realizar el procedimiento de resolucin parte para la multiplicacin de 4 x 4,
sino que el mismo algoritmo podr aplicarse a cualquier multiplicacin. La ltima de estas caractersticas
ser la resolucin, en otras palabras, esto quiere decir que el algoritmo deber llegar a un resultado
especfico.
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 realizacin de algoritmos es natural e innata en el hombre y en la mayora de los
casos es de tipo inconsciente, en otras palabras, las personas suelen resolver problemas sin tener que
recurrir a la aplicacin de cierto algoritmo. No obstante al encontrarse con problemas de un grado de
dificultad mayor es necesario detenerse a analizar y pensar en la solucin 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 ms que la representacin grfica de un
algoritmo y el cual es necesario para la realizacin 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 tcnica. Tambin se hablar de ciertos puntos referentes
a Estructura de Datos, Variables , Constantes y se reflejaran ejemplos para su mejor compresin.
2. Algoritmo: Definicin
Es un Mtodo 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 ambigedad.
Caractersticas
Preciso (debe indicar el orden de realizacin en cada paso y no puede tener ambiguedad ).

Definido (si se sigue dos veces, obtiene el mismo resultado cada vez)

Finito (tiene fin; un nmero 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.


3. Constantes: Definicin
Una constante es un dato cuyo valor no puede cambiar durante la ejecucin del programa. Recibe un
valor en el momento de la compilacin y este permanece inalterado durante todo el programa. Las
constantes se declaran en una seccin que comienza con la palabra reservada const . Despus de
declarar una constante se puede usar en el cuerpo principal del programa.
Tienen varios usos: ser miembro en una expresin, en una comparacin, 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 lnea del cuerpo del
programa se asigna una constante a una variable. En la siguiente, se usa una constante en una
comparacin. Y en la cuarta, la constante Sep interviene en una expresin que se asigna a una variable.
El resultado de ejecutar este programa sera una impresin en pantalla de los nmeros: 0, 10, 20, 30, 40,
50, 60, 70, 80 y 90.
Se puede hacer una divisin de las constantes en tres clases:
Constantes literales(sin nombre)

Constantes declaradas (con nombre)

Constantes expresin

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 * Radio * Radio;

Constantes declaradas
Tambin llamadas constantes con nombre, son las que se declaran en la seccin Const asignndoles un
valor directamente.
Por ejemplo:
const
Pi = 3.141592; (* valor real *)
Min = 0; (* entero *)
Max = 99; (* entero *)
Saludo = 'Hola'; (* cadena caract. *)

Constantes expresin
Tambin se declaran en la seccin Const pero a estas no se les asigna un valor directamente, sino que se
les asigna una expresin. Esta expresin se evala en tiempo de compilacin y el resultado se le asigna a
la constante.
Ejemplo:
const
Min = 0;
Max = 100;
Intervalo = 10;
N = (Max - Min) div Intervalo;
Centro = (Max - Min) div 2;
4. Variables: Definicin
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 ejecucin de un programa. Toda variable
pertenece a un tipo de dato concreto. En la declaracin 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:
Declaracin de variables
Esta es la primera fase en la vida de cualquier variable. La forma de declarar variables es muy sencilla.
Esta seccin 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 ms nombres de variables separados por comas:
var listaVar1:tipo1;...;listaVarn:tipon;
Una variable no representa ms que una porcin 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 ejecucin de un programa. Otra diferencia, es que a una variable no basta con
declararla, sino que tambin 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 declaracin de variables:
...
var
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 nmero con parte decimal. Y la sexta es un carcter, que no es lo mismo que una cadena
de un carcter (String[1]).
Iniciacin de variables
Esto no es ms 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 ejecucin, pues una variable tiene un valor indeterminado despus de declararla.
Principalmente, existen dos maneras de otorgar valores iniciales a variables:
Mediante una sentencia de asignacin

Mediante uno de los procedimientos de entrada de datos (read o readln)


Veamos un ejemplo que rene los dos casos:
begin
...
i:=1;
readln(n);
while i < n do begin
(* cuerpo del bucle *)
i := i + 1
end;
...
end.

Utilizacin 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 continuacin se presentan unas cuantas:
Incrementar su valor:
i := i + 1

Controlar un bucle:

for i:=1 to 10 do ...


Chequear una condicin:

if i<10 then ...


Participar en una expresin:

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 programacin dos cosas: el nmero de bytes requeridos para guardar el dato, y la manera
en que se manipulara y operara el dato.
La asignacin de tipos a los datos tiene dos objetivos principales:
Por un lado, detectar errores en las operaciones

Por el otro, determinar cmo ejecutar estas operaciones


Cada lenguaje de programacin tiene sus propios tipos de datos, algunos de estos son comunes a todos,
entre los tipos de datos comunes estn :
Entero,

Real,

Carcter,

Lgico,

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 numrica que puede tomar valores positivos o negativos, y sin parte
decimal. Este tipo de variables, puede utilizarse en asignaciones, comparaciones, expresiones
aritmticas, etc. Algunos de los papeles ms 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 ms...
A continuacin 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 (lgico)
El tipo de datos lgico es el que permite usar variables que disponen slo 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 paraguas *)
begin
(* aqui se determinarian los valores de "llueve" y "paraguas" *)
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 nmeros reales. Este es un tipo importante para los
clculos. Por ejemplo en los estadsticos, ya que se caracterizan por tratar fundamentalmente con valores

decimales. A continuacin 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 tambin 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 ',A:8:4)
end.
Los tipos char y string (carcter y cadena)
Con el tipo carcter se pueden tener objetos que representen una letra, un nmero, etc. Es decir, se usan
variables o constantes que representen un valor alfanumrico. Pero , cada variable slo podr almacenar
un carcter. Sin embargo, con las cadenas de caracteres (strings) se puede contener en una sla variable
ms de un carcter. Por ejemplo, se puede tener en una variable tu nombre.
Veamos a continuacin cmo se usan ambos tipos en el siguiente ejemplo:
type
tNombre = string[10]; (* puede almacenar 10 caracteres *)
var
nombre : tNombre; (* variable para almacenar el nombre *)
letra_NIF : char; (* caracter para contener la letra del NIF *)
begin
nombre := 'Beni';
letra_NIF := 'L';
writeln('Mi nombre es ',nombre,' y mi letra es ',letra_NIF)
end.

Estructura de Datos :Repetitivas y Secuencial


Estructuras Repetitivas
Las estructuras repetitivas o iterativas son aquellas en las que las acciones se ejecutan un nmero
determinado de veces y dependen de un valor predefinido o el cumplimiento de una determinada accin.
Caractersticas
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 accin un nmero
determinado o indeterminado de veces

En una Estructura Repetitiva Mientras (While) se repite una accin mientras se cumpla la
condicin que controla el bucle. La caracterstica principal de esta estructura es lque la condicin es
evaluada siempre antes de cada repeticin.

La estructura repetitiva Desde(FOR) permite que las instrucciones las cuales contiene en su
mbito, se ejecuten un nmero de veces determinado.
Entre las estructuras repetitivas se encuentran:
Mientras (while)
Repetir (repeat)

Estructura Mientras (while)


La estructura repetitiva while, es aqulla en que el cuerpo del bucle se repite mientras se cumple una
determinada condicin, su representacin grfica es:

Pseudocdigo en espaol
Mientras condicin hacer
Accin S1
Accin S2
:
accin Sn
Fin_mientras

Pseudocdigo en ingls
while condicin do
<Acciones>
:
End_while

Diagrama N-S

1er. Ejemplo:
Contar los nmeros enteros positivos introducidos por teclado. Se consideran dos variables enteras
NUMERO y CONTADOR (contar el nmero de enteros positivos). Se supone que se leen nmeros
positivos y se detiene el bucle cuando se lee un nmero negativo o cero.
Pseudocdigo
Inicio
contador
0
Leer (numero)
Mientras numero > 0 hacer
contador
contador+1
Leer (numero)
Fin_Mientras
Escribir('El nmero de enteros positivos es : ', contador)
Fin
Diagrama de Flujo 1er. Ejemplo

2do. Ejemplo
Se presenta algoritmo para el clculo de la sumatoria de los n primeros trminos 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 condicin 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
expresin booleana de la condicin sea falsa, justo la opuesta de la sentencia mientras.

Pseudocdigo en Espaol
Pseudocdigo en Ingls
Repetir
Repeat
<acciones>
:
Hasta que <condicin>
Until <condicin>
Diagrama de Flujo de Repetir

<acciones>
:

1 er .Ejemplo :
Preguntar un nombre y repetirse en pantalla tantas veces como se desee. (preguntar cantidad de
repeticiones), indicando el nmero de repeticin.
Declaracin de variables
Cadena : nom
entero : x, n
Inicio
escribir(Nombre : )
leer(nom)
escribir(Cuntas veces quieres repetirlo ? : )
leer(n)
para x
1 hasta n hacer
escribir(x.- , nom)
Fin
2do. Ejemplo
Construir un programa que sume todos los nmeros que introduce el usuario hasta que introduzca el
nmero cero.
/* declaraciones */
float numero, suma_acumulada;
/*instrucciones*/
comienzo
/* inicializacin */
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 expresin que especifica el valor inicial de un ndice, otra expresin que

determina cuando se contina o no el bucle y una tercera expresin que permite que el ndice se
modifique al final de cada pasada.
La forma general de esta sentencia es:
for (expresin 1; expresin 2; expresin 3) sentencia
en donde
expresin 1 (expresin de asignacin), inicializa algn parmetro (llamado ndice) que controla la
repeticin del bucle;
expresin 2 (expresin lgica), representa una condicin que debe ser satisfecha para que se contine la
ejecucin del bucle;
expresin 3 (expresin monaria o expresin de asignacin), modifica el valor del parmetro inicialmente
asignado por la expresin
La ejecucin de la sentencia for sucede de la siguiente forma:
1.
Se inicializan los parmetros.
2.

Se evala la expresin lgica.

2.1. Si el resultado es distinto de cero (verdadero), se ejecuta la sentencia, se evala la expresin que da
lugar a la progresin de la condicin y se vuelve al punto 2.
2.2. Si el resultado de 2, es cero (falso), la ejecucin de la sentencia for se da por finalizada y se contina
en la siguiente sentencia del programa.
En muchas ocasiones se conoce de antemano el nmero de veces que se desean ejecutar las acciones
de un bucle. En estos casos en el que el nmero de iteraciones es fija, se debe usar la estructura desde
o para.
La estructura Desde ejecuta las acciones del cuerpo del bucle un nmero especfico de veces y de modo
automtico controla el nmero de iteraciones o pasos a travs del cuerpo del bucle.
Pseudocdigo en Espaol
Pseudocdigo en Ingls
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 instruccin 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 << "\n\n";
for(i=1; i<=50; i++)
cout << setw(5) << i;
cout << "\n\n";
i = 0;
for( ; i<50; ) {
i++;
cout << setw(5) << i;
}
cout << "\n\n";

for(i=1 ; i<=50; ) {
cout << setw(5) << i;
i++;
}
cout << "\n\n";
i = 0;
for( ; ; ) {
i ++;
if (i > 50)
break;
else
cout << setw(5) << i;
}
getch();}
2do. Ejemplo
Expansin 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 expansin 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 aqulla en la que una accin (instruccin) 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.

Caractersticas
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 continuacin de otras sin posibilidad
de omitir ninguna y naturalmente, sin bifurcaciones.
Su representacin grfica es la siguiente:
Estructura Secuencial

....
Pseudocdigo De Una Estructura Secuencial
Inicio
:
:
acciones
:
fin
1er. Ejemplo :
Calcular el salario neto de un trabajador en funcin del nmero de horas trabajadas, precio de la
hora de trabajo y considerando unos descuentos fijos al sueldo bruto en concepto de impuestos (20 por
100).
Pseudocdigo
Inicio
{clculo salario neto}
leer nombre, horas, precio_hora
salario_bruto
horas * precio
impuestos
salario_neto

0.20 * salario_bruto
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:
1.
la nota promedio de cada uno de los tres estudiantes.
2.

2. la nota promedio de cada una de las asignaturas.

Leer ms: http://www.monografias.com/trabajos12/alflu/alflu.shtml#ixzz3gkNqGPP7

Vous aimerez peut-être aussi