Documente Academic
Documente Profesional
Documente Cultură
Programacin
Estructurada y orientada a objetos
0
ndice
Introduccin .................................................................................... 1
Flujograma: Lenguaje algortmico .................................................. 6
El ejecutor de algoritmos en flujograma ............................................... 7
El lenguaje flujograma .......................................................................... 8
Smbolos grficos ............................................................................. 8
Reglas para construir algoritmos ...................................................... 9
Sintaxis de las sentencias ................................................................ 11
Ejemplos ......................................................................................... 13
La ejecucin de un algoritmo .......................................................... 16
ZinjaI: Entorno de desarrollo integrado para C/C++ .................... 19
ZinjaI................................................................................................... 20
Instalacin ....................................................................................... 20
Ejecutar y trabajar con ZinjaI ......................................................... 22
El lenguaje C++ ............................................................................ 25
El alfabeto de C++ .............................................................................. 26
Tipos de datos ................................................................................. 26
Nmeros ...................................................................................... 26
1. Subconjuntos de nmeros enteros ................................... 26
2. Subconjuntos de nmeros reales ..................................... 27
Caracteres.................................................................................... 27
Lgico ......................................................................................... 27
Lgicos........................................................................................ 27
Operadores ...................................................................................... 27
Operadores Numricos................................................................ 27
Operadores Lgicos .................................................................... 27
Operadores Relacionales............................................................. 28
Operador de Asignacin ............................................................. 28
Identificadores ................................................................................ 29
Expresiones ..................................................................................... 29
Sentencias ....................................................................................... 30
i
Sentencia de asignacin .............................................................. 31
Sentencias de decisin ................................................................ 31
Sentencias repetitivas .................................................................. 32
Relacin diseodesarrollo (algoritmoprograma) ...................... 35
Aprendiendo mediante ejemplos................................................... 42
Bibliografa ................................................................................... 45
Sitios web ...................................................................................... 46
ii
Introduccin OBJETIVOS DE APRENDIZAJE
CONTENIDOS
1. Metodologa General.
2. Elementos de MS Excel
1
Debido a que la palabra programar es de uso frecuente tanto en la Suele suceder que
vida comn y corriente como en la vida acadmica y profesional, es algunas palabras tienen
muy probable que el lector haya utilizado esta palabra. En la significado similar en su
siguiente actividad se le pide que mencione algunos contextos en uso cotidiano con su uso
que ha utilizado esta palabra: a nivel acadmico o
profesional, pero en
Actividad 1 La palabra programar
Escriba tres situaciones en las que ha utilizado la palabra programar a lo largo de estos dos ltimos
su vida. aparece de forma ms
1. refinada y casi siempre
sin ambigedades; la
2. palabra programacin
es una de ellas
3.
Tambin, es muy probable que, por el uso, el lector tenga una idea de lo
que es programar, por ello se le solicita escribir un concepto
Actividad 2 Programar significa:
Para cada una de las situaciones que list en la actividad anterior, escriba el significado
con que utiliz la palabra programacin:
1.
2.
3.
2
Ahora se presenta una definicin tomada de un libro sobre lenguajes de
programacin y una derivacin hecha por el autor
Procesador
Dispositivo de entrada
Dispositivo de salida
Unidad de almacenamiento
3
Actividad 3
Conteste las siguientes preguntas:
1. Quin crea el programa o especificacin?
2. Cmo lo crea?
3. Para qu lo crearlo?
4. Por qu lo crea?
4
las llamamos algoritmos o programas (4). Estos algoritmos o programas
son creados en un ambiente artificial (9) tambin llamado mundo
abstracto. Todo lo que all se especifica debe hacerse en un lenguaje de
especificacin llamado lenguaje algortmico o lenguaje de
programacin. Entonces, la tarea del programador es, mediante un
proceso de abstraccin (3), construir un modelo en el mundo abstracto
que realice la tarea o resuelva el problema identificado en un mundo real.
Este modelo debe ser llevado a un sistema (6), el cual consta de ejecutor
y algoritmo (hardware y software). Una vez implantado este sistema en
el mundo real (5), el usuario (7) puede utilizarlo para realizar la tarea o
resolver el problema.
Este esquema general recin explicado servir de base para orientar los
conocimientos y habilidades que el lector desarrollar a lo largo de este
material. Es de suma importancia que el lector identifique en que mundo
est en cada momento: real o abstracto; pues esto implicar una mejor
comprensin de su tarea como programador.
5
Flujograma: OBJETIVOS DE APRENDIZAJE
Lenguaje
algortmico 3. Conocer la metodologa para
el estudio de la estadstica
aplicada a la investigacin
cuantitativa.
4. Conocer los elementos bsicos
de MS Excel 2007.
CONTENIDOS
3. Metodologa General.
4. Elementos de MS Excel
6
Para construir algoritmos existen varios lenguajes; estos pueden ser
formales o no formales. El lenguaje algortmico flujograma es un
lenguaje no formal diseado para ejecutores imaginarios. El propsito de
este lenguaje es especificar cmo funciona un algoritmo sin hacer
referencia a un ejecutor especfico o a algn lenguaje de programacin
en particular.
Actividad
Investigar qu es un lenguaje formal y no formal.
1. Es imaginario.
2. Tiene mecanismos para:
a. capturar datos del entorno.
b. devolver datos al entorno.
c. Procesar datos
3. Admite datos de tipo:
a. Numrico (nmeros reales)
b. Cadena (texto o combinaciones de texto y nmeros)
c. Carcter (a partir de cada smbolo del alfabeto, cada
dgito y algunos smbolos especiales como {, }, [, ], (, ),
+, , etc.)
d. Lgico (verdadero o falso, los cuales se pueden
representar como V y F respectivamente)
4. Se pueden definir identificadores variables, las cuales almacenan
datos de los tipos listados en 3. Estas variables tienen una
memoria asociada a la cual se hace referencia por medio del
identificador de variable.
5. Admite operaciones entre identificadores de variables o literales
a. Operaciones aritmticas, las cuales actan sobre
nmeros:
i. Adicin: +
ii. Sustraccin:
iii. Multiplicacin:
iv. Divisin: /
b. Operaciones relacionales, las cuales actan sobre
nmeros, o sobre caracteres, o sobre cadenas, o sobre
valores lgicos; pero no se pueden mezclar los tipos de
valor:
i. Igual que: =
ii. Menor que: <
7
iii. Mayor qu: >
iv. Menor o igual que:
v. Mayor o igual qu:
vi. Diferente de:
c. Operaciones lgicas:
i. Negacin: No
ii. Disyuncin: O
iii. Conjuncin: Y
d. Operaciones de cadena:
i. Longitud: Long(e), donde e es una expresin de
cadena.
ii. Concatenacin: +
El lenguaje flujograma
Este es un lenguaje no formal que utiliza, principalmente, smbolos
grficos para especificar un algoritmo.
Smbolos grficos
La siguiente lista de smbolos es una adaptacin de algunos estndares
internacionales:
Smbolo Significado
Inicio o Fin
Se utiliza para indicar al ejecutor el inicio o el
fin de un algoritmo.
Asignacin
Se utiliza para indicar que el ejecutor debe
realizar una asignacin.
Entrada
Se utiliza para indicar al algoritmo que debe
capturar una entrada o valor desde el entorno
Salida
Se utiliza para indicar al ejecutor que debe
mostrar un valor al entorno.
8
Smbolo Significado
Decisin
Indica al ejecutor que inicia un proceso de
decisin.
Subproceso o mdulo
Indica una llamada o invocacin a otro
algoritmo.
Lneas de flujo
Indican al ejecutor cul sentencia se debe
ejecutar.
Conector en la pgina
Se utiliza para conectar fragmentos de un
algoritmo en una misma pgina.
Conector entre pginas
Se utiliza para conectar fragmentos de
algoritmos entre pginas.
9
vez); estos valores pueden cambiar. El identificador de variable
debera representar un atributo en el dominio del problema.
5. Un identificador de constante cumple las mismas caractersticas
de un identificador de variable, excepto que el contenido de su
memoria no cambia.
6. Una expresin se forma mediante alguno de los siguientes casos
a. Un valor literal
b. Un identificador de variable.
c. Un identificador de constante.
d. Una operacin vlida entre valores literales,
identificadores de constante y/o identificadores de
variables.
7. Una sentencia es una orden. Existen sentencias simples:
a. entrada
b. asignacin
c. salida
d. inicio
e. fin
y existen sentencias compuestas:
a. decisin
b. repeticin
c. llamada
8. Un algoritmo es un conjunto de sentencias debidamente
enlazadas. Este conjunto debe cumplir con la definicin vista al
inicio. Adems:
a. Todo algoritmo tiene un inicio
b. Todo algoritmo tiene un fin.
c. Su estructura es:
i. Encabezado. Tambin llamado nombre, debe ser
un identificador con o sin parmetros.
ii. Descripcin. Se escribe entre llaves y explica el
propsito del algoritmo, describe de manera
general su funcionamiento, lista los
identificadores que utiliza, indica la fecha en que
fue construido y el autor.
iii. Cuerpo (al cuerpo es a lo que usualmente se le
llama flujograma, abusando del trmino).
d. Del smbolo de inicio debe salir una lnea de flujo.
e. Al smbolo de fin debe llegar una lnea de flujo.
f. De los smbolos de entrada, asignacin y salida debe
salir una lnea de flujo y debe llegar una lnea de flujo.
g. Del smbolo de decisin deben salir dos lneas de flujo y
debe llegar una lnea de flujo.
10
h. Las lneas de flujo pueden parecer en forma horizontal,
vertical o quebrada.
Sentencia Explicacin
Sentencia de Inicio
Inicio
El algoritmo indica al ejecutor el inicio. Se
puede interpretar como Encender el
ejecutor
Sentencia de Entrada
El algoritmo le indica al ejecutor que
capture o reciba datos del entorno y los
iv1, iv2, , ivn
guarde, uno en cada identificador de
variable.
Mientras los datos no sean ingresados
desde el entorno, el algoritmo estar a la
espera.
iv1=e1
Sentencia de Asignacin
iv2=e2 El algoritmo indica al ejecutor que
resuelva la expresin y almacene el
ivn=en resultado en el identificador.
11
Sentencia Explicacin
Sentencia de Decisin
El algoritmo indica al ejecutor que evale
la expresin lgica (el), si sta resulta
el No
verdadera entonces el algoritmo pide al
ejecutor que ejecute todas las sentencias
Si en la ruta Si, de lo contrario pide al
ejecutor que ejecute todas las sentencias
S1 S1 de la ruta No.
Sn Sm
Sentencia de Decisin
El algoritmo indica al ejecutor que evale
la expresin lgica (el), si sta resulta
el No
verdadera entonces el algoritmo pide al
ejecutor que ejecute todas las sentencias
Si en la ruta Si. Cuando la expresin lgica es
falsa el algoritmo indica al ejecutor pasar
S1 por la ruta No sin ejecutar sentencias.
Sn
Si el
No
12
Sentencia Explicacin
Sentencia de Repeticin (de cero o ms
iteraciones)
El algoritmo le indica al ejecutor que
el No evale la expresin lgica (el). Si esta
resulta verdadera el algoritmo pide al
ejecutor que ejecute las sentencias en la
Si
ruta Si. Luego le pide que vuelva a evaluar
le expresin lgica (el). Este proceso se
S1
repite mientras la expresin lgica resulta
Verdadero.
Sn
Ejemplos
A continuacin se presenta una serie de ejemplos. Es conveniente que el
lector repase todo lo anterior acerca de flujogramas para identificarlo en
los ejemplos
Ejemplo 1
Se desea escribir un algoritmo permite capturar cuatro nmeros reales, calcula su
media aritmtica y muestra el resultado
MediaAritmetica
{Este algoritmo captura cuatro nmeros reales, calcula su promedio y luego lo
13
muestra.
Num1, Num2, Num3 y Num4 son los cuatro nmeros reales
Prom es la media aritmtica de los cuatro nmeros
Autor: Lev Castro}
Inicio
Num1, Num2,
Num3, Num4
Prom=(Num1+Num2+Num3+Num4)/4
Prom
Fin
Ejemplo 2
Se desea escribir un algoritmo que permita mostrar las races reales de un polinomio de
grado dos en una variable.
Raices
{Este algoritmo calcula y muestra las races reales de un polinomio de grado dos a partir
del valor de los coeficientes.
A, B, C son los coeficientes principal, medio e independiente respectivamente.
D es el discriminante
R1, R2 son las races
Autor: Lev Castro }
14
Inicio
A, B, C
A<>0 No
Si
D=B2-4AC
Si D<0 No D=0 No
l coeficiente principal
no puede ser cero
No tiene races
reales Si
R1=-B/(2A) R1=(-B+Raiz(D))/(2A)
R1=(-B-Raiz(D))/(2A)
Primera raz: , R1
Segunda raz: , R1
Primera raz: , R1
Segunda raz: , R2
Fin
15
La ejecucin de un algoritmo
A continuacin se presenta un ejemplo detallado de lo que ocurre cuando un algoritmo se ejecuta. Para ello se considerar en un entorno al
algoritmo, al ejecutor y al usuario. Para efectos de este ejercicios se supone que el algoritmo Raices se ejecuta para encontrar las races de
x2 x 2 .
16
Algoritmo Explicacin Memoria Salida
Si D<0 No D=0 No
En la sentencia de decisin, el algoritmo pide al
ejecutor que evale la expresin D<0. Dado que
No tiene races
reales Si en la memoria de D est almacenado el valor 9,
D<0 es Falso. Entonces se ejecuta el bloque de A B C D R1 R2
R1=-B/(2A) R1=(-B+Raiz(D))/(2A)
R1=(-B-Raiz(D))/(2A)
sentencias en la ruta No. La lnea de flujo pasa 1 1 -2 9
Primera raz: , R1
el control de ejecucin hacia ese bloque.
Segunda raz: , R1
Primera raz: , R1
Segunda raz: , R2
17
Algoritmo Explicacin Memoria Salida
resultado en la memoria del identificador R2.
Luego el control de ejecucin pasa a la siguiente
sentencia.
El algoritmo pide al ejecutor que enve como Primera raz: 1
salida la cadena literal Primera raz: seguida A B C D R1 R2 Segunda raz: -2
del contenido del identificador R1, y Segunda 1 1 -2 9 1 -2
raz: seguida del contenido del identificador R2
Primera raz: , R1 Luego el control de ejecucin cierra la sentencia
Segunda raz: , R2
de decisin.
Luego el control de ejecucin cierra la otra
sentencia de decisin.
Luego el control de ejecucin pasa a la siguiente
sentencia.
Fin El algoritmo pide al ejecutor que se apague y Primera raz: 1
se destruye la memoria del algoritmo. Segunda raz: -2
18
ZinjaI: Entorno OBJETIVOS DE APRENDIZAJE
de desarrollo
integrado para 5. Conocer la metodologa para
el estudio de la estadstica
C/C++
aplicada a la investigacin
cuantitativa.
6. Conocer los elementos bsicos
de MS Excel 2007.
CONTENIDOS
5. Metodologa General.
6. Elementos de MS Excel
19
En esta seccin se explicar brevemente el entorno de desarrollo
integrado ZinjaI para que el lector pueda escribir, depurar y ejecutar los
programas de C++ que se proponen en captulos posteriores.
ZinjaI
En la pgina Web oficial de ZinjaI se afirma que:
Instalacin
Para instalar ZinjaI debe descargar el archivo de instalacin desde la
pgina Web oficial http://zinjai.sourceforge.net/, all encontrar
distribuciones para varios sistemas operativos e indicaciones para su
instalacin.
20
en donde podr encontrar una simple instruccin de instalacin. Si pulse
clic en
lo llevar a otra pgina. Debe esperar unos instantes hasta que aparezca
la ventana de descarga
21
Ejecutar y trabajar con ZinjaI
Para ejecutar ZinjaI puede entrar a la carpeta en que se instal y pulsar
doble clic en el archivo zinjai.exe o pulsar doble clic en el acceso directo
que se cre en el escritorio (esto ltimo es lo ms cmodo)
22
En nuestro caso seleccionaremos la primera opcin, Programa C++ en
blanco, y luego pulsaremos clic en Crear. Entonces aparecer una
ventana como la siguiente:
Barra de ttulo
Barra de men
Plantilla de
Barra de herramientas
programa simple
de ttulo
Nombre Externo del
programa
Nmero de lnea de
cdigo
23
En las ventanas de Windows, en la barra de ttulo, suelen aparecer
algunos botones en la parte superior derecha; a continuacin se describe
su uso:
(a) Maximizar:
(b) Minimizar:
(c) Cerrar:
24
El lenguaje C++ OBJETIVOS DE APRENDIZAJE
CONTENIDOS
7. Metodologa General.
8. Elementos de MS Excel
25
Es un lenguaje de multiparadigma; es decir que implementa varios
paradigmas de programacin: estructurado, orientado a objetos, etc:
Wikipedia
El alfabeto de C++
El alfabeto de C++ incluye:
2. Los dgitos:
0, 1, 2, 3, 4, 5, 6, 7, 8, 9
3. Smbolos especiales, entre ellos:
+, -, *, /, %, &, |, {, }
Tipos de datos
En C++ se definen algunos tipos de datos. Estos son importantes porque
especifican los conjuntos de datos con sus operaciones. Estos conjuntos
de datos sirven para representar magnitudes de la realidad en el lenguaje:
Nmeros
En Smalltalk se tienen varias tipos de datos que corresponden a
subconjuntos de nmeros conocidos en la aritmtica:
26
2. Subconjuntos de nmeros reales
float
double
long double
Caracteres
Un carcter es cualquiera de los caracteres ASCII. En C++ el tipo de dato
asociado se llama char.
Lgico
En C++ el tipo de dato asociado a los valores lgicos verdadero y falso
es bool; cuyos valores son true y false.
Lgicos
En C++ El tipo de dato asociado a las cadenas se llama string, pero
para utilizarlo se debe incluir una librera adicional. Tambin se puede
utilizar el tipo de dato char para declarar algunas cadenas con una
longitud especfica. Ambas cosas se estudiarn en detalle ms adelante.
Operadores
Los operadores permiten generar datos a partir de otros. Existen un gran
nmero de operadores pero a continuacin se listan los que utilizaremos
con mayor frecuencia
Operadores Numricos
Actan sobre los tipos numricos y pueden verse como equivalentes a las
operaciones sobre nmeros reales de las matemticas. Los que se listan a
continuacin devuelven valores de algn tipo numrico:
Operadores Lgicos
Permiten comparar objetos de tipo lgico devuelven valores lgicos.
27
Negacin ! !true devuelve false
Para conocer los valores que devuelven los operadores se puede utilizar
la siguiente tabla de verdad. Para el operador &&.
Operacin Valor
true && true true
true && false false
false && false false
false && true false
Pata el operador ||
Operacin Valor
true || true true
true || false True
false || false false
false || true true
Para el operador !
Operacin Valor
!true false
!false true
Operadores Relacionales
Sirven para comparar elementos de un mismo tipo y devuelven valores
bool.
Operador de Asignacin
Se puede realizar una asignacin de varias formas; una de ellas es
mediante el operador =. Por ejemplo, si x es una variable numrica (por
ejemplo int) entonces la siguiente es una asignacin:
28
x = 34;
La sintaxis general es
iv = e;
Identificadores
Un identificador es una palabra escrita en C++ que sirve para
representar algo. Usualmente un identificador representa algo de la
realidad.
Para escribir un identificador podemos seguir las mismas reglas que para
el lenguaje flujograma; aunque en C++ existen otros detalles acerca de
los identificadores, estos no sern estudiados en este libro.
int x, y;
bool primo;
float a, b, raz;
Expresiones
Es una secuencia de smbolos que puede ser evaluada, es decir toma un
valor. Existen varias formas de clasificar las expresiones:
29
1. Por la manera como expresa su valor
a. Literal
b. Variable
2. Por el tipo de valor que toma
a. int
b. float
c. bool
d. string
e. char
f. entre otros
Expresin Explicacin
67 Es un valor literal tipo int
d Es un valor literal tipo char
Sol Es un valor literal tipo string
true Es un valor literal tipo bool
78.09 Es un valor literal tipo float
int a, b;
float x, y;
char r;
string cod;
b
b*a
3*x - y/2
cod!=r
44
Revisado
M
Muy bien
56 + 67
Sentencias
Las sentencias son rdenes; en este caso rdenes del programa a la
computadora. A continuacin se listan las sentencias que utilizaremos
con ms frecuencia.
30
Sentencia de asignacin
Tiene la siguiente sintaxis
iv = e;
Sentencias de decisin
La sentencia de decisin permite modelar los procesos que en la vida real
requieren de seleccin de alternativas para la realizacin de tareas. Por
ejemplo, en una fbrica se puede tener la siguiente situacin:
C++ Flujograma
31
el No
Si
if (el){
sentencias
}
else{
sentencias
};
el No
Si
if (el){
sentencias
};
Sentencias repetitivas
En la vida real algunas tareas requieren la ejecucin repetida de ciertos
pasos; a esto llamamos repeticiones o ciclos. Para implementar esto en
un lenguaje algortmico o de programacin existen las sentencias
repetitivas.
Los ciclos que ocurren en la vida real no son todos de la misma
naturaleza interno o estructura. Por ejemplo:
32
2. Cuando una persona lleva los productos que desea comparar al
cajero del supermercado la persona que est en caja debe: tomar
un producto, marcar la cantidad de unidades (si es necesario),
pasarlo por el lector, verificar que los datos coincidan con el
producto. Pero si hay ms productos debe repetir estos pasos
para cada uno de los productos restantes.
3. Si un profesor desea calcular la nota final de sus alumnos
despus de aplicar cuatro exmenes deber: sumar las notas de
los exmenes, dividir el resultado entre la cantidad de exmenes,
registrar el resultado.
1. Cero o ms iteraciones.
2. Una o ms iteraciones:
1. Cantidad de iteraciones desconocida
2. Cantidad de iteraciones conocida
while (el){
sentencias
};
33
iteraciones; de hecho el total de iteraciones cuando el mtodo de
cambio es iv++ y el valor de referencia es e est dado por:
|e valor inicial| + 1.
34
Relacin OBJETIVOS DE APRENDIZAJE
diseodesarrollo
(algoritmoprogr 9. Conocer la metodologa para
el estudio de la estadstica
aplicada a la investigacin
ama) cuantitativa.
10. Conocer los elementos bsicos
de MS Excel 2007.
CONTENIDOS
9. Metodologa General.
10. Elementos de MS Excel
35
La etapa de desarrollo implica la escritura de programas a partir de los
algoritmos y de las interfaces diseados. Sin embargo, se debe enfatizar
que no existe una traduccin directa del diseo al desarrollo debido a las
caractersticas particulares de los lenguajes (algortmico y de alto nivel) y
a los requerimientos de hardware y software del programa.
Diseo Desarrollo
Ejecutor
Es Imaginario o ideal Es real y consta de: computadora+Sistema
operativo+bibliotecas
El lenguaje
Flujograma C++
El alfabeto
1. Abecedario 1. Abecedario
2. Dgitos Dgitos
3. Smbolos especiales (no existe una lista 2. Smbolos especiales (existe una lista
exhaustiva) exhaustiva)
4. Smbolos grficos
Tipos de datos
1. Nmero 1. int
long
float
long double
Entre otros.
2. Carcter
2. char
3. Cadena
3. string
4. Lgico
4. bool
Literales
36
Diseo Desarrollo
1. Numricos, por ejemplo: 1. Numricos, por ejemplo:
17 17
89.14
89.14
4/3
3. Cadena 3. string
Concatenacin: + Concatenacin: +=
.append()
Longitud: Lon Longitud: .length()
.size()
4. Lgicos (producen valores lgicos): 4. Boolean (producen valores Boolean)
Negacin: No Negacin: !
Conjuncin: Y Conjuncin: &&
Disyuncin: O Disyuncin: ||
Otros
Expresiones
37
Diseo Desarrollo
1. Numricas 1. Numrico:
Variables o literales de tipo numrico. Variables o literales tipo short, int,
Resultan de operaciones entre long, long long, float, double, long
variables y/o literales numricos. double.
Para evaluar la expresin, son vlidas Resultan de operaciones entre variables
las reglas de prioridad de las y/o literales numricos.
operaciones aritmticas Para evaluar la expresin, son vlidas las
reglas de prioridad de las operaciones
aritmticas.
2. Cadena 2. string
Variables o literales de tipo cadena. Resultan de operaciones entre variables
Resultan de operaciones entre y/o literales de string.
variables y/o literales de cadena. Es vlido el orden ascendente del
Es vlido el orden ascendente del alfabeto en el cual todas las maysculas
alfabeto en el cual todas las son menores que las minsculas, a es
maysculas son menores que las menor que z y los dgitos son
minsculas, a es menor que z y los menores que las letras.
dgitos son menores que las letras.
3. Lgicas 3. bool
Variables o literales de tipo lgico. Variables o identificadores de tipo bool.
Resultan de operaciones lgicas entre Resultan de operaciones bool entre
variables y/o literales lgicos. variables y/o literales bool.
Resultan de operaciones relacionales Resultan de operaciones relacionales
entre variables y/o literales de un entre variables y/o literales de un mismo
mismo tipo. tipo.
4. Carcter 4. char
Variables o literales de tipo carcter. Variables o literales de tipo char.
Resultan de algunas operaciones sobre Resultan de algunas operaciones sobre
cadenas. string.
Sentencias
1. Entrada 1. Entrada
cin>> iv;
iv1, iv2, , ivn
2. Asignacin
2. Asignacin iv = e;
iv1=e1
iv2=e2
ivn=en
38
Diseo Desarrollo
3. Decisin 3. Decisin
if(el){
sentencias;
}
el No else{
sentencias;
}
Si
if(el){
sentencias;
};
el No
Si
39
Diseo Desarrollo
4. Repeticin 4. Repeticin
n0 n0
while(el){
sentencias;
};
el No
Si
n conocido
for(iv=valor inicial; el; iv++){
sentencias;
};
n desconocido
do{
sentencias;
Si el }while(el);
No
5. Salida 5. Salida
cout<<e;
e1, , en
Algoritmo
nombre #include <bibliotecas>
using namespace std;
{descripcin} //Descripcin
flujograma Declaraciones
int main(){
sentencias;
return 0;
}
40
RaicesEcuacionCuadratica #include<iostream>
{Encontrar las races reales de una ecuacin de grado dos con coeficientes reales #include<cmath>
El coeficiente principal: a using namespace std;
El coeficiente del trmino medio: b /*Este programa recibe los coeficientes de una ecuacin de grado dos ordenada
El trmino independiente: c de mayor a menor
El discriminante: d a es el coeficiente principal
Una raz: x1 b es el coeficiente del trmino medio
Otra raz: x2
c es el coeficiente independiente
resp toma el valor S si se desea encontrar las races de una ecuacin cuadrtica o N en caso contrario}
d es el discriminante
Inicio
x1 es una raz
x2 es una raz
Resp resp toma el valor 'S' si desea continuar*/
41
Aprendiendo OBJETIVOS DE APRENDIZAJE
mediante
ejemplos 11. Conocer la metodologa para
el estudio de la estadstica
aplicada a la investigacin
cuantitativa.
12. Conocer los elementos bsicos
de MS Excel 2007.
CONTENIDOS
42
En esta seccin el lector aprender como aplicar conceptos de
programacin a nivel de diseo y desarrollo mediante ejemplos.
Asimismo se introducirn paulatinamente nuevos conceptos y
herramientas.
Ejemplo 2
Escribir un algoritmo que reciba un nmero y diga si es natural, entero o
racional
Solucin
Primero identificaremos los elementos del enunciado, sean estos implcitos
o explcitos, que son importantes para la construccin del algoritmo:
Anlisis
Atributos
Un nmero: n
Tipo de dato: Numrico
Valores vlidos:
Valores crticos: 0
Tipo de nmero: Natural, Entero, Racional
Tipo de dato: Cadena
Valores vlidos: Natural, Entero, Real
Valores crticos: No hay
Hechos
n<0
=
Procesos
Entrada: n
Salida: Un mensaje indicando el tipo de nmero
Escribir Racional
Si = , entonces
escribir Entero
Si n>0, entonces escribir Natural
Diseo
Tipo_de_numero
{Este algoritmo recibe un nmero y luego muestra un
mensaje indicando si ste es racional, entero o natural
n, es el nmero
43
Autor: Lev Castro}
44
Bibliografa
Sethi, R. (1991). Lenguajes de Programacin. Wilmington: Addison
Wesley.
45
Sitios web
http://www.cplusplus.com/
46