Professional Documents
Culture Documents
Que es programacin.
Tipos de datos.
Operadores (tipos).
Sumas.
Restas.
Multiplicacin.
Divisiones.
(Operaciones bsicas)
If
If anidados
Switch
Switch anidados
-
Ciclos repetitivos
For
While
Do While
-
Vectores.
Matrices.
Qu es programacin?
La programacin es el proceso de disear, escribir, probar, depurar y
mantener el cdigo fuente de programas computacionales. El cdigo fuente
es escrito en un lenguaje de programacin. El propsito de la programacin
es crear un programa que exhiba un comportamiento deseado. El proceso
de escribir cdigo requiere frecuentemente conocimientos en muchas reas
distintas, como el dominio de la aplicacin, algoritmos especializados y
lgica formal.
Historia
Para que la computadora entienda nuestras instrucciones debe usarse un
lenguaje especfico conocido como cdigo mquina, el cual comprende
fcilmente, pero que lo hace excesivamente complicado para las personas.
De hecho slo consiste en cadenas interminables de nmeros 1 y 0.
(Sistema de nmeros Binario)
Para facilitar el trabajo, los primeros operadores de computadoras
decidieron reemplazar los 1 y 0 por palabras o letras provenientes del
ingls; ste se conoce como lenguaje ensamblador. Por ejemplo, para sumar
se usa la letra A de la palabra inglesa add (sumar). En realidad escribir en
lenguaje ensamblador es bsicamente igual que hacerlo en lenguaje
mquina, pero las letras y palabras son ms fciles de recordar y entender
que los nmeros.
A medida que la complejidad de las tareas que realizaban las computadoras
aumentaba, se hizo necesario disponer de un mtodo ms adecuado para
programarlas. Entonces, se crearon los lenguajes de alto nivel. Mientras que
una tarea tan sencilla como sumar dos nmeros puede necesitar varias
instrucciones en lenguaje ensamblador, en un lenguaje de alto nivel bastar
con solo una.
Una vez que se termina de escribir un programa en ensamblador o en un
lenguaje de alto nivel es necesario compilarlo, es decir, traducirlo a lenguaje
mquina.
Lenguaje de programacin
Desarrollo de la documentacin.
Existe un error comn que trata por sinnimos los trminos 'lenguaje de
programacin' y 'lenguaje informtico'. Los lenguajes informticos engloban
a los lenguajes de programacin y a otros ms, como por ejemplo HTML
(lenguaje para el marcado de pginas web que no es propiamente un
lenguaje de programacin, sino un conjunto de instrucciones que permiten
disear el contenido de los documentos).
Permite especificar de manera precisa sobre qu datos debe operar una
computadora, cmo deben ser almacenados o transmitidos y qu acciones
debe tomar bajo una variada gama de circunstancias. Todo esto, a travs de
un lenguaje que intenta estar relativamente prximo al lenguaje humano o
natural. Una caracterstica relevante de los lenguajes de programacin es
precisamente que ms de un programador pueda usar un conjunto comn
Lxico y programacin
Programar es ms sencillo que aprender una lengua. La programacin se
rige por unas reglas que se asemejan con ciertas diferencias, a las de una
lengua natural. La particularidad estriba en que las reglas de programacin
tienen menor ambigedad.
En los lenguajes de programacin de alto nivel se distinguen diversos
elementos entre los que se incluyen el lxico propio del lenguaje y las reglas
semnticas y sintcticas.
Programas y algoritmos
Un algoritmo es una secuencia no ambigua, finita y ordenada de
instrucciones que han de seguirse para resolver un problema. Un programa
normalmente implementa (traduce a un lenguaje de programacin
concreto) un algoritmo. Ntese que es la secuencia de instrucciones en s (la
ejecucin) la que debe ser finita, con el nmero de pasos realizados.
Los programas suelen subdividirse en partes menores (mdulos), de modo
que la complejidad algortmica de cada una de las partes sea menor que la
del programa completo, lo cual ayuda al desarrollo del programa.
Segn Niklaus Wirth, un programa est formado por algoritmos y estructura
de datos.
Se han propuesto diversas tcnicas de programacin cuyo objetivo es
mejorar tanto el proceso de creacin de software como su mantenimiento.
Entre ellas, se pueden mencionar las siguientes:
programacin estructurada
programacin modular
programacin declarativa
Compilacin
El programa escrito en un lenguaje de programacin (comprensible por el
ser humano, aunque se suelen corresponder con lenguajes formales
descritos por gramticas independientes del contexto) no puede ejecutarlo
directamente una computadora. La opcin ms comn es compilar el
programa obteniendo un mdulo objeto, aunque tambin puede ejecutarse
a travs de un intrprete informtico.
El cdigo fuente del programa se debe someter a un proceso de traduccin
para convertirse en lenguaje mquina, interpretable por el procesador. A
este proceso se le llama compilacin.
Normalmente la creacin de un programa ejecutable (un tpico.exe para
Microsoft Windows o DOS) conlleva dos pasos. El primer paso se llama
compilacin (propiamente dicho) y traduce el cdigo fuente escrito en un
lenguaje de programacin almacenado en un archivo a cdigo en bajo nivel
(normalmente en cdigo objeto, no directamente a lenguaje mquina). El
segundo paso se llama enlazado en el cual se enlaza el cdigo de bajo nivel
generado de todos los ficheros y subprogramas que se han mandado
compilar y se aade el cdigo de las funciones que hay en las bibliotecas
del compilador para que el ejecutable pueda comunicarse directamente con
el sistema operativo, traduciendo as finalmente el cdigo objeto a cdigo
mquina, y generando un mdulo ejecutable.
Estos dos pasos se pueden hacer por separado, almacenando el resultado
de la fase de compilacin en archivos objetos (un tpico.obj para Microsoft
Windows, DOS o para Unix); para enlazarlos en fases posteriores, o crear
directamente el ejecutable; con lo que la fase de compilacin se almacena
slo temporalmente. Un programa podra tener partes escritas en varios
lenguajes (por ejemplo C, C++ y Asm), que se podran compilar de forma
independiente y luego enlazar juntas para formar un nico mdulo
ejecutable.
Programacin e ingeniera del software
Existe una tendencia a identificar el proceso de creacin de un programa
informtico con la programacin, que es cierta cuando se trata de
programas pequeos para uso personal, y que dista de la realidad cuando
se trata de grandes proyectos.
El proceso de creacin de software, desde el punto de vista de la ingeniera,
incluye los siguientes pasos:
1. Reconocer la necesidad de un programa para solucionar un problema
o identificar la posibilidad de automatizacin de una tarea.
2. Recoger los requisitos del programa. Debe quedar claro qu es lo que
debe hacer el programa y para qu se necesita.
3. Realizar el anlisis de los requisitos del programa. Debe quedar claro
cmo debe realizar el programa las cosas que debe hacer. Las
Implementacin
23
FF
12
10
50
23
30
40
C0
00
ALGORITMO
Qu es un algoritmo?:
Definicin: Un algoritmo es un conjunto finito de pasos especficos y
organizados para realizar una labor.
Un algoritmo es una secuencia de pasos lgicos necesarios para llevar a
cabo una tarea especfica, como la solucin de un problema. Los algoritmos
son independientes tanto del lenguaje de programacin en que se expresan
como de la computadora que los ejecuta. En cada problema el algoritmo se
puede expresar en un lenguaje diferente de programacin y ejecutarse en
una computadora distinta.
Caractersticas de los algoritmos
Ventajas:
Fcil implementacin.
No requiere memoria adicional.
Realiza pocos intercambios.
Rendimiento constante: poca diferencia entre el peor y el mejor caso.
Desventajas:
Lento.
Realiza numerosas comparaciones.
3.-Ordenamiento por Insercin
En este tipo de algoritmo los elementos que van a ser ordenados son
considerados uno a la vez. Cada elemento es INSERTADO en la posicin
apropiada con respecto al resto de los elementos ya ordenados.
Ventajas:
Fcil implementacin.
Requerimientos mnimos de memoria.
Desventajas:
Lento.
Realiza numerosas comparaciones.
Este tambin es un algoritmo lento, pero puede ser de utilidad para listas
que estn ordenadas o semiordenadas, porque en ese caso realiza muy
pocos desplazamientos.
4.-Ordenamiento Rpido (Quicksort)
Esta es probablemente la tcnica ms rpida conocida. Fue desarrollada por
C.A.R. Hoare en 1960. El algoritmo original es recursivo, pero se utilizan
versiones iterativas para mejorar su rendimiento (los algoritmos recursivos
son en general ms lentos que los iterativos, y consumen ms recursos). El
algoritmo fundamental es el siguiente:
Eliges un elemento de la lista.
Buscas la posicin que le corresponde en la lista ordenada.
Acomodas los elementos de la lista a cada lado del elemento de divisin,
de manera que a un lado queden todos los menores que l y al otro los
mayores . En este momento el elemento de divisin separa la lista en dos
sublistas.
Realizas esto de forma recursiva para cada sublista mientras stas tengan
un largo mayor que 1. Una vez terminado este proceso todos los elementos
estarn ordenados.
Una idea preliminar para ubicar el elemento de divisin en su posicin final
sera contar la cantidad de elementos menores y colocarlo un lugar ms
arriba. Pero luego habra que mover todos estos elementos a la izquierda del
elemento, para que se cumpla la condicin y pueda aplicarse la
recursividad. Reflexionando un poco ms se obtiene un procedimiento
mucho ms efectivo. Se utilizan dos ndices: i, al que llamaremos contador
por la izquierda, y j, al que llamaremos contador por la derecha. El algoritmo
es ste:
Recorres la lista simultneamente con i y j: por la izquierda con i (desde el
primer elemento), y por la derecha con j (desde el ltimo elemento).
Cuando lista sea mayor que el elemento de divisin y lista[j] sea menor los
intercambias.
Repites esto hasta que se crucen los ndices.
El punto en que se cruzan los ndices es la posicin adecuada para colocar
el elemento de divisin, porque sabemos que a un lado los elementos son
todos menores y al otro son todos mayores (o habran sido intercambiados).
Al finalizar este procedimiento el elemento de divisin queda en una
posicin en que todos los elementos a su izquierda son menores que l, y
los que estn a su derecha son mayores.
Ventajas:
Muy rpido
PSEUDOCODOGICO
El pseudocdigo (falso lenguaje) es comnmente utilizado por los
programadores para omitir secciones de cdigo o para dar una explicacin
del paradigma que tom el mismo programador para hacer sus cdigos esto
quiere decir que el pseudocdigo no es programable sino facilita la
programacin.
El principal objetivo del pseudocdigo es el de representar la solucin a un
algoritmo de la forma ms detallada posible, y a su vez lo ms parecida
posible al lenguaje que posteriormente se utilizara para la codificacin del
mismo.
Caractersticas y partes
Las principales caractersticas de este lenguaje son:
1. Se puede ejecutar en un ordenador
2. Es una forma de representacin sencilla de utilizar y de manipular.
asigne a
el valor de
se
representan
de
la forma usual
en
Ejemplos de Pseudocdigo
Proceso
Flujo
Almacn
Terminador
PROCESO:
El primer componente de diagrama de flujo de datos se conoce como
Proceso. El proceso nuestra una parte del sistema que transforman Entradas
y Salidas. Algunas analistas prefieren usar un ovalo o un rectngulo con
esquinas redondeadas, otros prefieren usar un rectngulo. Las diferencias
entre estas tres formas son puramente cosmticas, aunque obviamente es
importante usar la misma forma de la manera consistente para representar
todas las funciones de un sistema.
FLUJO:
Un flujo se representa grficamente por medio de una flecha que entra y
sale de proceso; el flujo se usa para describir el movimiento, de bloques o
paquetes de informacin de una parte del sistema a otra.
Los flujos realmente representan Datos, es decir, Bits caracteres, mensajes,
nmeros, de puntos, flotante y los diversos tipos de informacin con los que
las computadoras pueden tratar.
Los flujos tambin muestran la direccin: Una cabeza de flecha en cualquier
extremo(o posiblemente ambos) del flujo indica si los datos (o el material)
se est moviendo hacia adentro a hacia fuera por ejemplo indica claramente
que el numero se est mandando hacia el proceso denominado validar
numero telefnicos, y el flujo denominado honorarios de entrega de
chferes. Los datos que se mueven a dicho flujo viajaran ya sea de un
proceso a otro.
Ejemplo:
ALMACN:
Se utiliza para modelar una coleccin de paquetes de datos en reposo. Se
denota por dos lneas paralelas, de modo caracterstico el nombre que se
utiliza para identificar para los paquetes que entran y salen del almacn por
medios de flujo.
PEDIDOS:
Para el analista con conocimiento de proceso de datos es tentador referirse
a los almacenes como archivos o bases de datos; pro un almacn tambin
pudiera consistir en datos almacenados tambin pudiera consistir en datos
almacenados en tarjetas perforadas, microfilm, microfichas, discos pticos,
etc. y un almacn tambin puede ser en conjunto de fichas de papel en una
caja de cartn , nombres de fichas de papel en un directorio, diversos
archivos en un archivero, o varias formas no computarizadas.
Los almacenes se conectan por flujos a los procesos. As el contexto en el
que se muestra en un DFD (Diagrama de Flujo de Datos) es uno de los
siguientes:
TERMINADOR:
Se representa como un rectngulo como los terminadores ser representa en
entidades externas con las cuales el sistema se comunica, continuamente,
puede ser una persona, o un grupo. Por ejemplo: una organizacin externa n
o una agencia gubernamental, o un grupo o departamento que este dentro
7. Solo los smbolos de decisin pueden y deben tener mas de una lnea
de flujo de salida.
Variable (programacin)
En programacin, las variables son estructuras de datos que, como su
nombre indica, pueden cambiar de contenido a lo largo de la ejecucin de
un programa. Una variable corresponde a un rea reservada en la memoria
principal del ordenador pudiendo ser de longitud:
Tipos de datos
mbito
Respecto al mbito de una variable, ste puede ser:
Si bien es cierto, que de una forma bsica, se puede definir el mbito de las
variables de la forma expuesta ms arriba, existen grados de globalidad de
las mismas, pudiendo ser accesibles desde unos puntos u otros, o incluso
pudiendo ser accesibles entre aplicaciones distintas, llegando al caso de la
superglobalidad. Ejemplo del mbito de una variable en el lenguaje de
programacin Java.
public class A {
public Integer numeroEntero = new Integer(); /* Variable Global a todos
los Mtodos */
public Integer metodo() {
int num = 1; // Variable Local a metodo. Puede accederse dentro de
este mtodo en cualquier parte, pero no fuera del mismo.
for (int i = 0;i<numeroEntero.intValue();i++) { // i es local al bucle for,
slo puede ser accedida dentro del mismo.
num *= i;
}
// i = 2; Esta lnea provocara error al no haber declarado la variable i. i
fue definida localmente al bucle for.
return Integer.valueOf(num);
}
public void otroMetodo() {
int num = 1; // Variable local a otroMetodo. num aqu es una variable
distinta a la variable num de metodo
System.out.println("Variable local num: " + num);
}
}
Hay que tener en cuenta que en Java el caso de las variables globales
a todos los mtodos que se encuentran en una clase, es algo peculiar,
ya que estas realmente son atributos que definen un objeto de una
clase determinada, en este caso la clase A tiene un atributo llamado
numeroEntero. El atributo es un concepto que define a un objeto de
una clase determinada, mientras que una variable sirve de apoyo a
los procedimientos y no define conceptualmente objetos.
Ejemplo
El valor de pi = 3.1416
return 0;
}
Lo cual mostrar por pantalla:
Pi vale 3.1415926
Es decir, PI es una constante a la que le hemos asignado el valor
3.1415926 mediante la directiva #define.
La directiva #define tambin se puede utilizar para definir expresiones ms
elaboradas con operadores (suma, resta, multiplicacin etc) y otras
constantes que hayan sido definidas previamente, por ejemplo:
#define X 2.4
#define Y 9.2
#define Z X + Y
Tipo de dato
En los lenguajes de programacin un tipo de dato es un atributo de una
parte de los datos que indica al ordenador (y/o al programador) algo sobre
la clase de datos sobre los que se va a procesar. Esto incluye imponer
restricciones en los datos, como qu valores pueden tomar y qu
operaciones se pueden realizar. Tipos de datos comunes son: enteros,
nmeros de coma flotante (decimales), cadenas alfanumricas, fechas,
horas, colores, coches o cualquier cosa que se nos ocurra. Por ejemplo, en
Java, el tipo "int" representa un conjunto de enteros de 32 bits cuyo rango
va desde el -2.147.483.648 al 2.147.483.647, as como las operaciones que
se pueden realizar con los enteros, como la suma, resta y multiplicacin. Los
colores, por otra parte, se representan como tres bytes denotando la
cantidad de rojo, verde y azul, y una cadena de caracteres representando el
nombre del color; las operaciones permitidas incluyen la adicin y
sustraccin, pero no la multiplicacin.
ste es un concepto propio de la informtica, ms especficamente de los
lenguajes de programacin, aunque tambin se encuentra relacionado con
nociones similares de las matemticas y la lgica.
En un sentido amplio, un tipo de datos define un conjunto de valores y las
operaciones sobre estos valores. [1] Casi todos los lenguajes de programacin
explcitamente incluyen la notacin del tipo de datos, aunque lenguajes
diferentes pueden usar terminologa diferente. La mayor parte de los
lenguajes de programacin permiten al programador definir tipos de datos
adicionales, normalmente combinando mltiples elementos de otros tipos y
definiendo las operaciones del nuevo tipo de dato. Por ejemplo, un
programador puede crear un nuevo tipo de dato llamado "Persona" que
especifica que el dato interpretado como Persona incluir un nombre y una
fecha de nacimiento.
Un tipo de dato puede ser tambin visto como una limitacin impuesta en la
interpretacin de los datos en un sistema de tipificacin, describiendo la
representacin, interpretacin y la estructura de los valores u objetos
almacenados en la memoria del ordenador. El sistema de tipificacin usa
informacin de los tipos de datos para comprobar la verificacin de los
programas que acceden o manipulan los datos.
CARCTER
El tipo de dato carcter es un digito individual el cual se puede representar
como numricos (0 al 9), letras (a-z) y smbolo ($,_). NOTA: En lenguaje java
la codificacin Unicode permite trabajar con todos los caracteres de
distintos idiomas.
Tipo de dato Rango Tamao de bits
char
0 a 65536
16 bits
NUMERICOS Este tipo de dato puede ser real o entero, dependiendo del tipo
de dato que se vaya a utilizar.
Enteros: son los valores que no tienen punto decimal, pueden ser positivos o
negativos y el cero.
Tipo Ordinal
o
Tipos predefinidos
Tipo No Ordinal
o
Tipos compuestos
Artculo principal: Tipos compuestos
Artculo principal: Tupla
Artculo principal: Vector (programacin)
Cadena de caracteres
Estructura de datos
Operador
En matemticas, un operador es un smbolo matemtico que indica que
debe ser llevada a cabo una operacin especificada[1] sobre un cierto
nmero de operandos (nmero, funcin, vector, etc.).
que se
A B o desigualdad.
Este caso es justamente el opuesto al anterior, aunque aqu no
podemos hablar de asignacin, pero si de comparacin. Ahora el
resultado de esta operacin ser F si los valores A y B son iguales y V
si son distintos.
Operadores lgicos
Los operadores lgicos producen un resultado booleano, y sus operandos
son tambin valores lgicos o asimilables a ellos (los valores numricos son
asimilados a cierto o falso segn su valor sea cero o distinto de cero). Por
contra, recuerde que las operaciones entre bits producen valores arbitrarios.
Los operadores lgicos son tres; dos de ellos son binarios, el ltimo
(negacin) es unario. Tienen una doble posibilidad de representacin en el
Estndar C++ actual: la representacin tradicional que se indica a
continuacin, y la natural introducida recientemente que se detalla ms
adelante .
Y lgico &&
AND
O lgico ||
OR
Uno
Dos
Tres falso
falso
cierto
3 || Operador O lgico
Este operador binario devuelve true si alguno de los operandos es cierto.
En caso contrario devuelve false.
Sintaxis
expr-OR-logica || expresion-AND-logica
Comentario
Este operador sigue un funcionamiento anlogo al anterior. El primer
operando (izquierdo) es convertido a bool. Para ello, si es una expresin, se
evala para obtener el resultado (esta computacin puede tener ciertos
efectos laterales). A continuacin el valor obtenido es convertido a bool
cierto/falso siguiendo las reglas de conversin estndar (
3.2.1b). Si el
resultado es true, el proceso se detiene y este es el resultado, sin que en
este caso sea necesario evaluar la expresin de la derecha (recurdese que
en el diseo de C++ prima la velocidad).
Si el resultado del operando izquierdo es false, se contina con la
evaluacin de la expresin de la derecha, que tambin es convertida a bool.
Si el nuevo resultado es true, entonces el resultado del operador es true.
En caso contrario el resultado es false.
Nota: el Estndar establece que antes de ser evaluada la expresin
derecha, han sucedido todos los posibles efectos laterales de la expresin
izquierda, a excepcin de la destruccin de los posibles objetos temporales
que se hubieran creado.
Ejemplo
#include <iostream.h>
bool alto = true, bajo = false, blanco = true, negro = false;
int main (void) {
if (alto || bajo) { cout << "Uno cierto" << endl; }
else cout << "Uno falso" << endl;
if (alto || blanco) { cout << "Dos cierto" << endl; }
else cout << "Dos falso" << endl;
if (bajo || negro) { cout << "Tres cierto" << endl; }
else cout << "Tres falso" << endl;
}
Salida
Uno cierto
Dos cierto
Tres falso
4 ! Operador NO lgico:
Este operador es denominado tambin negacin lgica y se representa en el
texto escrito por la palabra inglesa NOT (otros lenguajes utilizan
directamente esta palabra para representar el operador en el cdigo).
Sintaxis
! expresion-cast
Comentario
El operando expresion-cast (que puede ser una expresin que se evala a
un resultado es convertido a tipo bool, con lo que solo puede ser uno de los
valores cierto/falso. A continuacin el operador cambia su valor: Si es
cierto es convertido a falso y viceversa.
Resulta por tanto, que el resultado de este operador es siempre un tipo
bool, aunque al existir una conversin estndar por la que un cero es
convertido a false, y cualquier valor distinto de cero a true, coloquialmente
se dice que este operador convierte un operando 0 en 1 y uno no-cero en 0.
En otras palabras: este operador devuelve cierto (true) si la expresin se
evala a distinto de cero, en caso contrario devuelve falso (false).
Ejemplo
#include <iostream.h>
bool alto = true, bajo = false;
int main (void) {
if (alto) { cout << "Uno cierto" << endl; }
else cout << "Uno falso" << endl;
if (!alto) { cout << "Dos cierto" << endl; }
else cout << "Dos falso" << endl;
if (!bajo) { cout << "Tres cierto" << endl; }
else cout << "Tres falso" << endl;
}
Salida:
Uno cierto
Dos falso
Tres cierto
OPERADORES ARITMTICOS
Tipos de Operadores Relacinales
Lgicos
(constante o variable)
Operadores Aritmticos
+ Suma
Resta
* Multiplicacin
/ Divisin
Mod Modulo (residuo de la divisin entera)
Ejemplos:
Expresin Resultado
7 / 2 3.5
12 mod 7 5
104 + 2 * 5 14
1. ^ Exponenciacin
2. *, /, mod Multiplicacin, divisin, modulo.
3. +, Suma y resta.
Los operadores en una misma expresin con igual nivel de prioridad
se evalan de izquierda a
derecha.
Ejemplos:
4 + 2 * 5 = 14
23 * 2 / 5 = 9.2 46 / 5 = 9.2
3 + 5 * (10 (2 + 4)) = 23 3 + 5 * (10 6) = 3 + 5 * 4 = 3 + 20 =
23
3.5 + 5.09 14.0 / 40 = 5.09 3.5 + 5.09 3.5 = 8.59 3.5 = 5.09
2.1 * (1.5 + 3.0 * 4.1) = 28.98 2.1 * (1.5 + 12.3) = 2.1 * 13.8 = 28.98
Nota: Si
instruccin
o sentencia dentro
de
la
Selectiva anidada
Diagrama de flujo:
Sintaxis:
if(condicin1) Bloque 1 ;
else if(condicin2) Bloque 2 ;
else Bloque 3;
Ejemplo:
if(edad < = 2 )
Console.WriteLine("Beb" ) ;
else if(edad < 12)
Console.WriteLine("Nio" ) ;
else if( edad < 18)
Console.WriteLine("Adolescente" ) ;
else Console.WriteLine (" Adulto" ) ;
Selectiva mltiple
La estructura selectiva mltiple es similar a la selectiva anidada,
salvo que las condiciones deben ser de alguno de los tipos enteros o
de tipo carcter.
Diagrama de flujo:
Sintaxis:
switch(Expresin)
{
case Cte 1: Bloque 1 ; break;
case Cte 2: Bloque 2 ; break;
ACUMULADOR
Un acumulador es una variable cuya misin es almacenar cantidades
variables. Realiza la misma funcin que un contador pero con la
diferencia de que el incremento o decremento es variable y no
constante como en el contador. La forma de representar un
acumulador es: S = S + valorVariable
Nota: En todo acumulador es necesario que exista una instruccin
que inicializa la variable que va a tener la funcin de acumulador y
esta variable puede ser cualquier identificador. Ejemplo 5: Calcular el
promedio de notas de 10 alumnos, primero debemos utilizar una
variable acumulador para ir sumando las 10 notas (cantidades
variables) y luego dividir este valor entre diez. La variable S va a
tener la funcin de ser el acumulador. Solucin del ejemplo 5. S=0
leer(nota) S=S+nota Prom=S/10
Esto es la forma como trabaja un acumulador.
FOR
Estructura Repetitiva Desde/Para
En muchas ocasiones se conoce de antemano el nmero de veces
que se desean ejecutar las acciones o instrucciones de un bucle. En
estos casos en los que el nmero de iteraciones es fijo, se debe usar
la estructura desde/para. Por ejemplo, ingresar 10 notas, 100
nmeros, etc. La representacin grfica de la estructura repetitiva
desde/para en un Diagrama de Flujo es el siguiente:
Instrucciones
C = 1, C<=50, C = C + 1
Instrucciones
DO WHILE
Instrucciones
(ES)
condicion
verdadero
falso
WHILE
Condicin
falso
Instrucciones
(ES)
Vectores.
Un vector es un conjunto de elementos relacionados. En la mayora
de los lenguajes de computadora, todos los elementos de un vector(o
arreglo unidimensional) son del mismo tipo.
Para poder hacer referencia a los elementos de un vector es necesario
que exista un nombre para el mismo. A cantidad mxima de
elementos que podemos almacenar en un vector se le llama
dimensin.
No es posible acceder a todos los datos de un arreglo al mismo
tiempo, en vez de ello se tiene que usar un nombre de arreglo y un
nmero, llamado ndice, que indica a qu elemento del vector se est
haciendo referencia.
Matrices.
Ejercicios
1.- Hacer diagrama de flujo que lea un vector de N elementos y que
indique cuntos de ellos son pares.
2.- Hacer diagrama de flujo que lea una matriz de N X 3. El diagrama
debe calcular el promedio por fila e cual de tales promedios es el
mayor.
3.- Hacer diagrama de flujo que lea un vector de N elementos y que
indique cuntos de ellos mltiplos de tres y cuntos mltiplos de 5.
4.- Hacer un diagrama de flujo que lea un vector de dimensin N y
que calcule la siguiente norma:
(X1-M)2+ (X1-M) 2+...+ (XN-M) 2
Norma = ----------------------------------------N2
Donde M es la media aritmtica del vector X.
5.- Hacer un diagrama de flujo que lea dos matrices y que calcule su
producto.
6.- Hacer un diagrama de flujo que lea dos matrices y que calcule su
suma.
7.- Hacer un diagrama de flujo que lea una matriz entera de
dimensin NxM y que calcule su matriz transpuesta.
8.- Hacer un diagrama de flujo que lea una matriz entera de
dimensin NxM y que calcule el promedio de sus elementos.
9.- Hacer una diagrama de flujo que lea una matriz de caracteres de
dimensin NxM y que indique cuntos de los caracteres de tal matriz
son letras a.
10.- Que lea dos vectores numricos de dimensin N y que indique
cul de ellos tiene la mayor media aritmtica de sus elementos.