Documentos de Académico
Documentos de Profesional
Documentos de Cultura
CURSO DE PROPEDUTICO
MATERIA: PENSAMIENTO LGICO PARA PROGRAMACIN
ELABORADO: LIC.
LI. MARTHA ELIZABETH GONZLEZ ZEPEDA
ISC. FERNANDO CARRANZA CAMPOS
(DeConceptos.com, 2016)
En el latn y tambin en el griego es donde se encuentra el origen etimolgico de las dos
palabras que dan forma al trmino pensamiento lgico. Pensamiento emana del verbo
pensare que es sinnimo de pensar. Lgico, por su parte, tiene en el griego su punto de
origen pues procede del vocablo logos que puede traducirse como razn.
El pensamiento lgico es aquel que se desprende de las relaciones entre los objetos y
procede de la propia elaboracin del individuo. Surge a travs de la coordinacin de las
relaciones que previamente ha creado entre los objetos.
Cabe destacar que la lgica es la ciencia que expone las leyes, los modos y las formas del
conocimiento cientfico.
Todas estas caractersticas son las que llevan a afirmar que el pensamiento lgico se
convierte en herramienta indispensable para el ser humano en su da a da pues gracias a l
puede conseguir resolver los problemas que le vayan surgiendo de manera cotidiana. As,
mediante la observacin de todo lo que le rodea, su propia experiencia, la comparacin,
la clasificacin de los objetos que se pueda encontrar o todo lo que puede observar en su
entorno tendr la capacidad para desarrollar dicho tipo de pensamiento y solventar los
conflictos que vayan apareciendo en su rutina.
deben de buscar distintas conclusiones y distintas formas de solucin ya que no todas sern
las correctas.
LA PROGRAMACIN
El pensamiento lgico es indispensable a la hora de programar, ya que nos permite
reconocer el problema que queremos solucionar, buscar una solucin que podamos
programar y analizar las salidas que obtengamos para formarnos conclusiones.
Un programa no siempre se comportar del mismo modo en todas las situaciones, sino que
mostrar unas salidas diferentes segn las entradas o la interaccin que realice en ese
instante con el entorno (si es que utiliza sensores). Por ello, es muy importante poder
anticiparnos y programar un cdigo que tenga en cuenta todas estas situaciones. Aqu es
donde entra en juego el pensamiento lgico. Cuanto ms desarrollada tengas esta
capacidad, tu programa har ms a menudo lo que pensabas que hara. (Dr. Scratch, 2016)
Los programas informticos suelen seguir algoritmos, que son el conjunto de instrucciones
que se encuentran organizadas y relacionadas entre s de cierta manera y que permiten
llegar a la solucin de un problema, y que a su vez contienen mdulos ms pequeos que le
aportan detalles ms finos, Los algoritmos y programas pueden ser representados de forma
grfica mediante Diagramas de Flujo de Programa.
PARTES ESENCIALES
Que la constituyen,
el hardware, es la composicin fsica (circuitos electrnicos, cables, gabinete, teclado, etctera)
y el
software, es la parte intangible (programas, datos, informacin, etctera).
Una no funciona sin la otra. (Wikipedia, 2016)
Dispositivos de Entrada
Permiten Introducir datos o informacin a la computadora.
Teclado:
Ratn
Escner
Magnticos
Lectores pticos
o Infrarrojos: Cdigo de barras, Huella digital
o Cmaras de vdeo
Dispositivos de Salida
Permiten mostrar o presentar informacin que almacena o procesa la computadora.
Monitor
Impresora
Procesador (CPU Unidad Central de Procesamiento)
ENTRADA DE DATOS
PROCESAMIENTO DE LOS
DATOS
26
64
0
0
25
32
0
0
Se suman
24
23
16
8
0
1
0
8
los valores cuyo
22
21
4
2
1
0
4
0
bits estn en 1
20
1
1
1
Valor
Decima
l
13
La memoria RAM se encuentra caracterizada por su capacidad, denotadas por las medidas
de almacenamiento. A continuacin se indican como son considerados.
Bit
Byte
0000 0001
0000 0010
0000 0011
0000 0100
0000 0101
0000 0110
0000 0111
0000 1000
0000 1001
0000 1010
0000 1011
0000 1100
0000 1101
0000 1110
0000 1111
0001 0000
0001 0001
0001 0010
0001 0011
0001 0100
0001 0101
0001 0110
0001 0111
0001 1000
0001 1001
0001 1010
0001 1011
0001 1100
0001 1101
0001 1110
0001 1111
0010 0000
0000 0001
0000 0010
0000 0011
0000 0100
0000 0101
0000 0110
0000 0111
0000 1000
VALOR
96
0000 1001
0000 1010
0000 1011
0000 1100
0000 1101
0000 1110
0000 1111
0001 0000
VALOR
15
0001 0001
0001 0010
0001 0011
0001 0100
0001 0101
0001 0110
0001 0111
0001 1000
VALOR
128
0001 1001
0001 1010
0001 1011
0001 1100
0001 1101
0001 1110
0001 1111
0010 0000
VALOR
19
Para llegar a las localidades de memoria se utiliza un decodificador de direccin que divide
o decodifica en columna y fila para determinar la posicin exacta para cada bit de dato o
informacin que es almacenado y que podr ser recuperado.
0000 0001
0000 0010
0000 0011
0000 0100
0000 0101
0000 0110
0000 0111
0000 1000
VALOR
96
pero que pasa para el nombre de una persona, cmo se almacena en la memoria RAM?, la
respuesta es mediante el cdigo ASCII, en el cual cada letra y smbolo tiene asociado un
valor decimal, el cual se transforma a binario y ocupa un byte.
A continuacin se muestra una pequea parte del cdigo ASCII (American Standard Code for
Information Interchange, es decir Cdigo Americano Estndar para el intercambio de
Informacin), una parte del Cdigo ASCII es de Control y otra de Caracteres Imprimibles,
otra parte se considera como ASCII Extendido.
Binario
0000 0000
0000 0001
0000 0010
Decimal
0
1
2
Hex
00
01
02
Abreviatura
NUL
SOH
STX
Repr
NUL
SOH
STX
AT
^@
^A
^B
Nombre/Significado
Carcter Nulo
Inicio de Encabezado
Inicio de Texto
0000 0011
0000 0100
0000 0101
0000 0110
0000 0111
0000 1000
0000 1001
0000 1010
0000 1011
3
4
5
6
7
8
9
10
11
03
04
05
06
07
08
09
0A
0B
ETX
EOT
ENQ
ACK
BEL
BS
HT
LF
VT
ETX
EOT
ENQ
ACK
BEL
BS
HT
LF
VT
^C
^D
^E
^F
^G
^H
^I
^J
^K
Fin de Texto
Fin de Transmisin
Consulta
Acuse de recibo
Timbre
Retroceso
Tabulacin horizontal
Salto de lnea
Tabulacin Vertical
He
Binario
Dec
Rep
Binario
Dec
Rep
0010 0000
32
20
espac
0100 0000
64
40
0010 0001
33
21
0100 0001
65
41
0010 0010
34
22
"
0100 0010
66
0010 0011
35
23
0100 0011
0010 0100
36
24
0010 0101
37
25
0010 0110
38
0010 0111
Binario
Dec
Hex
Rep
0110 0000
96
60
0110 0001
97
61
42
0110 0010
98
62
67
43
0110 0011
99
63
0100 0100
68
44
0110 0100
100
64
0100 0101
69
45
0110 0101
101
65
26
&
0100 0110
70
46
0110 0110
102
66
39
27
'
0100 0111
71
47
0110 0111
103
67
0010 1000
40
28
0100 1000
72
48
0110 1000
104
68
0010 1001
41
29
0100 1001
73
49
0110 1001
105
69
0010 1010
42
2A
0100 1010
74
4A
0110 1010
106
6A
0010 1011
43
2B
0100 1011
75
4B
0110 1011
107
6B
0010 1100
44
2C
0100 1100
76
4C
0110 1100
108
6C
0010 1101
45
2D
0100 1101
77
4D
0110 1101
109
6D
0010 1110
46
2E
0100 1110
78
4E
0110 1110
110
6E
0010 1111
47
2F
0100 1111
79
4F
0110 1111
111
6F
0011 0000
48
30
0101 0000
80
50
0111 0000
112
70
0011 0001
49
31
0101 0001
81
51
0111 0001
113
71
0011 0010
50
32
0101 0010
82
52
0111 0010
114
72
0011 0011
51
33
0101 0011
83
53
0111 0011
115
73
0011 0100
52
34
0101 0100
84
54
0111 0100
116
74
0011 0101
53
35
0101 0101
85
55
0111 0101
117
75
0011 0110
54
36
0101 0110
86
56
0111 0110
118
76
0011 0111
55
37
0101 0111
87
57
0111 0111
119
77
0011 1000
56
38
0101 1000
88
58
0111 1000
120
78
0011 1001
57
39
0101 1001
89
59
0111 1001
121
79
0011 1010
58
3A
0101 1010
90
5A
0111 1010
122
7A
0011 1011
59
3B
0101 1011
91
5B
0111 1011
123
7B
0011 1100
60
3C
<
0101 1100
92
5C
0111 1100
124
7C
0011 1101
61
3D
0101 1101
93
5D
0111 1101
125
7D
0011 1110
62
3E
>
0101 1110
94
5E
0111 1110
126
7E
0011 1111
63
3F
0101 1111
95
5F
A partir de esta tabla nos damos cuenta que las letras y caracteres estn asociados a un
nmero ordinal en decimal y su correspondiente valor en binario, la cual ocupa 8 bits, que
es igual a un byte de espacio en memoria por cada letra, as que si escribimos la palabra
Hola, esta ocupara las siguientes posiciones y en la ltima columna se ve su valor decimal.
En cada espacio de memoria se observa el bit correspondiente en el octeto para
representar el nmero en binario.
Direccin
H
Direccin
o
Direccin
l
Direccin
a
0000 0001
0000 0010
0000 0011
0000 0100
0000 0101
0000 0110
0000 0111
0000 1000
DECIMAL
75
0000 1001
0000 1010
0000 1011
0000 1100
0000 1101
0000 1110
0000 1111
0001 0000
DECIMAL
111
0001 0001
0001 0010
0001 0011
0001 0100
0001 0101
0001 0110
0001 0111
0001 1000
DECIMAL
108
0001 1001
0001 1010
0001 1011
0001 1100
0001 1101
0001 1110
0001 1111
0010 0000
DECIMAL
97
TIPOS DE DATOS
Nos hemos dado cuenta que los datos e informacin no puede tratarse de la misma forma
para la computadora, ni todos texto, ni todos son numricos enteros o con decimales, esto
tambin ha sido considerado por los lenguajes de programacin que permiten elaborar las
aplicaciones, soluciones y programas.
Para los efectos del fundamento del pensamiento lgico de programacin consideraremos
los siguientes datos bsicos, aunque cada lenguaje considera los propios y son en realidad
mucho ms:
TIPO
DESCRIPCIN
TAMAO
Rango de Valores
-2147483648 a 2147483647
int
Entero
32 bits, 4 bytes
long
Entero Largo
64 bits, 8 bytes
float
32 bits, 4 bytes
-9223372036854775808 a
9223372036854775807
3.4x10-38 a 3.4x1038
64 bits, 8 bytes
1.8x10-308 a 1.8x10308
16 bits, 2 bytes
Variable segn
longitud de cadena
double
char
String
Otros son: byte, short, boolean, y otros son de tipo objeto que se vern en las asignaturas
de la materias.
VARIABLES
Aunque en la programacin se puede dar la instruccin al procesador de que se realice una
operacin como la siguiente de sumar:
2+4
o calcular el rea de un triangulo que tiene como base 4 y una altura de 5, que resolvemos
como sigue:
(4*5)/2=10
para resolver el procesador utilizar espacio de la memoria RAM para colocar los datos. El
procesador realizar las operaciones aritmticas y finalmente el resultado podr ser
mostrado en la pantalla. Tales ejercicios mostrados nos representan operaciones concretas,
los nmero son utilizados como tales.
Pero ,que tal si queremos realizar una serie de instrucciones ms genrica para calcular el
rea de un tringulo. aqu por lo tanto requeriremos utilizar espacios de memoria
denominados variables, pero que estos no sean manejados a partir de su direccin, sino con
un nombre para referenciar el espacio de RAM solicitado y el tipo de dato que el
programador determine.
Qu espacios de memoria se utilizaran para calcular el rea de un tringulo y cmo
los nombraras?
Qu datos tendran que ser solicitados a un usuario del programa para calcular el
rea del tringulo?
Cmo realizaras la operacin aritmtica con esos datos?
Qu dato tendra que ser informado al usuario del programa?
X = 34+12+13-5
Operadores Aritmticos
Prioridad
Operador
Menor
+y-
*y/
( )
Mayor
Significado
Priridad
Operador
Significado
<
Menor que
<=
Menor o Igual
>
Mayor
>=
Mayor o Igual
==
Igual
!=
Diferente
Igual
Priridad
Operador
Significado
&&
||
Negacin o NOT
Menor
Mayor
Operacin Lgica
AND
Resultad
o
Operacin Lgica
OR
Resultad
o
Operaci
n Logica
Not
Resultad
o
True
True || True
True
! True
False
False
True || False
True
! Fase
True
False
False || True
True
False
False || False
False
X = 10+5-7
15 - 7
X = 10 + 5 * 7
10 + 35
X = 10 / 2 + 4 * 6
X= 10 / ( 2 + 4 ) * 6
+4*6
6
10 / 6
45
24
5
+ 24
1.6667
*6
29
Los operadores + y -,
tienen la misma
prioridad por lo que se
evala primero la + y
luego la - porque se
evala de izquierda a
derecha.
El operador * es de
mayor prioridad que la
+, por lo que se evala
primero la * y luego la
+
10
Los operadores de
mayor prioridad son
la / y *, pero se evala
de izquierda a
derecha,
posteriormente la
suma.
Observa primero se
realiza la operacin
entre los parntesis y
luego de izquierda a
derecha pues la / y *
tienen la misma
prioridad
10 == 20
10 != 20
X= 10 - 5 + 7
X= 300 - 10 + 50 * 3
x= ( 500 - 100 ) / 2 + ( 20 + 5 * 20 ) - 10 * 3
x= ( 500 - 100 ) / 2 + ( ( 20 + 5 ) * 20 ) - 10 * 3
10 < 20
10 > 20
True
False
False
True
O verdadero
O falso
O falso
O verdadero
Las operaciones
relacionales dan como
resultado True o False,
El 10 es mayor que el
20, es False,es falsa
esta sentencia
El 10 es igual al 20, es
False, es falsa la
sentencia
El 10 es diferente del
20, la sentencia es
True, es Verdadera
verdadero o falso, y en
otros trminos puede
dar 1 true y 0 false.
Ejercicios Lgicos resueltos. Estos por lo general combinan operaciones relacionales, las cuales
tienen mayor prioridad y despus se realizan las lgicas.
True
5 < 10
True
5 < 3
True
True
&& True
True
False
False
True
&&
False
False
5 < 10
False
5 < 3
True
False &&
True
False
False
False &&
False
False
10 < 20
||
5 < 10
10 < 20 ||
5 < 3
10 < 10 ||
5 < 10
10 < 10 ||
5 < 3
2-XZ-3X2
----------------6X2-Z+2
X2-6X+9
2X-3
------------- -------X3-5
X5
X+2
2X-2
-------- --------2X-5
X-3
2X+5
X
-------------- + ---------X2+6X+9
X2-9
3X2[2X+5] 2-X3[5][2X+5] 2
---------------------------------[[2X+5] 2] 5
6X2+7X-10
-------------------6X2+13X-15
12Y2+3Y
------------------20X2+3X-1
4X5+24X4-13X2-17X2+9X
[9X2-25]4[X2+16]
[2X2+13Y-7]2
[X2+X-2]2[X2-4]3
4X3+3X2+5X-2
----------------------X3[X+2]
8X-1
----------------[X-2][X+3]
X2-29
----------------[X-4][X+1]
X+34
---------------X2-4X-12
3X
1
------------- -------[X+2X] 2
X2
----------------------X+25X2
Antes de abordar tan importantes temas, nos ubicaremos mediante el siguiente esquema
que considera desde la actividad del anlisis, programacin y ejecucin de una aplicacin o
solucin de SW.
En forma detallada el siguiente esquema presenta como el analista programador obtiene y
registra los requisitos de datos, informacin y procesamiento, que el usuario necesita. El
analista disea la lgica de la solucin o aplica un modelo matemtico (formula), mediante
los diagramas de flujo de programa y el pseudocdigo, posteriormente elaborar el
programa en un lenguaje de programacin con ayuda de un entorno de programacin, que
contiene las herramientas que le permiten codificar , probar y dejar un cdigo de la
aplicacin ejecutable. En este proceso se observa como el cdigo o programa es el
conjunto de instrucciones con un orden especfico para que sean realizadas por el
procesador.
El analista Programador,
examina los requisitos y
elabora un diseo de la
solucin mediante un
algoritmo representado
en diagrama de flujo o
pseudocdigo
El programa es un conjunto de
instrucciones que indican al procesador lo
que debe hacer. Estas de forma genrica
son de entrada, procesamiento y salida de
informacin.
El programador escribe un
programa en un lenguaje de
programacin.
ALGORITMO
Un algoritmo puede ser definido como la secuencia ordenada de pasos, sin ambigedades,
que conducen a la resolucin de un problema.
Un algoritmo es como una receta de cocina, en ella se consideran los ingredientes, las
medidas de estos (variables y tipos de datos inciales), los recipientes o trastes donde se
mezclaran los ingredientes (son variables extras que permiten realizar el proceso), y
tambin el procedimiento que da el orden a cmo debe ejecutarse y hacerse la elaboracin
del platillo.
Caractersticas:
1. Debe ser Preciso, porque cada uno de sus pasos debe
indicar de manera precisa e inequvoca que se debe hacer.
2. Debe ser Finito, porque un algoritmo debe tener un
nmero limitado de pasos.
3. Debe ser Definido, porque debe producir los mismos
resultados para las mismas condiciones de entrada.
4. Puede tener cero o ms elementos de entrada.
5. Debe producir un resultado. Los datos de salida sern los
resultados de efectuar las instrucciones.
6. En lo particular un algoritmo siempre tiene una lnea de
control, esto es la que se est ejecutando en un instante
determinado por el procesador.
Un algoritmo se puede representar por medio de dos formas, a travs de Pseudocdigo o de
Diagramas de Flujo de programa o proceso.
de
SIMBOLO
SIGNIFICADO
Inicio y Fin de Programas
Entrada de datos desde Teclado
Salida por Pantalla de mensajes, datos o informacin a Monitor
Sirve para la entrada y salida por cualquier tipo de dispositivo de
e/s de cualquier informacin, se utiliza de forma genrica y
abarcara como opcional para la entrada desde teclado y la salida
por pantalla. En este curso no se utilizar.
Proceso, sentencias o instrucciones para asignaciones de
expresiones o declaracin e inicializacin de variables
7.- Solo los smbolos de decisin pueden y deben tener ms de una lnea de flujo de salida.
Herramienta para generar diagramas de flujo de programa
https://code.google.com/archive/p/freedfd/
PSEUDOCDIGO
El pseudocdigo es un lenguaje de pseudoprogramacin utilizado para escribir algoritmos
computacionales, como lenguaje de pseudoprogramacin, el pseudocdigo es una imitacin
de uno o ms lenguajes de programacin, de esta manera podemos encontrar
pseudocdigos orientados a lenguajes de programacin como c o java.
El objetivo del pseudocdigo es permitir que el programador se centre en los aspectos
lgicos de la solucin, evitando las reglas de sintaxis de los lenguajes de programacin, no
siendo el pseudocdigo un lenguaje formal, los pseudocdigos varan de un programador a
otro, es decir, no hay un pseudocdigo estndar, todo documento en pseudocdigo debe
permitir la descripcin de:
Instrucciones primitivas
Instrucciones de proceso
Instrucciones de control
Instrucciones compuestas
Instrucciones de descripcin
(UPIICSA, 2013)
herramienta para generar pseudocdigo
https://sourceforge.net/projects/pseint/?source=typ_redirect
Inicio
Accin A
Accin B
Accin C
Anlisis del problema: (que se requiere? ) Se requiere una aplicacin
que calcule el rea de un triangulo, para lo cual implica conocer su
modelo matemtico que es
Fin
base x altura
2
analizando un poco ms nos damos cuenta que se requiere que los valores que se utilicen
sean con decimal.
Diseo del problema: Cmo se dar solucin?. Se disear una aplicacin genrica, que
en primer lugar reserve el espacio para las variable que contendrn los valores y el tipo de
dato, esto en la declaracin de variable, posteriormente la aplicacin leer desde el
teclado el valor para la base, tambin el valor para la altura, posteriormente calcule el
rea transformado nuestro modelo matemtico o frmula a una expresin aritmtica en
trminos de computacin como sigue: area=(base*altura)/2; y que finalmente muestre por
pantalla el rea del triangulo para la base y altura proporcionada por el usuario de la
Inicio
Pseudocdigo
Algoritmo area_tringulo
Dame la base
Leer base;
base
Leer altura;
altura
area = (base*altura)/2
Fin
area<-(base*altura)/2;
Escribir "El rea del triangulo es ",
area;
FinAlgoritmo
Observa como cada smbolo del Diagrama de flujo de programa est asociado con una
instruccin en Pseudocdigo.
La
Estructura
Selectiva
Simple, ejecuta una accin
serie de acciones si la
condicin
evaluada
es
verdadera, en caso contrario,
no hace nada.
Pseuddico
Si <condicin> Entonces
Si
Condicin
Accin
<instrucciones>
FinSi
Ejercicio:
Planteamiento del problema: Se desea integrar una aplicacin que calcule el promedio de
3 calificaciones, si el promedio no es aprobatorio se mostrar un mensaje que diga que su
promedio no es aprobatorio yo deber volver a cursar la materia.
Anlisis del problema: (que se requiere? ) Se requiere una aplicacin
que calcule el promedio de 3 calificaciones y si el promedio no es aprobatorio mostrar un
mensaje. De esta informacin nos percatamos que las calificaciones sern enteras y el
promedio decimal o real.
Diseo del problema: Cmo se dar solucin?. Se disear una aplicacin genrica, que
en primer lugar reserve el espacio para las variable que contendrn los valores y el tipo de
dato, esto en la declaracin de variable, posteriormente la aplicacin leer desde el
teclado el valor de las tres calificaciones, posteriormente se calcular el promedio y lo
mostrar, si el promedio menor a 6 se mostrar en pantalla que se deber cursar
nuevamente la asignatura.
Programa Promedio
Dame calificacin 1: | 7
Dame calificacin 2: | 9
Dame calificacin 3: | 9
El promedio es 8.333
Programa Promedio
Dame calificacin 1: | 7
Dame calificacin 2: | 5
Dame calificacin 3: | 5
El promedio es 5.6667
Volver a cursar la
materia
Pseudocdigo
Algoritmo promedio
Definir c1,c2,c3 Como entero;
Definir prom como real;
Definir c1, c2 , c3, prom
Escribir 'Programa que calcula el
promedio de un estudiante';
Escribir 'Dame calificacin 1';
Programa que calcula el promedio de un estudiante
Leer c1;
Escribir 'Dame calificacin 2';
Leer c2;
Escribir 'Dame calificacin 3';
Dame calificacin 1
Leer c3;
prom<-(c1+c2+c3)/3;
c1
Escribir 'El promedio es ',prom;
Si prom<6 Entonces
Escribir 'Volver a cursar la
Dame calificacin 2
materia';
c2
Fin Si
FinAlgoritmo
Inicio
Dame calificacin 3
c3
prom = (c1+c2+c3)/3
'El promedio es ',prom
prom<6
'Volver a cursar la materia
Fin
Observa como cada smbolo del Diagrama de flujo de programa est asociado con una
instruccin en Pseudocdigo.
Resuelve los siguientes ejercicios Planteados, recuerda hacer el anlisis y el diseo, el
diseo de presentacin de la aplicacin en el monitor , el diagrama de flujo del
programa y el pseudocdigo:
1.- Se desea realizar una aplicacin contable, en ella se registra el nombre, el tipo de
contribuyente, el cual puede ser solo persona fsica o moral y el sueldo bruto. La
aplicacin deber calcular el descuento del ISR que es el 22% del sueldo bruto, si el
sueldo es superior a $20,000, se descontar un 2% extra al sueldo. Si es persona fsica
se le deducir un 5% de seguro y un 7% de Afore. Es importante que la aplicacin
muestre los descuentos correspondiente y el salario bruto.
2.- Una tienda requiere una aplicacin para la venta de sus artculos, los cuales se
enlistan con su precio correspondiente de la siguiente manera.
pantaln $143
camisa $108
Zapados $224
La aplicacin pregunta cuantos productos se venden de cada artculo, si la venta se
encuentra de $1 a $475 no se aplica descuento, si la venta es de $476 a $2,000, se
aplica un descuento de 8%, si la venta fue de $2,001 a $9,999, se aplica un descuento
del 12%, y si la venta es de $10,000 a ms el descuento ser del 15%.
Estructura Selectiva Doble
ejecuta una accin serie de acciones si la
condicin evaluada es verdadera, de ser falsa
se realizan otras acciones.
No
Si
Condicin
Accin B
Accin A
Pseuddico
Si <condicin> Entonces
<instrucciones>
Sino
<instrucciones>
FinSi
Ejercicio:
Planteamiento del problema: El asignatura de educacin fsica el maestro solicito a los
estudiantes del ITJ una aplicacin para que permita calcular el peso ideal a partir de la
altura. Les dio como referencia que para calcular el peso en hombres se aplica la siguiente
formula en PesoIdeal= 0.75(altura en cm -150)+52 y
en mujeres PesoIdeal= 0.65(altura en cm -150)+48.
Anlisis del problema: (que se requiere? ) Se requiere una aplicacin
que calcule el peso ideal diferenciando si es de hombre se aplica la formula PesoIdeal=
0.75(altura en cm -150)+52 y si es mujer el PesoIdeal= 0.65(altura en cm -150)+48. Es
importante considerar que la altura ser de tipo entero porque y el peso ideal en decimal o
real
Diseo del problema: Cmo se dar solucin?. Se disear una aplicacin genrica, que
en primer lugar reserve el espacio para las variable que contendrn los valores y el tipo de
dato, esto en la declaracin de variable, posteriormente la aplicacin leer desde el
teclado el valor de la altura en cm, tambin el gnero al que pertenece, posteriormente se
calcular el peso ideal y se mostrar en la pantalla.
Pseudocdigo
Inicio
Definir altura, sexo, pesoideal
'Dame el gnero M /
F: '
sexo
Algoritmo peso_ideal
Definir altura Como Entero;
Definir sexo Como Caracter;
definir pesoideal como Real;
Escribir 'Programa peso ideal';
Escribir 'Dame altura en centimetros';
Leer altura;
Escribir 'Dame gnero M / F';
Leer sexo;
Si sexo = 'M' Entonces
pesoideal<-0.75*(altura-150)+52;
Sino
pesoideal<-0.65*(altura-150)+48;
Fin Si
Escribir 'Tu peso ideal es: ',pesoideal;
FinAlgoritmo
sexo='M'
pesoideal = 0.75*(altura-150)+52
pesoideal = 0.65*(altura-150)+48
Fin
Observa como cada smbolo del Diagrama de flujo de programa est asociado con una
instruccin en Pseudocdigo.
Resuelve los siguientes ejercicios Planteados, recuerda hacer el anlisis y el diseo, el
diseo de presentacin de la aplicacin en el monitor , el diagrama de flujo del
programa y el pseudocdigo:
1.- El maestro de educacin fsica desea contar con otra aplicacin que permita calcular
el Indica de Masa Corporal para sus estudiantes, IMC, cuya frmula es:
IMC=
Peso en KG
2
Altura
adems de indicar si la persona tiene bajo peso si el IMC es menor 18.5, peso normal
entre 18.5 a 24.8, sobrepeso entre 24.9 a 29.9 y obeso ms de 30.
2.- El Laboratorio de fsica del ITJ, desea tener una aplicacin que tenga dos opciones
para la conversin de grados centgrados a Fahrenheit otra opcin de grados Fahrenheit
5
grados centgrados: C=( F32 )
9
3.- La maestra del knder desea que los estudiantes del ITJ le realicen una aplicacin
que indique cual nmero es mayor de tres, hay que considerar que los nmeros puedan
ser dados por los nios.
4.- La maestra del knder desea que los estudiantes del ITJ le realicen una aplicacin
que indique cul nmero es mayor y cul es el menor de tres, hay que considerar que los
nmeros puedan ser dados por los nios.
5.- Se desea conocer el nombre del da de la semana, basndose en un nmero
introducido por medio del teclado, tomando en cuenta que el domingo es el 1, lunes el
2, as sucesivamente hasta sbado que es el 7. Si el nmero es mayor o menor mandar un
mensaje de error por medio de la pantalla.
Estructura Mltiple: switch, case o Segn
Se utiliza cuando existen ms de dos
alternativas o caminos a seguir, de acuerdo
a un valor que se evala en la Expresin y
cuyo valor debe ser igual al valor que tiene
cada camino.
Expresin
2
Accin B
Accin A
Accin A
Ejercicio:
Planteamiento del problema: En la Primaria Gudio de Jiquilpan, Mich. La maestra de
segundo ao de primaria desea ver las operaciones aritmticas con los nios, con la
intensin de mejorar su prctica docente solicita a los estudiantes del ITJ una aplicacin,
que aplique las operaciones aritmticas bsicas de suma, resta, multiplicacin y divisin a
dos nmeros proporcionados por los nios, pero en la cual ellos elijan que operacin desean
realizar.
Anlisis del problema: (que se requiere? ) Se requiere una aplicacin
que realice las operaciones aritmticas de suma, resta, multiplicacin y divisin de dos
valores enteros, el resultado puede ser decimal para la divisin, para los dems enteros.
Diseo del problema: Cmo se dar solucin?. Se disear una aplicacin genrica, que
en primer lugar reserve el espacio para las variable que contendrn los valores y el tipo de
dato, esto en la declaracin de variable, posteriormente la aplicacin leer desde el
teclado leer los dos valores numricos, se mostrar un men que contendr como opciones
las operaciones aritmticas, posteriormente el nio elegir alguna y la aplicacin mostrar
el resultado de la operacin.
Otros caminos
No
Condicin
Si
Accin 1
Accin 2
Accin N
Pseudocdigo
Inicio
Definir contador, n,
contador =1,
numero = 1
contador<=20
si
numero
no
Algoritmo ciclowhile1
Definir n1, contador Como Entero;
Escribir 'Programa que muestra
numeros del 1 al 20 ';
n1<-1;
contador<-1;
Mientras contador <= 20 Hacer
Escribir n1;
n1<-n1+1;
contador<-contador+1;
Fin Mientras
Escribir 'Gracias por utilizar el
programa';
FinAlgoritmo
numero = numero +1
contador = contador +1
FIN
Se observa que hay un contador que sirve como su nombre lo dice, para contar las veces
que se est dando vueltas en el ciclo, esta variable se va incrementando uno en uno cada
vuelta, tambin se encuentra la variable numero, que es la que va a servir para mostrar los
nmero, un nmero a la vez en cada vuelta.
Este ejercicio se puede optimizar pues se puede utilizar la misma variable contador
tambin para mostrarlo, tmese en cuenta que solo es para este ejercicio en particular, si
otras aplicaciones presentan algo similar es importante analizarlo antes de cambiarlo.
Pseudocdigo
Inicio
Definir contador,
Programa que muestra nmeros del 1 al 20
contador =1
no
contador<=20
si
contador
Algoritmo ciclowhile1
Definir contador Como Entero;
Escribir 'Programa que muestra
numeros del 1 al 20 ';
contador<-1;
Mientras contador <= 20 Hacer
Escribir contador;
contador<-contador+1;
Fin Mientras
Escribir 'Gracias por utilizar el
programa';
FinAlgoritmo
contador = contador +1
FIN
Accin 2
Accin N
Si
No
Condicin
Pseudocdigo
Repetir
<instrucciones>
Mientras Que <condicin>
Ejercicio:
Planteamiento del problema: La Escuela Primaria Gudio desea contar con un software
para ensear el clculo de reas a sus estudiantes de las siguientes figura: Triangulo,
Rectngulo, Cuadrado y Crculo, para lo cual el estudiante elija la figura y proporcione los
valores correspondientes para el clculo del rea.
Anlisis del problema: (que se requiere? ) Se requiere una aplicacin que permita calcular
reas de tringulos, rectngulos, cuadrados y crculos, en donde el estudiante pueda
interactuar repetidamente.
Diseo del problema: Cmo se dar solucin?. Se disear una aplicacin, que en primer
lugar reserve el espacio para las variable de opcin y las que se utilizarn para las figuras
geomtricas. Posteriormente mostrar el men con la opcin elegida, dentro de estas
opciones se incluye la de salir, dado que la aplicacin estar presentando el men y
Si
N
o
Var = V_I
Var = V_I
No
Var > V_F
Var = Var + Inc
Accin 1
Si
Accin 1
Accin 2
Accin 2
No
Si
Accin 1
Accin 2
Accin N
Accin N
Accin N
Pseudocdigo
Para <variable> Desde <valor inicial> Hasta <valor final> Con Paso <paso>
Hacer
<instrucciones>
FinPara
Al ingresar al bloque, la variable <variable> recibe el valor <inicial> y se ejecuta la
secuencia de instrucciones que forma el cuerpo del ciclo. Luego se incrementa la variable
<variable> en <paso> unidades y se evala si el valor almacenado en <variable> super al
valor <final>. Si esto es falso se repite hasta que <variable> supere a <final>
Ejercicio:
Planteamiento del problema: La Escuela Primaria Gudio desea contar con un software
que ensee a calcular el promedio a nios de primaria.
Anlisis del problema: (que se requiere? ) Se requiere una aplicacin que permita calcular
el promedio de nmeros enteros dados por un nio, se entiende que el nio indicar el
nmero de valores que se leern.
Diseo del problema: Cmo se dar solucin?. Se disear una aplicacin, que en primer
lugar reserve el espacio para las variable de numero de valores, el nmero que se lee, el
que permite sumar o acumular los valores que son proporcionados por el estudiante, para
estos valores se reservar espacio Entero y otro en donde se almacenar el valor promedio,
pare este valor ser requiere un espacio de memoria para valores Reales. El nio
proporcionar el nmero de valores a leerse, el programa debe acumular cada valor
empleando un ciclo Para, ya sumados o acumulados estos se procede a calcular el
promedio. Dado el promedio se deber indicar si ste es aprobatorio o reprobatorio.
Pseudocdigo
Inicio
Algoritmo Promedio
acumulador = 0
"Dame el nmero de valores a promediar"
numvalores
contador =1
contador <=numvalores no
contador=contador +1
si
"Dame valor",contador
valor
acumulador = acumulador +valor
Sino
Escribir 'El promedio es Reprobatorio'
FinSi
FinAlgoritmo
si
prom>=6
"El promedio es Reprobatorio" "El promedio es aprobatorio"
FIN