Vous êtes sur la page 1sur 43

Introduccin a la Programacin E.P.E.

T N20

RESOLUCION DE PROBLEMAS

Una computadora es un autmata, que ejecuta un proceso de acuerdo a reglas rgidas. Dicho proceso es
especificado por un programa.
Un programa es una secuencia de instrucciones y dado que, una computadora posee un repertorio muy
limitado de instrucciones elementales, que es capaz de entender y obedecer, es que un programa debe
estar formado por dichas instrucciones elementales
La actividad de generar estas secuencias de instrucciones elementales se denomina programacin

La programacin es una disciplina con muchas aplicaciones y la verdadera dificultad radica en la resolucin
del problema y no en la construccin del programa en si.

Primero estudiaremos la resolucin de problemas , para adquirir entrenamiento para disear modelos de
resolucin de problemas en forma metodolgica y luego iremos agregando herramientas para acercarnos a
un buen estilo de programacin y luego se ir plasmando todo lo estudiado en programas utilizando un
lenguaje de programacin.

PROBLEMA

Un problema es una discrepancia entre un estado inicial y un estado final. Por ejemplo : como hacer para
llegar a la casa de un amigo.
El primer paso en la bsqueda de la solucin, es encontrar una representacin adecuada para el problema
que descarte la informacin que no sirve y rescate la que es importante
A este proceso se le llama abstraccin
Una abstraccin se realiza en varias etapas:
1. Transformar el enunciado original en algo tan simple como sea posible
2. Identificar los elementos relevantes y las relaciones entre ellos
3. Nombrar los elementos con alguna notacin adecuada
4. Definir las operaciones que deben realizarse

TIPOS DE NOTACIN PARA REPRESENTAR PROBLEMAS

DESCRIPCIN VERBAL:

Hay problemas que solo se pueden resolver en una forma verbal, redactando una nueva versin del
problema original , eliminando redundancias, datos irrelevantes y puntualizando el resto en frases cortas y
claras

Por ejemplo el siguiente problema:

Juan miente siempre los das martes , jueves y sbados y es completamente veraz los dems das . Un da
se mantiene el siguiente dilogo:
Pedro : qu da es hoy?
Juan : sbado, responde
Pedro : Qu da ser maana?
Juan: mircoles, responde

La incgnita es : Qu da de la semana es?

El razonamiento es verbal podemos ir pensando en cada da de la semana para analizar cual puede ser:

Lunes: No puede ser porque los lunes dice la verdad, entonces cuando le preguntan que da ser maana
tendra que responder martes y no mircoles
Martes: No, porque cuando le preguntan qu da ser maana y dice mircoles y sera verdad y los
martes miente
Mircoles : No puede ser porque maana sera jueves y los mircoles dice la verdad
Viernes : no, porque los viernes dice la verdad y las dos respuestas son mentiras
Sbado: No, porque miente y la primer respuesta es una verdad
Domingo: No, porque dice la verdad y las dos respuestas son mentiras

POR LO TANTO ES JUEVES,YA QUE MIENTE Y LAS DOS RESPUESTAS SON MENTIRAS

1
Introduccin a la Programacin E.P.E.T N20

DIAGRAMA

Existen muchos problemas en los que para resolverlos se puede utilizar algn tipo de grfico o esquema
Por ejemplo:

Blanca, Rosa y Violeta son tres amigas que se encuentran para estudiar, y descubren que casualmente
estn vestidas con los colores de sus nombres, aunque ninguna lleva el color que corresponde a su
nombre, ni colores repetidos. Si el vestido de Violeta no es blanco, Cul es el color del vestido de cada
una?
Para visualizar lo que dice este problema es conveniente utilizar un cuadro de doble entrada de la siguiente
manera:

BLANCA ROSA VIOLETA


ROPA BLANCA X X O
ROPA ROSA O X X
ROPA VIOLETA X O X

Las cruces indican las intersecciones falsas y los crculos las que resultan verdaderas

MATEMTICA

Se trata de representar el problema utilizando una representacin matemtica que puede ser: ecuaciones,
geometra, teoremas, etc.
Una caracterstica interesante como forma de representar problemas, es su rigidez y formalidad. Esto
asegura que, si se obtiene una representacin adecuada y se respetan las reglas, es posible llegar a una
solucin acertada.

Una gran variedad de problemas que surgen en la prctica se pueden resolver usando ecuaciones. No hay
una regla bsica para resolverlos frente a la gran variedad de problemas que se pueden plantear. Sin
embargo les doy algunas sugerencias:

Pasos recomendados para resolver problemas de ecuaciones

1.-Lea el problema detenidamente si hace falta varias veces, hasta que sea capaz de decir que se quiere
conseguir y de que informacin o datos dispone
2.-Represente una de las cantidades desconocidas en trminos de una variable, x suele ser la ms usada. Si
hay otra cantidad desconocida intente escribirla en trminos de su variable ( probablemente necesite algn
dato del problema)
3.-Un dibujo o esquema siempre ayuda a aclarar situaciones
4.-Plantear una ecuacin. Para ello busque las expresiones verbales que deben ser iguales. Escriba estas
expresiones en trmino de su variable. Esto es , pase la expresin verbal a la algebraica.
5.-Resuelva la ecuacin. Puntualice o remarque la respuesta
6.-Responda en palabras cada pregunta del problema.

El paso probablemente que presente ms dificultad es el cuarto. Puede descomponer este paso en los
siguientes:

4.1 Busque las dos expresiones verbales que deben ser iguales
4.2 Describa cada una de las partes de sus expresiones verbales en trminos de su variable
4.3 Escriba ahora la ecuacin como una igualdad de dos expresiones algebraicas en su variable
Veamos algunos ejemplos:

Ejemplo: Si dos nmeros son tales que uno es el cudruplo del otro y su suma es 125. Cules son esos
nmeros?
VARIABLES DEL PROBLEMA: X : primer nmero
Y: segundo nmero

EXPRESIONES QUE DEBEN SER IGUALES


Y = 4X
Ahora debemos expresar que la suma de los dos nmeros es igual a 125
X + Y = 125

2
Introduccin a la Programacin E.P.E.T N20

ESCRIBIR LAS EXPRESIONES EN TRMINOS DE LA VARIABLE

Entonces las ecuaciones planteadas serian:


Y=4x
X+Y=125
RESOLVER LA ECUACION

Para resolver las ecuaciones se debe reemplazar y despejar

En la segunda ecuacin se reemplaza el valor de la variable Y por su equivalente en funcin de la


variable X, es decir , Y se reemplaza por 4X y quedara como:
X+4X = 125
De esta ecuacin se deduce que : 5X =125

Despejando: X=
X=5
Por lo tanto Y=4.X y reemplazando el valor de X
Y = 4x5= 20

RESPUESTA: X=25 Y=20

2.-Si al doble de un nmero le restas 13, obtienes 91. Cul es el nmero?

VARIABLE DEL PROBLEMA: X : nmero del problema

EXPRESIONES QUE DEBEN SER IGUALES

El doble de un nmero menos trece=91


ESCRIBIR LAS EXPRESIONES EN TRMINOS DE LA VARIABLE

Representa el doble 2X-13=91


del nmero que indica
el enunciado

RESOLVER LA ECUACION

Para resolver las ecuaciones se debe reemplazar y despejar

2X-13=91
2X=91 + 13
2X = 104
X= 104
2
RESULTADO X=52

3.-La base de un rectngulo es doble que la altura, y el permetro mide 78cm.


Calcular las dimensiones del rectngulo

VARIABLES DEL PROBLEMA: B: base del rectngulo


H: altura del rectngulo

EXPRESIONES QUE DEBEN SER IGUALES


La base de un rectngulo = doble de la altura
El permetro=78
ESCRIBIR LAS EXPRESIONES EN TRMINOS DE LA VARIABLE
Representa el doble
B= 2.H de la altura
2B + 2H= 78

RESOLVER LA ECUACION
Para resolver las ecuaciones se debe reemplazar y despejar

3
Introduccin a la Programacin E.P.E.T N20

En la primera ecuacin se reemplaza B si igualdad 2.H, de esta manera la ecuacin queda toda
expresada en funcin de H y se puede despejar
Entonces en : 2B + 2H = 78
2( 2H) + 2H= 78
4H + 2H = 78
6H = 78
H = 78/6
H=13
Reemplazando en la primera ecuacin B=2H = 2*13=26

RESULTADO La altura es 13 y la base es 26

4.-Por un videojuego, una revista y un helado, Andrs ha pagado $14,30. El videojuego


es cinco veces ms caro que la revista, y sta cuesta el doble que el helado. Cul era el precio de cada
artculo?

VARIABLES DEL PROBLEMA:


V: video Juego
R: revista
H: helado
EXPRESIONES QUE DEBEN SER IGUALES
Un videojuego , una revista y un helado = 14,30
videojuego =es cinco veces ms caro que la revista,
la revista=doble que el helado
ESCRIBIR LAS EXPRESIONES EN TRMINOS DE LA VARIABLE
V+R+H= 14,30
V=5.R
R=2H
RESOLVER LA ECUACION
Para resolver las ecuaciones se debe reemplazar y despejar
En la primera ecuacin se deben reemplazar las variables en funcin de alguna de alguna de las otras, por
ejemplo como:
V=5R
H=R/ 2
Entonces en la primera ecuacin se reemplaza de la siguiente manera:
5R + R + R =14,30
2
6R + R =14,30
2
13 R = 14,30
2
13 R = (14,30)* 2
R= 28,60
13

R = 2,20
Con este valor de R reemplazamos en las dems ecuaciones para obtener los valores de las otras variables:
V= 5.R , entonces V= 5* 2,20 = 11
H = R/2 , entonces H = 2,20 / 2 = 1,1

RESULTADO : el videojuego cuesta $11, la revista cuesta $2,20 y el helado cuesta $1,1

Jos suma las notas obtenidas en la ltima prueba de matemtica, historia y geografa obteniendo 25. La
nota de historia es 2 unidades menor quela de matemtica y 1 unidad mayor que la de geografa. Cul es
la nota de cada evaluacin?

VARIABLES DEL PROBLEMA:


M: nota de matemtica
H: nota de historia
G: nota de geografa

4
Introduccin a la Programacin E.P.E.T N20

EXPRESIONES QUE DEBEN SER IGUALES


La suma obtenida en las evaluaciones de matematica,historia y geografa = 25
La nota de historia=2 unidades menos que la de nota matemtica,
La nota de historia = 1 unidad mayor que la nota de geografa

ESCRIBIR LAS EXPRESIONES EN TRMINOS DE LA VARIABLE


M+H+G= 25
H=M - 2
H=G+1

RESOLVER LA ECUACION
Para resolver las ecuaciones se debe reemplazar y despejar
En la primera ecuacin se deben reemplazar las variables en funcin de alguna de alguna de las otras, por
ejemplo en este caso conviene expresar la primera ecuacin en funcin de G y luego despejar, entonces:
Como H = G + 1
De la segunda ecuacin : H= M-2
Despejando : M =H+2

Reemplazando por el valor de H obtenido en primer lugar:


M= (G+1) +2
Entonces M= G+3
Reemplazando en la primera ecuacin:
(G + 3) + (G +1)+ G= 25
3 G + 4 =25
3G = 25 4
3G = 21
G = 21
3
G=7
Reemplazando:
M= G + 3 = 7 + 3 = 10
H=G+1=8

Resultado : 10 en matemtica, 8 en historia y 7 en geografa


Roberto tiene el triple de edad que su hija Nuria. Calcula la edad de cada uno sabiendo que dentro de 12
aos la edad del padre ser solamente el doble que la de la hija.
VARIABLES DEL PROBLEMA:
ER= edad de Roberto
EN = edad de Nuria
EXPRESIONES QUE DEBEN SER IGUALES
La edad de Roberto = triple de edad de su hija
Sumando doce aos a la edad de Roberto= doble de la edad de Nuria

ESCRIBIR LAS EXPRESIONES EN TRMINOS DE LA VARIABLE


ER=3.EN
ER + 12= 2(EN+ 12)

RESOLVER LA ECUACION
Para resolver las ecuaciones se debe reemplazar y despejar
En la segunda ecuacin se deben reemplazar la equivalencia de ER con respecto a EN entonces:
3EN + 12 = 2EN + 24
3EN + 12 -2EN= 24
EN= 24 12
EN = 12
Reemplazando
ER= 3* 12 = 36

Resultado : la edad de Nuria es 12 y la del padre es 36

5
Introduccin a la Programacin E.P.E.T N20

RESOLUCION DE PROBLEMAS
A continuacin, entregamos una tabla de equivalencias entre una expresin coloquial y su
simbologa, la cual puede resultar muy til si es consultada a menudo:

Expresin coloquial Simbologa matemtica

Dado un nmero

El duplo, el doble de un nmero

La mitad de un nmero

Un nmero disminuido en...

El antecesor, o el anterior de un nmero

El sucesor, el consecuente, o el siguiente de un nmero

El opuesto de un nmero

Nmeros consecutivos

Un nmero par

Nmeros pares consecutivos

Un nmero impar

Nmeros impares consecutivos

El triple de un nmero

El cudruplo de un nmero

La tercera parte, o el tercio de un nmero

La cuarta parte de un nmero

La quinta parte de un nmero

El cuadrado de un nmero

El cubo de un nmero

El cuadrado del siguiente de un nmero

El cubo del siguiente de un nmero

La raz cuadrada de un nmero

La raz cbica de un nmero


6
Introduccin a la Programacin E.P.E.T N20

La razn entre dos nmeros: divisin

El producto entre dos nmeros: multiplicacin

La diferencia entre dos nmeros: sustraccin x-y

Las ecuaciones que estudiamos anteriormente nos pueden ayudar a resolver problemas de
nuestro diario vivir. Cada problema requiere el planteamiento de una ecuacin. Por tal razn, es
muy importante expresar la informacin dada en palabras en lenguaje algebraico.

Veamos a continuacin algunos ejemplos expresados en lenguaje algebraico que nos pueden
ayudar ms adelante en el planteamiento de ecuaciones.

Ejemplos:

Un nmero aumentado dos veces: n + 2


Un nmero disminudo en tres: n 3
El doble de un nmero: 2n
El triple de un nmero: 3n
Un nmero par: 2n
Un nmero c dividido por ocho: c 8
Cinco veces un nmero: 5n
Dos terceras partes de un nmero: n
La tercera parte de un nmero: n n 3
El cuadrado de un nmero: n2

Tamben tenemos varias frases que representan alguna operacin matemtica o smbolos
matemticos.
Smbolo
Frases Verbales Matemtico
La suma de, aumentado, mayor que,
ms, ms que, y, sobrepasa +
Disminudo, menos, resta, menos que, _
diferencia entre,
Producto, multiplicado por, veces x
Cociente, dividido por, la razn de

Igual, es, son, es igual a, ser, da
=

Para resolver problemas se recomienda seguir una serie de pasos que nos ayudan a organizar la
informacin, entender y analizar el problema y finalmente resolverlo. Estos son:

1. Leer el problema cuidadosamente.


2. Expresar la informacin dada en forma algebraica.
3. Planteamiento de la ecuacin.
4. Resolver la ecuacin.
5. Verificacin.
6. Escribir la respuesta en una forma adecuada.

7
Introduccin a la Programacin E.P.E.T N20

TRABAJO PRACTICO N1 -RESOLUCIN DE PROBLEMAS

1.- Si al triple de un nmero le restamos 5 obtenemos el nmero incrementado en 7 unidades. Qu


nmero es?

2.- La quinta parte de un nmero ms su doble es igual al nmero ms 12. Qu nmero es?

3.-La suma de tres nmeros es 200. El mayor excede al del medio en 32, y al menor en 65, hallar los
nmeros

4.-Si al doble de un nmero se le resta su mitad resulta 54. Cul es el nmero?

5.-Una cinta de msica cuesta 8 $ menos que un cd, pero el precio de dos cintas es igual al de un cd ms 2 $
. Cunto cuesta una cinta y cunto un disco?
6.-Sabemos que el permetro de un rectngulo es de 50m y que la base es 5m ms larga que la altura.
Cules son las dimensiones del rectngulo?

7.-Cul es el rea de un rectngulo sabiendo que su permetro mide 16 cm y que su base es


el triple de su altura?

8.- Un rectngulo es 3 metros ms largo que ancho, y su permetro mide 26 metros.

9.-Juanjo tiene el doble de edad que Ral y Laura , tres aos ms que Juanjo. Si la suma de sus edades es
38, cul es la edad de cada uno?

10.-Reparte 1000 pesos entre tres personas de forma que la primera reciba el doble de la segunda y sta, el
triple que la tercera.

11.-Si doy a mi madre los 2/5 de mi sueldo me quedan $ 270. Cul es mi sueldo?

12.-En una competicin escolar participan 1500 nios de tres categoras: nios, infantiles y juveniles. Se
sabe que los juveniles son el doble de los infantiles y que, sumados los nios e infantiles, hay 100 menos
que juveniles. Cuntos hay de cada categora?

13.-Siendo 68m el permetro de un rectngulo y 12,5m uno de sus lados, cul es la longitud del otro?

14.-Pablo no recuerda la clave del candado de su bicicleta, pero sabe que al sumar la mitad del nmero
clave ms la cuarta parte del mismo, obtiene el ao de su nacimiento, 1 989. Puedes ayudarle a recordar
su nmero clave?
15.-A Fermn, Marta y Rosa les ha tocado el premio de la rifa de su colegio, pero a Marta le corresponde el
doble que a Fermn, y a Rosa, $200 ms que a Marta. Si tienen que repartirse $5400 , cunto les
corresponde a cada uno.
16.-La base de un tringulo mide 2 cm ms que su altura y tiene un rea de 180 cm2, cunto mide la
altura?

17.-En un trabajo, Miguel ha ganado el doble de dinero que Ana, y Abel el triple de Miguel. Si en total
han obtenido 144 $, cunto ha ganado cada uno?

18.-Tres hermanos se reparten 96 $ de la siguiente manera: El mediano recibe 12 $ menos que el


mayor. Y el pequeo recibe la tercera parte que el mediano. Cunto recibe cada uno?

19.-La suma de tres nmeros consecutivos excede en 10 unidades al doble del mayor de los tres.
Cules son esos nmeros?

20-Si de los tres quintos de los libros que tiene Juan le quitamos la mitad de los mismos, nos quedan
todava 50. Cuntos libros tiene Juan?

21.-Al comprar una camisa he pagado 27,59. Si me han rebajado un 15%. Cunto costaba la camisa antes
de las rebajas?
8
Introduccin a la Programacin E.P.E.T N20

22.-Lorenzo gasta la mitad de su dinero en un videojuego, y la sptima parte en ir al cine.


Cunto dinero tena si an le quedan 15 $?

23.-Pablo es 4 aos ms joven que su hermana Mara y 2 aos mayor que su hermano Federico.
Entre los tres igualan la edad de su madre, que tiene 59 aos. Qu edad tiene cada uno?

24.-Una editorial dispone de tres textos diferentes para Matemticas de 2 El texto A se vende a $9 el
ejemplar, el texto B a $11 y el C a $13
En un ciclo lectivo la editorial vendi de estos libros $8400
Sabiendo que el libro A se vendi tres veces ms que el C, y que el B se vendi tanto como el A y el C
juntos. Se desea averiguar cunto se vendieron de cada tipo.

25.-Tres personas renen un pequeo capital de $9500 para establecer un comercio minorista. Si la
primera persona aporta 3/5 de lo que aporta la segunda, y la tercera de lo que aporta la primera, a
cunto asciende la contribucin de cada uno de ellos?

26.- La edad de una madre es el triple de la de su hijo. Dentro de 10 aos su edad ser el doble. Qu edad
tiene cada uno?
27.-En un colegio hay 237 estudiantes menos de Primaria que de Secundaria. Sabiendo que el nmero total
es de 1279 alumnos, de los que 200 son de Educacin Infantil, cuntos alumnos hay en total de Primaria y
cuntos de Secundaria?

9
Introduccin a la Programacin E.P.E.T N20

TP RESOLUCION DE PROBLEMAS N2

1. Un nmero y su quinta parte suman 18. Cul es el nmero?


2. Perd un tercio de las ovejas y llegu con 24. Cuntas ovejas tena?
3. Juana tiene 5 aos ms que Amparo. Si entre los dos suman 73 aos, qu edad tiene cada
una?
4. Un padre tiene 3 veces la edad de la hija. Si entre los dos suman 48 aos, qu edad tiene cada
uno?
5. Determinar tres nmeros consecutivos que suman 444.
6. Tengo 32 de lo que vale un ordenador. Cunto vale el ordenador si me faltan slo 318 para
comprarlo?
7. Determinar un nmero que sumado con su mitad y su tercera parte de 55.
8. Tres socios tienen que repartirse 3.000 de beneficios. Cunto le tocar a cada uno, si el
primero tiene que recibir 3 veces ms que el segundo y el tercero dos veces ms que el primero?
9. En un rectngulo la base mide el triple que la altura y su permetro es 32 metros. Cunto
miden la base y la altura?
10. Una herencia de 330,500 pesos se ha repartido entre cinco personas. La segunda recibe la 1/2
de lo que recibe la primera; la tercera la cuarta 1/4 de lo que recibe la segunda; la cuarta la 1/5
parte de lo que recibe la tercera, y la quinta 1/10 de lo que recibe la cuarta. Cunto recibi cada
persona?
11. Durante el verano, Ana, Elia y Nacho, han ledo en total 30 libros. Sabiendo que Ana ha ledo 8
12. libros Nacho y que Elia ha ledo la mitad que Ana y Nacho juntos. Cuntos libros han ledo
cada uno?.
13. Se compran 25 lpices, 32 cuadernos y 24 gomas de borrar y se cancela por ello $ 16.900. Si
cada cuaderno cuesta el triple de cada goma, ms $ 20 y cada lpiz cuesta el doble de cada goma,
ms $ 8. Cunto cuesta cada material?
14. Al preguntrsele a Pitgoras por el nmero de sus alumnos, dio la siguiente respuesta: La
mitad de mis alumnos estudia Matemtica, la cuarta parte estudia Fsica, la sptima parte
aprende Filosofa y aparte de stos hay tres nios muy chicos Puedes deducir cuntos alumnos
tena el famoso matemtico griego?
15. Un laboratorio alquil una computadora por $400 por un mes ms $8 por hora por el uso de
la computadora. La factura por el uso de la computadora fue de $7680 por un ao. Por cuntas
horas us el laboratorio la computadora durante ese ao?

10
Introduccin a la Programacin E.P.E.T N20

EL PROCESO DE PROGRAMACIN

Elaborar un programa de computadora implica llevar a cabo, una serie de pasos secuenciales y
cronolgicos que comienza con la deteccin y definicin del problema y conducen a la
implementacin del programa que lo soluciona. A continuacin se describen los pasos a seguir.

1.-Definicin del problema


Este proceso inicia cuando surge la necesidad de resolver algn problema mediante la
computadora. Para empezar, se debe de identificar el problema y comprender la utilidad de la
solucin que se alcance. Es menester tener una visin general del problema estableciendo las
condiciones iniciales y, adems, los lmites del problema; es decir, donde empieza y donde
termina. Por ejemplo, si tenemos que calcular el sueldo de un empleado, la solucin que se logre
permitir obtener la cantidad que debe pagrsele.El problema anterior consiste en un pago de
sueldos, y parte de que cada empleado tiene algunos atributos como su nombre, la antigedad y
el sueldo que percibe por cada hora trabajada.

2.-Anlisis del problema


A continuacin es necesario entender en detalle el problema en cuestin, para obtener una
radiografa del mismo en trminos de los DATOS disponibles como materia prima, y definir el
PROCESO necesario para convertir los datos en la INFORMACIN requerida.

La primera etapa consiste en definir los resultados esperados; es decir, la informacin que
deber producirse como salida. Respecto al problema de pago de salarios tenemos que se
requiere la siguiente salida:

Nombre del empleado:xxxxxxxxxxxxxx


Sueldo:99999999
La segunda etapa consiste en identificar los DATOS que se tienen como materia prima y que
constituirn la entrada del programa. En este ejemplo tenemos:
El nombre del empleado
El nmero de horas trabajadas
La cuota por hora
La tercera etapa tiene como finalidad determinar el PROCESO necesario para convertir los datos
de entrada en la informacin que se tendr como salida. Volviendo al ejemplo, puesto que se
requieren dos datos de salida, determinemos el proceso de la siguiente manera:

a.- Cmo se calcula el nombre del empleado?


No implica ningn clculo, pues es un dato que se obtiene como entrada y que no se modifica
b.-Cmo se calcula el sueldo?
El sueldo es un dato que no existe como entrada, pero se obtiene o genera multiplicando las
horas trabajadas por la cuota horaria
En este momento ya se tiene una comprensin clara del problema, y podemos avanzar hacia el
siguiente paso

3.-Diseo del programa


Durante este paso se procede a disear la lgica para la solucin del problema, haciendo dos
cosas:
a.-Elaborar el algoritmo Se disea el algoritmo de la solucin al problema; es decir, se estructura
la secuencia lgica y cronolgica de los pasos que la computadora deber seguir, utilizando
alguna tcnica convencional como el pseudocdigo, los diagramas de flujo, los

11
Introduccin a la Programacin E.P.E.T N20

diagramas de llaves, etc. Equiparando esta actividad con la construccin de una casa, equivale a
disear el plano arquitectnico de la misma
b. pruebas de escritorio o traza: Se simula el funcionamiento del algoritmo con datos propios
respecto del problema, y se comprueban a mano los resultados a fin de validar la correcta
operacin del algoritmo. Si quedamos satisfechos con los resultados de la prueba habremos
agotado este punto, pero en caso contrario se deber modificar el algoritmo y posteriormente
volverlo a probar hasta que ste correcto. Es posible que se deba retroceder a cualquier paso
precedente.
En este momento se tiene ya diseada la solucin al problema, y estamos listos para pasar al
siguiente punto.

4.-Codificacin del problema

En este paso se procede a codificar el programa en el lenguaje de programacin que vayamos a


utilizar. Este proceso es sumamente sencillo ya que tenemos diseado el programa, solo nos
centramos en convertir las acciones del algoritmo en instrucciones de computadora. El programa
codificado debe editarse, compilarse, probarse y depurarse, es decir, se ejecuta para verificar su
buen funcionamiento y se hacen las correcciones o los ajustes pertinentes hasta que est
correcto.
Para que un programa pueda ser entendido y ejecutado por la computadora, debe estar en
lenguaje mquina para ello se debe producir el proceso de compilacin, este proceso consiste en
lo siguiente: una vez que tenemos codificado el programa en papel, debe ser introducido
mediante el procese de edicin, para lo cual se utiliza un editor que nos permite crear un archivo
en el cual introducimos el programa, crendose el programa fuente con las instrucciones que
nosotros elaboramos en el lenguaje que estemos utilizando en este momento. El programa
fuente es sometido al proceso de compilacin, que mediante un compilador se traduce
instruccin por instruccin a cdigo objeto, crendose un archivo con el programa objeto el cual
es entendible directamente por la mquina. Si en el proceso se encuentra algn error, se
suspende el proceso; el programador debe corregir el error en el programa fuente y luego
someterlo de nuevo al proceso de compilacin.
Una vez que el proceso de compilacin ha terminado con xito, se tiene el programa objeto, el
cual puede ser ejecutado por la computadora que seguir las instrucciones paso a paso llevando
a cabo las acciones que se indican emitiendo los resultados correspondientes, si estos no son
satisfactorios o existen errores, el proceso de programacin debe ser repetido desde alguno de
los pasos precedentes

5.-Implementacin del programa


Una vez que el programa est correcto, se instala y se pone a funcionar. Debe ser supervisado
continuamente para detectar posibles cambios o ajustes que sean necesarios realizar

6.-Mantenimiento del programa


Un programa que est en operacin, por un lado podra presentar errores, los cuales deben
corregirse; por otro lado podra requerir cambios o ajustes en sus datos, proceso o informacin;
esto implica que eventualmente necesitar mantenimiento para adecuarlo a los cambios de la
empresa. Esto nos sita en una dinmica infinita, ya que si surge la necesidad de darle
mantenimiento tendremos que regresar a algn paso precedente; al 4, al 3, al 2 o al punto 1 para
definir de nuevo el problema.

12
Introduccin a la Programacin E.P.E.T N20

ALGORITMO

En el proceso de programacin hay un paso que es crucial a la hora de desarrollar un programa;


es el diseo del programa, en otras palabras, disear o elaborar el algoritmo de la solucin.
La palabra algoritmo se deriva de la traduccin al latn de la palabra rabe Alkhwarzmi, nombre
de un matemtico y astrnomo rabe que escribi un tratado sobre manipulacin de nmeros y
ecuaciones en el siglo IX.
El algoritmo es una secuencia ordenada y cronolgica de pasos que llevan a la solucin de un
problema o a la ejecucin de una tarea
Los pasos del algoritmo deben tener las siguientes caractersticas:
Ser simples, claros, precisos, exactos
Tener un orden lgico
Tener un principio y un fin
Un algoritmo debe producir un resultado en un tiempo finito. Los mtodos que utilizan
algoritmos se denominan mtodos algortmicos, en oposicin a los mtodos que implican algn
juicio o interpretacin que se denominan mtodos heursticos. Los mtodos algortmicos se
pueden implementar en computadoras; sin embargo, los procesos heursticos no han sido
convertidos fcilmente en las computadoras. En los ltimos aos las tcnicas de inteligencia
artificial han hecho posible la implementacin del proceso heurstica en computadoras.

Ejemplos de algoritmos son: instrucciones para andar en una bicicleta, hacer una receta de
cocina, las instrucciones para armar o utilizar un juguete, obtener el mayor de 5 nmeros dado.
Los algoritmos se pueden expresar en Pseudocdigo, diagramas de flujo o diagramas de llaves.

Por ejemplo:
Elaborar un algoritmo para que guie a una persona a cambiar una lamparita quemada
Los pasos de un algoritmo para cambiar una lamparita podran ser:
1.-Quitar el foco fundido
2.-Colocar el foco nuevo
3.-Fin

Es probable que no todos pensemos exactamente los mismos pasos para cambiar la lamparita,
pero si conducen de manera efectiva a realizar la tarea entonces estar en lo correcto. Si bien es
cierto que son pocos pasos, si se entienden y se logra cambiar el foco, entonces estar correcto.
Ahora bien, supongamos que estamos tratando de entrenar a un robot para que haga la tarea; en
tal caso no funcionar el algoritmo, tendremos que ser ms especficos y claros tomando en
cuenta las capacidades elementales del robot.
El algoritmo ms detallado sera:
1. Colocar la escalera
2. Subir a la escalera
3. Quitar la lamparita quemada
4. Bajarse de la escalera
5. Obtener la lamparita de repuesto
6. Subir a la escalera
7. Colocar la lamparita de repuesto
8. Bajar de la escalera
9. Guardar la escalera
10. Fin

13
Introduccin a la Programacin E.P.E.T N20

Disear un algoritmo para volver desde el cine, en funcin del dinero que tengo:
7. Tengo bastante dinero? Si paso 2 No paso 5
8. Buscar un taxi
9. Lo encontr? Si paso 4 No paso 2
10. Tomar taxi e ir al paso 6
11. tengo dinero para el autobs? Si paso 6 No paso 7
12. tomar el autobs e ir al paso 8
13. Volver caminando
14. Fin

Ejemplo : Buscar el rey de copas en un mazo de naipes. Slo puede mirar una carta por vez.

Algoritmo CARTAS
comienzo
1.tomar mazo de cartas 2.
repetir
cambiar carta
hasta que encontrar rey de copas
fin

Ejemplo: Algoritmo para cambiar el neumtico de un AUTOMOVIL

comienzo
1.situar gato en el lugar adecuado
2.repetir
accionar gato
hasta que (auto alcanza altura adecuada)
3.repetir
colocar herramienta sobre tuerca
3.2 repetir
girar herramienta en sentido anti horario
hasta que (tuerca floja)
hasta que (todas las tuercas sueltas
4.sacar rueda
5.colocar rueda nueva
6.repetir
colocar herramienta sobre tuerca
6.1 repetir
girar herramienta sentido horario
hasta que (tuerca ajustada) hasta
que (todas las tuercas ajustadas)
7.repetir
accionar gato
Hasta que (auto llegue al piso

Todas las actividades que llevamos a cabo los seres humanos son algoritmos que hemos
aprendido a seguir. Caminar y lavarse los dientes, por ejemplo, son secuencias lgicas de pasos.
La civilizacin est basada en el orden de las cosas y de acciones; estas se organizan conforme a
secuencias lgicas, y a esto se le llama programacin.
Durante el desarrollo de algoritmos de computadora, es necesario idear los pasos que la mquina
deber seguir para realizar alguna tarea,actividad o resolver algn problema de nuestra vida
cotidiana. Cuando se presenta el problema de realizar cierta tarea, debemos efectuar ciertas
actividades subyacentes tales como hacer preguntas, buscar objetos conocidos o dividir el problema
en partes. A menudo hacemos todo eso inconscientemente, pero al

14
Introduccin a la Programacin E.P.E.T N20

elaborar algoritmos para solucionar problemas con la computadora debemos detallar esas
actividades de manera explcita.
Si se nos solicita una tarea verbalmente, por lo general hacemos preguntas hasta que quede
claro lo que debemos hacer.
Algunas preguntas comunes en el contexto de la programacin son:
Qu datos tenemos para trabajar ?,y Cul es su apariencia?
Cuntos datos hay?
Cmo sabemos que ya estn procesados todos los datos?
Cul debe ser el formato de la salida?
Cuntas veces debe repetirse el proceso?
Qu condiciones especiales de error pueden presentarse?
Ya sabemos lo que es un algoritmo y conocemos la manera de disear soluciones para problemas
de la vida cotidiana. Ahora aplicaremos estos conceptos a la elaboracin de algoritmos para
programar computadoras, utilizando Diagramas de llaves o Pseudocdigo.
Estas dos son tcnicas para disear algoritmos de programas que permiten definir las estructuras
de datos , las operaciones que se aplicaran a los datos y la lgica que tendr el programa de
computadora para solucionar un determinado problema

ELEMENTOS BSICOS DE UN ALGORITMO

El ser humano realiza los razonamientos a partir de informacin adquirida que est almacenada
en su cerebro. Tambin el ordenador tiene que almacenar en su interior toda la informacin
necesaria para realizar el proceso automtico que le pedimos que ejecute.
La parte del ordenador que realiza esta funcin es la Memoria principal, interna o central . Es la
denominada memoria R.A.M. (memoria de acceso directo).
La memoria est constituida por multitud de posiciones de memoria (celdas de memoria)
numeradas de forma consecutiva, capaces de retener elementos de informacin que vamos a
denominar datos o valores.
Tambin se almacenarn las acciones (instrucciones) que se estudiarn ms adelante.

Los algoritmos ya sea realizados en pseudocdigo o con cualquier lenguaje de diseo de


algoritmos deben contener los siguientes elementos bsicos: las variables , las operaciones
primitivas elementales y las estructuras de control. A continuacin explicaremos cada una de
ellas .

VARIABLES

En el programa hay datos que van cambiando durante el desarrollo del mismo,para representar y
manejar estos datos se utilizan lo que se denomina VARIABLE. Las variables se encuentran en
direcciones de memoria y contienen valores, se identifican por un nombre y el tipo de dato que
indica los valores que puede contener

Todo dato que vaya a ser introducido a la computadora, y todo dato que vaya a ser generado o
calculado a partir de otros datos para obtener algn resultado, debe identificarse y manejarse en
forma de variable.

En resumen una variable tiene las siguientes caractersticas:

15
Introduccin a la Programacin E.P.E.T N20

Nombre: es el identificador de la variable y que servir para referenciarla

Como buena prctica de programacin se aconseja que los nombre de las variables tengan una
relacin con la informacin que van a almacenar, de modo que resultara lgico usar la variable
llamada TotalFactura para representar el valor total de una factura de venta. Tambin es
aconsejable que los nombres de variables formados por varias palabras, usen maysculas en la
primera letra de cada palabra para distinguirlas, tal como se ha hecho con la variable
TotalFactura. Con esto haremos que la escritura de nuestros programas resulten ms fciles de
entender al momento de realizarle futuras modificaciones.

El nombre de una variable o una constante puede tener una longitud mxima de 127 caracteres y
el primer carcter debe ser una letra, los caracteres siguientes pueden ser letras, dgitos o el
carcter de subrayado (_). No admiten espacios en blanco, ni caracteres especiales o acentuados
(%, $, &, @, !, , , , ). Tampoco se permiten usar nombres repetidos, ni usar palabras
reservadas del lenguaje (Begin, If, For, While, End, Until, ). Turbo Pascal no distingue entre
maysculas y minsculas, as por ejemplo, las variables TotalFactura y totalfactura serian
consideraras como la misma variable.

Tipo de dato:

Todos los datos tienen un tipo asociado con ellos. Un dato puede ser un simple carcter, tal
como `b', un valor entero tal como 35. El tipo de dato determina la naturaleza del conjunto de
valores que puede tomar una variable.

OPERACIONES PRIMITIVAS ELEMENTALES: ASIGNACIN, LECTURA Y ESCRITURA

ASIGNACION:

Ya hemos visto que una variable est relacionada con posiciones de memoria que van a contener
valores que cambiarn durante la ejecucin del programa, por tanto es necesario tener a nuestra
disposicin una accin que nos permita dar los valores adecuados a cada variable para obtener al
final del proceso los resultados correctos. La instruccin que permite asociar un valor a una
variable se denomina ASIGNACIN

Debemos tener en cuenta el tipo de variable para no cometer errores a la hora de la asignacin,
es decir, nunca se permitir asignar por ejemplo, a una variable numrica el valor
a que ya sabemos es de tipo carcter, o a una variable de tipo cadena el valor 124.56 que es de
tipo numrico.

Recordaremos tambin que la asignacin de un valor a una variable supone una escritura en
memoria y por tanto una operacin destructiva del valor que tuviera la variable anteriormente. El
smbolo utilizado para indicar esta accin de asignacin ser <------, de forma que la operacin
se sealar de la siguiente manera:
variable <------ valor o expresin.

X E
Donde X es una variable de tipo T.
E: puede ser :
un valor de tipo T.
Una expresin, que arroja un resultado de tipo T.

16
Introduccin a la Programacin E.P.E.T N20

Otra variable de tipo T, con un valor asignado con anterioridad.


Por ejemplo: Si X es un entero, las siguientes son asignaciones vlidas.

X 5

X ( 8+6*3)

X Y siendo Y otra variable entera con valor asignado anteriormente.
ENTRADA DE DATOS INSTRUCCIN LEER

Las instrucciones de entrada permiten asociar un valor a una variable, pero el valor es tomado del
exterior por medio de un dispositivo de entrada: por ejemplo el teclado
Leer NV
Donde NV es el nombre de la variable.
Tras la operacin de lectura, la variable NV contiene el valor dado por el usuario a travs de un
dispositivo de entrada que generalmente es el teclado
El tipo de dato suministrado desde el exterior debe ser compatible con el tipo de la variable NV

SALIDA DE DATOS INSTRUCCIN ESCRIBIR

Las instrucciones de salida permiten mostrar los resultados obtenidos al exterior, sin sta
instruccin las soluciones no podran darse a conocer.
Mediante la operacin de salida se transfiere el valor de una expresin a un dispositivo de salida
generalmente el monitor
Sintaxis
ESCRIBIR El resultado es ,NV

Se suele utilizar tambin para mostrar mensajes informativos al usuario que estarn delimitados
por comillas
ESCRIBIR Hola

Ejemplos:
Leer un nmero y mostrarlo:

Leer Numero
Escribir Numero

Lee nombre, apellido y DNI y saludar con Hola y el nombre de la persona.


Leer Nombre, Apellido, DNI
Escribir Hola, Nombre.

ESTRUCTURAS DE CONTROL

Las estructuras de control controlan el flujo de ejecucin de un programa o funcin


Las instrucciones o sentencias se organizan en tres tipos de estructuras de control que sirven
para controlar el flujo de ejecucin
1. Secuenciales: las instrucciones se ejecutan sucesivamente una debajo de la otra
2. Selectivas: permiten elegir entre dos alternativas dependiendo de la condicin
3. Repetitivas: una serie de instrucciones que se repiten una y otra vez hasta que se cumple
cierta condicin

17
Introduccin a la Programacin E.P.E.T N20

Estructuras DE CONTROL secuenciales

Las instrucciones se siguen en una secuencia fija que normalmente viene dada por el nmero
de rengln. Es decir que las instrucciones se ejecutan de arriba hacia abajo.

PSEUDOCDIGO

El pseudocdigo es un lenguaje artificial e informal til para el desarrollo de algoritmos. No es


un lenguaje de programacin verdadero y, por lo tanto, no puede ser compilado y ejecutado.
En pseudocdigo se describen los algoritmos utilizando una mezcla de lenguaje comn, con
instrucciones de programacin, palabras claves, etc. El objetivo es que el programador se
centre en la solucin lgica del algoritmo y no en la implementacin en un lenguaje de
programacin concreto (con las posibles complicaciones en las reglas sintcticas), o en otras
palabras, ayudan a "pensar" un programa antes de escribirlo en un lenguaje de programacin
formal.

Caractersticas y partes del pseudocdigo


Las principales caractersticas de este lenguaje son:
1. Es una forma de representacin sencilla de utilizar y de manipular.
2. Facilita el paso del programa al lenguaje de programacin.
3. Es independiente del lenguaje de programacin que se vaya a utilizar.
4. Es un mtodo que facilita la programacin y solucin al algoritmo del
programa. Todo documento en pseudocdigo debe permitir la descripcin de:
1. Instrucciones primitivas.
2. Instrucciones de proceso....
3. Instrucciones de control.
4. Instrucciones compuestas.
5. Instrucciones de descripcin.

Estructura a seguir en su realizacin:

Inicio.
Instrucciones.
Fin.
Ejemplos de algoritmos con Estructuras de Control Secuenciales:
Ejemplos
1.-Algoritmo que suma dos valores cualesquiera.
ESTAS VARIABLES SON LOS
Inicio DATOS QUE SE NECESITAN
Escribir Ingresar el primer valor PARA QUE EL ALGORITMO
Leer numero1 PUEDA CALCULAR LA SUMA
Escribir Ingresar el segundo valor DE DOS NMEROS
Leer numero2 CUALQUIERA Y LOS INGRESA
Suma numero1+ numero2 EL USUARIO POR TECLADO
Escribir Suma
Fin

18
Introduccin a la Programacin E.P.E.T N20

2.-Escribir un algoritmo que calcule la superficie de un tringulo en funcin de la base y la


altura
ESTAS VARIABLES SON
SUPERFICIE=(BASE x ALTURA)/ 2
LOS DATOS QUE SE
Inicio
Escribir Ingresa el valor de la baser
NECESITAN PARA QUE
Leer BASE ELALGORITMO PUEDA
Escribir Ingresar el valor de la altura CALCULAR LA FORMULA
Leer ALTURA SUPERFICIE (BASE DE LA SUPERFICIE DE UN
* ALTURA)/2 Escribir RECTANGULO Y LAS
SUPERFICIE
INGRESA EL USUARIO
Fin POR TECLADO
3.- Disear un
algoritmo que permita leer un numero entero y calcule y muestre el cuadrado del
mismo

Inicio
Escribir Ingresa el valor de la baser
Leer numero
cuadrado numero *
numero Escribir
cuadrado
Fin

4.-Disear un algoritmo que permita calcular el permetro de un tringulo escaleno y lo


muestre
Inicio
Escribir Ingresa el valor del primer lado del triangulo
Leer lado1
Escribir Ingresar el valor del segundo lado del triangulo
Leer lado2
Escribir Ingresar el valor del tercer lado del triangulo
Leer lado3
perimetro lado1 + lado2 +lado3
Escribir El valor del permetro es , perimetro
Fin
5.- disear un algoritmo que permita ingresar la edad de una persona en aos y
meses y lo convierta a meses

Inicio
Escribir Ingresa la edad en aos de una persona
Leer anios
Escribir Ingresar los meses
Leer meses
Anio_en_meses anios*12
Total_meses anios_en_meses + meses
Escribir La edad en meses es , Total_meses
Fin

19
Introduccin a la Programacin E.P.E.T N20

Tp N3-Algoritmos Secuenciales
DISENAR UN ALGORITMO SECUENCIAL Y LAS TRAZAS DE LOS SIGUIENTES EJERCICIOS:

1.- Disear un algoritmo que permita leer cuatro nmeros, calcule el promedio de los cuatro y
muestre el resultado

2.- Realice un algoritmo donde pida al usuario dos nmeros y muestre la suma, resta,
multiplicacin y divisin de los dos.

3.- Escribir un algoritmo que calcule la longitud y el rea de una circunferencia:


longitud de la circunferencia = 2 * PI * radio
rea de la circunferencia = PI * radio2

4.- Elabore un algoritmo que calcule el rea de un rectngulo.

5.- Elabore un algoritmo que calcule el rea de un circulo

6.- Confeccione un algoritmo para calcular el volumen de un cilindro circular recto.


VC = R2h

7.- Elabore un algoritmo que pide al usuario un numero y de este muestre:


- El cuadrado.
- La raiz cuadrada.
- El sucesor.
- El antecesor.

8.- Escribir un algoritmo que calcule la velocidad de un proyectil que recorre E kilometros en T
minutos. Expresar el resultado en metros /segundo.
Velocidad = espacio / tiempo

9.- Disear un algoritmo que Lea un entero, duplicarlo y visualizar el resultado

10.- Disear un algoritmo para calcular el sueldo de un empleado ingresando las horas
trabajadas y el valor de la hora, con estos datos se calculara el sueldo bsico, una vez calculado
el sueldo bsico se debe calcular el descuento que se le realizara, el cual tambin se ingresara
por teclado. Finalmente, con estos datos, se calculara el sueldo neto. Se debe mostrar el sueldo
neto calculado para este empleado.

11.- Escribir un algoritmo que reciba dos variables enteras e intercambie sus valores. Se deben
mostrar los valores que tienen finalmente las variables

12.- Escribir un algoritmo que pida un numero entero y saque por pantalla el cociente y el
resto de la divisin entera entre amos.

13.- Disear el algoritmo correspondiente a un programa que calcule y muestre , el porcentaje


descontado en una compra, introduciendo por teclado el precio de la tarifa y el precio pagado.

14.- Disear el algoritmo correspondiente a un programa que tras introducir una medida
expresada en centmetros la convierta en pulgadas (1 pulgada = 2,54 centimetros)

15.- El dueo de una tienda compra un articulo a un precio determinado. Obtener el precio en
que lo debe vender para obtener una ganancia del 30%.

20
Introduccin a la Programacin E.P.E.T N20

16.- Todos los lunes, mircoles y viernes, una persona corre la misma ruta y cronometra los
tiempos obtenidos. Determinar el tiempo promedio que la persona tarda en recorrer la ruta en
una semana cualquiera.

17.- Un vendedor recibe un sueldo base mas un 10% extra por comisin de sus ventas, el
vendedor desea saber cuanto dinero obtendr por concepto de comisiones por las tres ventas
que realiza en el mes y el total que recibir en el mes tomando en cuenta su sueldo base y
comisiones.

18.-Un maestro desea saber que porcentaje de hombres y que porcentaje de mujeres hay en
un grupo de estudiantes.

19- Realice un algoritmo para calcular el permetro y rea de un Rectangulo un Cuadrado

20- Realice un algoritmo para calcular el descuento en $, de una compra de productos.


Descuento del 20% sobre el valor de la compra.

21- Realice un algoritmo para convertir una determinada suma de dinero de Euros, en $
Argentinos

22- Realice un algoritmo para calcular la edad de una persona.

23- Elaborar un algoritmo que permita ingresar el nmero de partidos ganados, perdidos y
empatados, por algn equipo en el torneo apertura, se debe mostrar su puntaje total,
teniendo en cuenta que por cada partido ganado obtendr 3 puntos, empatado 1 punto, y
perdido 0 puntos.

24- Tres personas deciden invertir su dinero para formar una empresa. Cada una de ellas
invierte una cantidad distinta. Hacer un algoritmo que imprima el porcentaje que cada quien
invierte con respecto al total de la inversin

25 - Realice un algoritmo que permita ingresar el precio de un producto y su precio por kilo, y
calcule su valor en pesos

21
Introduccin a la Programacin E.P.E.T N20

Trabajo Prctico N4
Estructuras de Control Secuenciales

1- Realice un algoritmo para obtener el valor del IVA de dos productos, y luego obtener el
monto en $ de ambos productos.

2- Realizar un algoritmo para determinar el monto total a pagar en $ de 3 productos. Se deber


obtenerde cada producto el nombre, precio y cantidad de c/u de ellos. Por la compra se obtiene
un descuento del 5%

3- Realice un algoritmo para calcular el peso de una persona en Gramos, Libras y Toneladas

Gramos= kilos*1000
Libras = kilos*2,205
Tonelada = kilos/1000
4- Realice un algoritmo para calcular el nuevo salario de un obrero si obtuvo un incremento del
25% sobre su salario anterior, y teniendo en cuenta la cantidad de horas extras trabajadas. Valor
de la hora extra $55

5 - Realice un algoritmo para calcular lo que debe pagar un cliente en un estacionamiento,


sabiendo que se paga $85 la hora. Se debe conocer el tiempo de estacionamiento en horas y
minutos.

6- Elaborar un algoritmo que dados los grados Celsius los convierta a Fahrenheit, con la frmula
de transformacin: F=(C*1.8)+32, donde C son los grados Celsius y F los Fahrenheit.

7 Elaborar un algoritmo que solicite el nmero de respuestas correctas, incorrectas, y en


blanco, correspondientes a los postulantes de un concurso, y muestre su puntaje final
considerando, que por cada respuesta correcta tendr 4 puntos, respuestas incorrectas tendr -
1 y respuestas en blanco tendr 0.

8- Elaborar un algoritmo que permita calcular el nmero de CDs necesarios para hacer una copia
de seguridad, de la informacin almacenada en un disco cuya capacidad se conoce. Considerar
que el disco duro est lleno de informacin, adems expresado en gigabyte. Un CD tiene 700
Megabytes de capacidad un Gigabyte es igual a 1,024 Megabyte.

9- Elaborar un algoritmo que solicite un nmero de 2 cifras y que muestre el nmero de


unidades y decenas que lo componen.

10- Elaborar un algoritmo que permita ingresar el nmero de partidos ganados, perdidos y
empatados,por algn equipo en el torneo apertura, se debe mostrar su puntaje total, teniendo
en cuenta que por cada partido ganado obtendr 3 puntos, empatado 1 punto, y perdido 0
puntos.

11- Tres personas deciden invertir su dinero para formar una empresa. Cada una de ellas
invierte una cantidad distinta. Hacer un algoritmo que imprima el porcentaje que cada quien
invierte con respecto al total de la inversin

22
Introduccin a la Programacin E.P.E.T N20

12- Determinar la hipotenusa de un tringulo rectngulo conocidas las longitudes de los catetos.

13- Una pizzera vende pizzas de 3 tamaos (grande, mediana y chica) y dispone de hasta 10
ingredientes extras para cada colocar en cada una, desea que se elabore un programa para
calcular el costo de cada pizza en base al tamao y a la cantidad de ingredientes. La frmula del
costo para aplicar es la siguiente:

costo = costo fijo($) + ( costo base($) * tamao) + ( cant. Ingred. * costo cada ingred. * tamao )
El precio de venta es = 1.5 * costo.

14- Confeccionar un programa que ingrese una medida en pies y la exhiba convertida a yardas,
pulgadas, cms y mts. NOTA: 1 pie = 12 pulgadas; 1 yarda = 3 pies; 1 pulgada = 2,54 cms

15 - Realice un algoritmo que permita ingresar el precio de un producto y su precio por kilo, y
calcule su valor en pesos

23
Introduccin a la Programacin E.P.E.T N20

ESTRUCTURAS DE CONTROL DE SELECCIN O CONDICIONALES

La estructura condicional permite bifurcar el flujo del programa , es decir que se desarrollen
un conjunto de instrucciones dentro de un algoritmo , acorde al resultado de la evaluacin de
una proposicin que llamaremos la condicin; disponemos de tres estructuras alternativas
diferentes: alternativa simple, alternativa doble y alternativa mltiple.

ESTRUCTURA DE CONTROL SELECTIVA SIMPLE


Estn compuestas nicamente de una condicin nicamente de una condicin. La estructura SI
ENTONCES evala la condicin y en tal caso si la condicin es verdadera, entonces ejecuta un
conjunto de instrucciones determinada, en caso de que la condicin sea falsa no se realizan
estas instrucciones.

Utilizando pseudocdigo:

SI <condicin > ENTONCES

Sentencias
FIN SI

Sentencias representa al bloque de instrucciones que deber ejecutarse si resulta verdadera


la condicin ,

CONDICIN

La condicin puede ser cualquier expresin lgica que de cmo resultado verdadero o falso

Operadores relacionales:

Para armar las condiciones se utilizan los operadores relacionales que son:

>, <, =, >=, <=, <>

Operadores Lgicos

Para armar condiciones compuestas se utilizarn los operadores o conectivos AND o


CONJUNCIN y OR o DISYUNCIN, para determinar el valor de verdad de las expresiones se
utilizarn las respectivas tablas de verdad

Utilizando Diagrama de Flujo

24
Introduccin a la Programacin E.P.E.T N20

Ejemplo

Disear un algoritmo que permita calcular la raz cuadrada de un nmero , si el nmero


ingresado es negativo se debe convertir en positivo antes de calcular la raz cuadrada

Inicio
Escribir 'Ingresar el valor de un numero'
Leer num
Si num < 0 Entonces num<-
num * (-1)
Fin Si resultado_raiz<-
raiz(num)
Escribir 'El valor de la raiz es', resultado_raiz
Fin

ESTRUCTURA DE CONTROL SELECTIVA DOBLE

La estructura selectiva doble es semejante a la simple, la diferencia radica en que la doble


permite especificar un conjunto de instrucciones a desarrollar en caso que el valor de la
condicin sea verdadera y otro conjunto distinto de instrucciones en caso que el valor de la
condicin sea falso

PSEUDOCDIGO

SI <condicin > ENTONCES


Conjunto de sentencias 1
SINO
Conjunto se Sentencias 2

FIN_SI

Diagrama de Flujo

Ejemplo

25
Introduccin a la Programacin E.P.E.T N20

Disear un algoritmo que permite ingresar el monto dinero que debera pagar un cliente de una
tienda y calcular el descuento que se le har sobre este monto considerando que por encima de
$1000 se realizar un descuento es del 30% y si el monto de compra es de $1000 o ms el
descuento que se le har ser del 20%. Se debe calcular y mostrar cuanto debe pagar el cliente

PSEUDOCODIGO

Inicio
Escribir 'Ingresar el monto comprado'
Leer monto
Si monto >1000 Entonces descuento<-
(monto* 30)/100
sino
descuento<-(monto* 20)/100

Fin Si
Monto_a _pagar monto descuento
Escribir El total a pagar es, monto_a_pagar
Fin

5.- Disear un algoritmo que permita leer dos nmeros enteros e indique cual es el mayor de
ambos

PSEUDOCODIGO

Inicio
Escribir Ingresar un nmero
Leer numeroA
Escribir Ingresar otro nmero
Leer numeroB

Si (numeroA >numeroB) entonces


Escribir el mayor es ,A

sino
Escribir el mayor es ,B

Fin Si
Fin

26
Introduccin a la Programacin E.P.E.T N20

ESTRUCTURAS CONDICIONALES MULTIPLES

Hasta ahora las estructuras vistas (simples y doble) solo nos permiten tomar una o dos
decisiones, aunque la estructura mltiple ayuda a elegir varias, opciones no siempre es la
adecuada para todas las aplicaciones. La Estructura de decisin mltiples evaluara una
expresin que podr tomar n caminos y solo se realizara una de las n acciones o lo que es igual,
el flujo del algoritmo seguir solo un determinado camino ente los n posibles.
PSEUDOCODIO

SI( condicion1 )
Conjunto de Sentencias 1
SINO
SI( condicion2 )
Conjunto de Sentencias 2
SINO
SI( condicion3 )
Conjunto de Sentencias 3 .
.
.SINO
acciondefecto

Ejemplo:

Disear un algoritmo que permita solucionar el siguiente problema:

En un club los socios pagan diferentes cuotas dependiendo de la categora a la que


pertenecen. Si son de categora 1 pagan una cuota de $100 ; si son de categora 2 pagaran una
cuota de $150 , si son de categora 3 pagaran una cuota de $200 y si son de categora 4 pagaran
$250. Se debe mostrar la cuota que debe pagar el socio

PSEUDOCODIGO
Inicio
Escribir 'Ingresar la categoria'
Leer categoria
Si (categoria=1) Entonces
Escribir ' la cuota es de $100'
Sino
Si (categoria =2)Entonces
Escribir ' la cuota es de $150'
Sino

si (categoria=3 )Entonces
Escribir ' la cuota es de $200'
sino
Escribir ' la cuota es de $250'
27
Introduccin a la Programacin E.P.E.T N20

FinSi
FinSi
Fin Si
Fin
Trabajo Prctico N5: Estructuras de control condicionales

1.-Disee un que permita ingresar 2 valores y calcular su producto si el primero es negativo o


calcular su suma si el primero es positivo o cero

2. Se ingresan 4 nmeros reales y se quiere determinar si la suma de ellos es positiva, negativa o


cero. Imprimir un mensaje indicndolo.

3. Dados tres nmeros a, b, y c, si la diferencia (resta) entre a y b es mayor que c, calcular el


producto de a y b; de lo contrario, calcular el cociente entre a y b.

4. Disear un algoritmo que muestre un mensaje que indique si un nmero A es mltiplo de


otro nmero B, ambos ingresados por teclado.

5. Disear un algoritmo que muestre si un nmero A, ingresado por teclado, es igual a un


nmero B, tambin ingresado por teclado, o no, caso contrario debe mostrar un cartel
adecuado.

6. Disear un algoritmo que permita leer un nmero y si el mismo es par el nmero se lo


multiplicara *5, caso se lo multiplicar por 3. Se debe mostrar nuevo valor que tom el
nmero.

7. Disear un algoritmo para calcular imprimir el precio de un terreno del cual se tienen los
siguientes datos: largo, ancho y precio por metro cuadrado. Si el terreno tiene ms de 400
metros cuadrados se hace un descuento del 10%.

8.-Disear un algoritmo que permita ingresar un nmero y calcule el cuadrado del mismo si este
nmero es : positivo, mayor que 10 y no es divisible por 2, y en caso contrario que calcule el
cubo del nmero ingresado.
9.-Disear un algoritmo que permita leer dos valores cualesquiera por teclado y que evale si el
primer valor es menor que el segundo, si es as que los intercambie y los muestre, caso contrario
solamente mostrar los valores ingresados.

10.-Disee un algoritmo ingresar 2 valores y determinar si son iguales o no. Considere que si los
valores son distintos debe indicar cul es el mayor.
11. Qu valores van tomando las variables en este conjunto de instrucciones? Realizar la traza

A 3625,25
B 0,2568
OP (A + B) / 152
Escribir OP
OP (OP * A) B
Escribir OP
B OP * 56
Escribir B
Si OP >= 45 Entonces
Escribir Camino 1 , A , B
Sino
Escribir Camino 2 , A , OP
Fin Si
Escribir A, B, OP

28
Introduccin a la Programacin E.P.E.T N20

12.- Sabiendo la cantidad de bancos de un aula y la cantidad de alumnos inscriptos para ese
curso, determinar si alcanzan los bancos existentes. De no ser as informar adems cuantos
bancos es necesario agregar.

12.-Disear un algoritmo que calcule el total a pagar por la compra de camisas. Ya que si se
compran tres camisas o mas de marca C se aplica un descuento del 20% sobre el total de la
compra y si son menos de tres camisas de esa marca el descuento ser del 10%

13.- Disear un algoritmo para calcular el salario a pagar a un trabajador. Se debe ingresar su
nombre, cuntas horas ha trabajado, el valor que gana por hora y, en caso de que su sueldo
supere los quinientos mil pesos, se le debe hacer un descuento del 15%. Se debe mostrar el
salario que cobrar el trabajador.

14.-Disee un algoritmo que muestre el nombre de una estacin del ao, de acuerdo a una letra
ingresada por el usuario. Considere la siguiente correspondencia: (v,V) Verano, (o,O)
Otono, (i,I) Invierno y (p,P) Primavera. En caso de un ingreso no contemplado, muestre
el mensaje ERROR EN LA ENTRADA.

15,-Disee un algoritmo (diagrama de flujo y pseudocdigo) que opere 3 nmeros ingresados


por el usuario de acuerdo al valor de una variable opcin (tambin introducida por el usuario).
Considere la siguiente correspondencia: (1) determinar el mayor de los valores, (2) calcular el
promedio de los valores, (3) calcular el producto de los valores y (4) calcular la raz cuadrada de
cada valor.

16.- Disear un algoritmo que resuelva el siguiente problema: Una compaa de prestamos
estableci un programa para captar clientes, que consiste en lo siguiente: Si el monto por el que
se efecta la fianza es menor que $50 000 la cuota a pagar ser por el 3% del monto, y si el
monto es mayor que $50 000 la cuota a pagar ser el 2% del monto. La empresa desea
determinar cul ser la cuota que debe pagar un cliente.

17.- Realizar un algoritmo que lea un nmero que represente el da de la semana y diga que da
es.

18. La comisin sobre las ventas totales de un empleado es como sigue :


- Si ventas <$50, entonces la comisin ser del 5% de las ventas
- Si $50 <= ventas <= $500, entonces la comisin ser el 10% de las ventas.
- Si las ventas > $500, entonces la comisin ser el 8% de las ventas.

Escriba un algoritmo que lea las ventas y calcule y muestre su comisin.

19. Un empleado de banco tiene un sistema que imprime un ticket cada vez que un cliente
realiza una compra de dlares. La operacin tiene una comisin administrativa segn la cantidad
de dlares que se venden, lo que representa un recargo para el cliente:

a. 2% si es ms de 501 y menos de 1501

29
Introduccin a la Programacin E.P.E.T N20

b. 2,5% si es mayor de 1501 y menos que 3501


c. 4 % si es mayor a 3501

El ticket muestra discriminados: la cantidad de dlares que se compraron, el valor de cada dlar,
el monto de la comisin y el monto total que el cliente debe abonar por la compra. Hacer un
programa que simule la compra e imprima el ticket.

20.-Realizar la traza del siguiente cdigo

Inicio
a4

Si a < 10 Entonces
aa-5
Fin Si
Si a < 5 Entonces
aa-1
Fin Si
Escribir 'El valor de a es', a
Fin

20.-Disear un algoritmo para calcular el valor de un libro. El precio se calcula multiplicando el


nmero de pginas por 100. Si la edicin no es nacional o el libro fue editado este ao se le
aplica un recargo del 10%.

21-Disear un algoritmo que permita leer la nota de un alumno como una letra A, B, C o D.
Indicar si el alumno aprueba, recupera o perdi la materia. Se conoce que un alumno aprueba si
tiene A o B; recupera si tiene una C y pierde la materia si tiene una D.

22.- Realizar un algoritmo que lea un nmero que represente el da de la semana y diga
que da es.

23.- En una empresa, los salarios de los empleados se van a aumentar segn su contrato actual,
de acuerdo a la siguiente tabla :

salario aumento %
0 a $9000 20
$9001 a $15000 5
$15001 a $2000 10
ms de $20000 0

Escribir el programa para que solicite el salario del empleado, calcule y visualice el nuevo salario.

24.--Realizar un algoritmo que pregunte al usuario el momento del da, que se indicar con una
letra de la siguiente manera:
m: maana
t: tarde
n: noche

El sexo de la persona que opera el programa se indicar tambin con letras de la siguiente
manera:

30
Introduccin a la Programacin E.P.E.T N20

M: masculino
F: femenino
El programa dir:buenos das, tardes o noches ( segn el momento) seor o seora segn el
sexo

25.-.Dado el sueldo bsico de un empleado, disear un algoritmo para calcular el monto final
que debe abonrsele sabiendo que si el sueldo bsico es de p pesos por mes debe agregarse
un incremento calculado como un porcentaje p segn la siguiente tabla:

Sueldo Incremento

0 < p < 500 10 %

500 p <1000 5%

Mas de 1000 3%

26.- La compaa de telfonos de esta ciudad ha pedido que le haga un algoritmo para
saber el valor de una llamada, conocido el tiempo que dur, la hora en que se hizo y la
regin a la cual se llam. Las tarifas por minuto estn dadas por la siguiente tabla:

Regin destino Valor da Valor noche

Regin norte $ 0,80 $0, 65


Regin sur $ 0,70 $ 0,60
Regin oriente $1 $ 0,80
Regin occidente $ 0,60 $ 0,55
Regin centro $ 0,75 $0,68

31
Introduccin a la Programacin E.P.E.T N20

ESTRUCTURAS DE CONTROL DE REPETITIVAS

Cuando escribimos un algoritmo las instrucciones se irn ejecutando por orden pero en
determinadas ocasiones es necesario que esto no suceda as, necesitaremos que dependiendo
de la situacin , una misma instruccin se ejecute varias veces, para esto se necesita una
estructura de control repetitiva.
A estas sentencias se les da el nombre de Bucles, en todos los lenguajes de programacin se
utiliza este tipo de estructuras de control, en el lenguaje Pascal se utilizan las siguientes:
REPETIR MIENTRAS
REPETIR ..HASTA
PARA

CONTADORES Y ACUMULADORES

Asociadas a los bucles se encuentran a menudo algunas variables auxiliares. Como siempre
se utilizan de la misma manera, las llamamos con un nombre propio (contador, acumulador,
etc.), pero hay que dejar claro que no son ms que variables comunes, aunque se usan de un
modo especial.

Acumuladores

Las variables acumuladoras tienen la misin de almacenar resultados sucesivos, es decir, de


acumular resultados, de ah su nombre.

Las variables acumuladores tambin debe ser inicializadas. Si llamamos acum a un


acumulador, escribiremos antes de iniciar el bucle algo como esto:

acum = 0

Por supuesto, el valor inicial puede cambiar, dependiendo de la naturaleza del problema.
Ms tarde, en el cuerpo del bucle, la forma en la que nos la solemos encontrar es:

acum = acum + N

siendo N otra variable. Si esta instruccin va seguida de otras:

acum = acum + M
acum = acum + P

estaremos acumulando en la variable acum los valores de las variables M, N, P, etc, lo


cual resulta a veces muy til para resolver ciertos problemas repetitivos.

En este algoritmo, cont es una variable contador tpica de bucle. Se ha usado un bucle
para, que es lo ms sencillo cuando conocemos previamente el nmero de repeticiones
(10 en este caso). La variable Nsuma es el acumulador, donde se van sumando los diferentes
valores que toma N en cada repeticin. se usa para cada uno de los nmeros introducidos
por el teclado, y la variable

Observe como, al principio del algoritmo, se le asigna al acumulador el valor 0. Esta es una
precaucin importante que se debe tomar siempre porque el valor que tenga una variable

que no haya sido usada antes es desconocido (no tiene por qu ser 0)

32
Introduccin a la Programacin E.P.E.T N20

Variables Contadoras

Un contador es una variable (casi siempre de tipo entero) cuyo valor se incrementa o
decrementa en cada repeticin de un bucle en una cantidad fija. Es habitual llamar a esta
variable cont (de contador) o i (de ndice).

El contador suele usarse de este modo:

Primero se inicializa antes de que comience el bucle. Es decir, se le da un valor inicial. Por
ejemplo:

cont 1

Segundo, se modifica dentro del cuerpo del bucle. Lo ms habitual es que se incremente su
valor en una unidad. Por ejemplo:

cont cont + 1

Esto quiere decir que el valor de la variable cont se incrementa en una unidad y es
asignado de nuevo a la variable contador. Es decir, si cont vala 1 antes de esta instruccin,
cont valdr 2 despus.

Otra forma tpica del contador es:

cont = cont 1

En este caso, la variable se decrementa en una unidad; si cont vala 1 antes de la instruccin,
tendremos que cont valdr 0 despus de su ejecucin.

El incremento o decremento no tiene por qu ser de una unidad. La cantidad que haya que
incrementar o decrementar vendr dada por la naturaleza del problema.

Tercero, se utiliza en la condicin de salida del bucle. Normalmente, se compara con el valor
mximo (o mnimo) ,que debe alcanzar el contador para dejar de repetir las instrucciones
del bucle.

El uso de contadores es casi obligado en bucles que deben ejecutarse un determinado


nmero de veces. Recuerde que siempre hay que asignar al contador un valor inicial para la
primera ejecucin del bucle (cont 1 por ejemplo) e ir incrementndolo (o
decrementndolo, segn el algoritmo) en cada repeticin con una instruccin del tipo cont
cont + 1 en el cuerpo del bucle. De lo contrario habremos escrito un bucle infinito.

Por ltimo, hay que prestar atencin a la condicin de salida, que debe estar asociada al
valor del contador en la ltima repeticin del bucle . Mucho cuidado con el operador
relacional (<, >, <=, >=, etc) que usemos, porque el bucle se puede ejecutar ms o menos
veces de lo previsto

REPETIR MIENTRAS
Esta estructura de control indica que se ejecuten una o ms sentencias mientras se cumpla una
determinada condicin . La condicin se forma utilizando los operadores relacionales cuya
evaluacin tendrn como resultado un valor de verdad , es decir, VERDADERO o FALSO

Esta sentencia comprueba la condicin al comienzo del bucle La condicin tiene que ser
verdadera para que se ejecuten las sentencias que estn dentro del bucle y finalizar cuando la
condicin sea falsa.
33
Introduccin a la Programacin E.P.E.T N20

Dentro del bucle debe existir , por lo menos, una sentencia que modifique el valor de la variable
o expresin que forma parte de la condicin, de lo contrario se puede producir una situacin
denominada BUCLE INFINITO, ya que este nunca finalizara.
Si la condicin es falsa al comenzar el bucle, este no ejecutar nunca las sentencias que estn
dentro del mismo.
SENTENCIAS

Mientras (condicin) Hacer


SENTENCIAS
FinMientras

EJEMPLOS
Ejemplo 1
Disear el Diagrama de llaves de un programa que imprima nmeros
CONDICION delTIENE
QUE 1 al 10
QUE SER
Inicio VERDADERA PARA QUE EL BUCLE SE
cont=1 EJECUTE
Mientras cont<=10 Hacer
Escribir cont
cont=cont+1
Fin Mientras
VARIABLE
Fin
CONTADORA
Ejemplo 2
Disear un algoritmo de un programa que imprima nmeros pares del 10 al 30
Inicio
cont=10
Mientras cont<=30 Hacer
Escribir cont
cont=cont+2
Fin Mientras
Fin
Ejemplo 3
Disear el algoritmo de un programa que permita sumar los 10 primeros nmeros naturales y
mostrar el resultado
Inicio
cont=1 VARIABLE
Mientras cont<=10 Hacer ACUMULADORA
suma<-suma+ cont
cont=cont+1
Fin Mientras
Escribir suma
Fin
Ejemplo 4
Disear un algoritmo de un programa que permita leer 50 nmeros enteros y los vaya mostrando
por pantalla
Inicio
cont=1
Mientras cont<=10 Hacer
Escribir 'Ingresar un numero'
Leer numero
Escribir numero
cont=cont+1
Fin Mientras
Fin
Ejemplo 5
Disear un algoritmo de un programa que permita leer 50 nmeros enteros ,los sume y muestre su
resultado en pantalla
INICIO
cont<- 1
34
Introduccin a la Programacin E.P.E.T N20

suma<-0
mientras cont<=10 hacer
Escribir 'ingresar un numero'
Leer numero
suma<-suma+numero
contcont+1
finMientras
Fin

REPETIR HASTA

La diferencia principal respecto al bucle REPETIR MIENTRAS es que el bucle REPETIR


MIENTRAS lo primero que hace es la comparacin de la condicin, por tanto puede que el
bucle REPETIR MIENTRAS no se ejecute ninguna vez si la condicin inicial es falsa, mientras
que el bucle REPETIR HASTA lo primero que hace es ejecutar la sentencia o sentencias, por
tanto, el bucle REPETIR HASTA, siempre se ejecuta una vez al menos.

El cuerpo del bucle se repite hasta que la condicin sea verdadera

repetir
sentencias...
hasta ( condicion_de_fin )

EJEMPLOS

Ejemplo 1

Disear un algoritmo que permita mostrar los 10 primeros nmeros enteros positivos.

Inicio
numero<-1
Repetir
Escribir numero
numero<-numero +1
Hasta Que numero=10

Fin

Ejemplo 2

Disear un algoritmo que permita calcular la suma de los n primeros nmeros enteros positivos.

Inicio
Escribir 'ngrese un numero'
leer numero
suma <-0
k<-0
Repetir
k<-k + 1
suma<-suma +k
Hasta Que k=numero
Escribir 'La suma es ',suma

Fin

35
Introduccin a la Programacin E.P.E.T N20

Ejemplo 3

Disear un algoritmo que permita mostrar la tabla de multiplicar de un nmero N.

Inicio
Escribir 'ngrese la tabla de que nmero calcular'
leer numero
k<-1
Repetir
multiplicacion<-k*numero
Escribir numero,'* ',k,'= ', multiplicacion
k<-k + 1

Hasta Que k>10

Fin

Ejemplo 4

Disear un algoritmo que permita escribir en pantalla los nmeros pares del 26 al 10

Inicio
k<-26
Repetir

Escribir numero,'k= ', k


k<-k - 2
Hasta Que k<10

Fin

REPETIR PARA

El bucle PARA es una sentencia repetitiva cuya principal caracterstica es que el


nmero de veces que se repite es constante Para ello, la declaracin de dicha estructura es de la
siguiente forma:

PARA <variable de control> := <valor inicial> HASTA <valor final> HACER


<sentencias>;

La variable de control es la variable que se va a incrementar automticamente


durante la ejecucin del bucle para saber la condicin en la que debe terminar el bucle.
El valor inicial es el valor con el que se inicia la variable de control y el valor final es
con el que se compara para saber la condicin de terminacin. Las sentencias son las
ejecutadas en cada pasada del bucle. Por tanto, un bucle PARA O FOR es una estructura
de Pascal que hace que se repita una sentencia o nmero de sentencias un nmero determinado
de veces.

Aunque a primera vista pueda resultar ms atractivo FOR, existen limitaciones en su aplicacin
ya que en el bucle FOR siempre se incrementa o decrementa (de uno en uno) los valores de la
variable de control de bucle y no de dos en dos o de tres en tres, o con valores fraccionarios.

El nmero de iteraciones de un bucle FOR siempre es fijo y se conoce de antemano:


Valor final - Valor inicial +1.

EJEMPLOS

36
Introduccin a la Programacin E.P.E.T N20

Ejemplo 1
Disear un algoritmo que imprima los mil primeros nmeros en orden creciente.
Inicio
Para i<-1 Hasta 100 Con Paso 1 Hacer
Escribir 'i=',i
Fin Para

FinProceso

Ejemplo 2

Disear un algoritmo que imprima los cuadrados de los primeros 100 nmeros naturales.
Inicio
Para i<-1 Hasta 100 Con Paso 1 Hacer
cuadrado<-i*i
Escribir 'cuadrado=',cuadrado
Fin Para

Fin

Ejemplo 3

Disear un algoritmo que permita pedir 50 nmeros naturales y determine e imprima cuantos
son pares y cuntos son impares

Para i<-1 Hasta 50 Con Paso 1 Hacer


Escribir 'Ingresar un numero'
Leer numero
si numero mod 2 =0 Entonces
cont_pares<-cont_pares +1
Sino
cont_impares<-cont_impares +1
FinSi
FinPara
Escribir cont_pares, cont_impares
Fin

CUNDO UTILIZAR REPETIR MIENTRAS/REPETIRHASTA/PARA

Utilizar la sentencia o estructura PARA cuando se conozca el nmero de iteraciones, y


siempre que la variable de control de bucle sea de tipo ordinal.
Utilizar la estructura REPETIR HASTA cuando el bucle se realice por lo menos una vez.
En todos los dems casos utilizar la sentencia REPETIRMIENTRAS.

37
Introduccin a la Programacin E.P.E.T N20

TRABAJO PRCTICO N6
ESTRUCTURAS DE CONTROL REPETITIVAS

1.-Disear un algoritmo que permita ingresar la cantidad necesaria de valores hasta que su suma
supere 245 , e imprima el resultado.
2.-Hacer un algoritmos para imprimirlos mltiplos de 4 a partir de y calcular y mostrar su suma
mientras el mltiplo de 4 sea menor que 350
3.-Realizar el algoritmo para obtener la suma de los nmeros pare hasta 1000 inclusive
S= 2+4+6....+100

4.-Disear un algoritmo que Calcule y muestre la suma siguiente:


100 + 98 + 96 + 94 + . . . + 0 en este orden

5.-Disear un algoritmo que permita leer 50 calificaciones de un grupo de alumnos. Calcule y


escriba el porcentaje de reprobados. Tomando en cuenta que la calificacin mnima aprobatoria
es de 70.

6.-Una persona debe realizar un muestreo con 50 personas para determinar el promedio de
peso de los nios, jvenes, adultos y viejos que existen en su zona habitacional. Se determinan
las categoras con base en la sig, tabla:

CATEGORIA EDAD
Nios 0 12
Jvenes 13 29
Adultos 30 59
Viejos 60 en adelante

Escribe un algoritmo que lea una lista de diez nmeros y determine cuntos son positivos, y
cuntos son negativos.

7.-Disear un algoritmo que dado la tarifa de pago por horas de un trabajador, y sus horas
trabajadas calcular cuntos trabajadores reciben un salario mayor o igual a S/.500 y calcular
adems el promedio de los salarios de todos los trabadores

8.-Un Zologo pretende determinar el porcentaje de animales que hay en las siguientes tres
categoras de edades: de 0 a 1 ao, de ms de 1 ao y menos de 3 y de 3 o ms aos. Disear un
algoritmo que calcule y muestre los porcentajes

9.-Realizar la traza del siguiente algoritmo


ALGORITMO problema5
VARIABLES
num ES ENTERO
INICIO
ESCRIBE Teclee un nmero entre 5 y 15 (no incluidos)
LEE num
MIENTRAS num <= 5 O num >= 15 HACER
ESCRIBE Teclee un nmero entre 5 y 15 (no incluidos)
LEE num
FIN MIENTRAS
ESCRIBE El nmero ledo es , num
FIN
10.-Hacer un algoritmo que calcule y muestre la cantidad de divisores que tiene un numero n

11.-Escribe un algoritmo que escriba la tabla de multiplicar de cualquier nmero entero entre 1 y
10, dado por el usuario.

12.-Escribe un algoritmo que pida una base y un exponente (entero positivo) y que calcule la
potencia.
38
Introduccin a la Programacin E.P.E.T N20

13.-Escribe un algoritmo que diga si un nmero introducido por teclado es o no primo. Un


nmero primo es aquel que slo es divisible entre l mismo y la unidad.

14.-Disear un algoritmo que permita calcular el factorial de un nmero N Por ejemplo factorial
de 4 es 1*2*3*4=24
15.-Disear un algoritmo que permita determinar cuantos hombres y cuantas mujeres se
encuentran en un curso de n personas, suponiendo que los datos son extrados alumno por
alumno.

16.- Dado un conjunto de valores enteros,disear un algoritmo que permita calcular e imprimir:
a) cuantos valores cero hubo b) promedio de los valores positivos c) sumatoria de valores
negativos

17.-Se conoce los gastos en electricidad y agua de un laboratorio qumico durante cada uno de
los 12 meses del ao. Escribe un algoritmo que lea dichos datos y muestre, el gasto total anual y
el porcentaje de gastos de cada concepto sobre el total anual.

18.-Escribe un algoritmo que muestre los n primeros trminos de la serie de Fibonacci. El primer
trmino de la serie de Fibonacci es 0, el segundo es 1 y el resto se calcula sumando los dos
anteriores, por lo que tendramos que los trminos son 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144...
El nmero n se deben introducir por teclado.

39
Introduccin a la Programacin E.P.E.T N20

Trabajo prctico N7
Estructuras de Control repetitivas

1.- Disear un algoritmo que cuente los nmeros pares naturales entre a y b inclusive Mostrar el
resultado obtenido
2.- .- Disear un algoritmo que Sume los nmeros impares naturales entre a y b inclusive.
Mostrar el resultado obtenido
3.-Suponiendo el siguiente bloque de cdigo
Inicio
a 3
b 2
c a

Repetir mientras (b>0)

c c+1

b b -1
FinMientras
Fin

a)Realizar la traza del algoritmo anterior

b)Realizar una versin equivalente modificando el programa anterior para que utilice una
estructura REPETIR HASTA en lugar de REPETIR MIENTRAS

c) Se podra utilizar un bucle PARA? JUSTIFICAR LA RESPUESTA

4.-Dados los siguientes bloques de instrucciones, realizar una traza para determinar qu valor se
imprimir por pantalla al finalizar la ejecucin de los mismos.

a)
1.-Suponiendo el siguiente bloque de cdigo
a)
Inicio
a 10
Para i=1 hasta 5 hacer
a a+1
FinPara
Escribir a
Fin

b)
Inicio
a 10
Para i=1 hasta -1 hacer
a a+1
FinPara
Escribir a
Fin

a) En un programa, puedo reemplazar un REPETIR MIENTRAS por un PARA? En algn caso?


En ningn caso? En todos los casos? Muestre un ejemplo asociado a su explicacin.

5.-Muestre los nmeros mltiplos de 5 de 0 a 100 utilizando , de ser posibles, los tres bucles:
(disear un ejercicio con cada bucle)

a) REPETIR. ..MIENTRAS
40
Introduccin a la Programacin E.P.E.T N20

b) PARA
c) REPETIR HASTA

DE NO SER POSIBLE REALIZARLO CON ALGUNO DE ELLOS JUSTIFICAR


6.-Muestra los nmeros del 320 al 160, contando de 20 en 20 utilizando, de ser posible, los
bucles, (disear un ejercicio con cada bucle)

a) REPETIR. ..MIENTRAS
b) PARA
c) REPETIRHASTA
DE NO SER POSIBLE REALIZARLO CON ALGUNO DE ELLOS JUSTIFICAR

7.-Escribir un algoritmo para calcular el promedio de una lista de nmeros positivos que termina
en un nmero negativo.
8.-Calcular la productoria de los nmeros naturales que existen entre m y n, siendo m y n datos
de entrada. Por ejemplo m=3, n=5 productoria=3*4*5=60
9.-Hacer un algoritmo que calcule la cantidad de divisores que tiene un numero n.mostrar el
resultado obtenido

10.-Se ha realizado un torneo de football donde participaron nios de 7, 10 y 13 aos. Se


inscribieron un total de 200 nios. Se pide crear un programa para saber de los 200 nios
inscriptos cuntos tienen 7 aos, cuntos 10 aos y cuntos 13 aos

11.-Disear un algoritmo que permita leer 50 calificaciones de un grupo de alumnos, calcule y


escriba el porcentaje de reprobados.
Se debe tomar en cuenta que la calificacin mnima aprobatoria es de 7.

12.-Al cerrar un expendio de naranjas, 15 clientes que aun no han pagado recibirn un 15% de
descuento si compran ms de 10 kilos. Disear un algoritmo que permita mostrar cuanto pagara
cada cliente y cuanto percibir la tienda por todas las compras
.
13.-Disear un algoritmo que permita encontrar el menor valor de un conjunto de n nmeros
dados.

14.- Disear un algoritmo que permita encontrar el mayor valor de un conjunto de n nmeros
dados.

15.-En un supermercado un cajero captura los precios de los artculos que los clientes compran e
indica a cada cliente cual es el monto de lo que deben pagar. Al final del da le indica a su
supervisor cuanto fue lo que cobro en total a todos los clientes que pasaron por su caja. Disear
un algoritmo adecuado

16.-Una persona que va de compras a la tienda Enano, S.A., decide llevar un control sobre lo que
va comprando, para saber la cantidad de dinero que tendr que pagar al llegar a la caja. La
tienda tiene una promocin del 20% de descuento sobre aquellos artculos cuya etiqueta sea
roja. Disear un algoritmo que permita determinar la cantidad de dinero que esta persona
deber pagar por los productos que lleva

17.- Un fiscal desea un algoritmo que le permita determinar cuntas personas de cada una de
las secciones que componen su zona asisten el da de las votaciones. Las secciones son: norte,
sur y centro. Tambin desea determinar cul es la seccin con mayor nmero de votantes.

18.-Leer los 250,000 votos otorgados a los 3 candidatos a gobernador e imprimir el la cantidad
de votos de cada candidato ,numero del candidato ganador y su cantidad de votos recibidos

19.-Suponga que tiene usted una tienda y desea registrar las ventas en su computadora. Disee
un algoritmo que lea por cada cliente el monto total de su compra y al final del da que escriba la
cantidad total de ventas y el nmero de clientes atendidos.
41
Introduccin a la Programacin E.P.E.T N20

20.-Se tiene un conjunto de M tarjetas cada una contiene la informacin del censo para una
persona:
1. Nmero de censo,
2. Sexo
3. Edad
4. Estado civil (a. soltero, b. Casado, c. Viudo, d. Divorciado )
Disee un algoritmo que lea todos estos datos, e imprima el nmero de censo de todas las
jvenes solteras que estn entre 16 y 21 aos.

21.-La Ca. Automovilstica Mexicana, S.A. de C.V premia anualmente a sus mejores vendedores
de acuerdo a la siguiente tabla:
Si vendi Le corresponde de Comisin
sobre ventas totales
1,000,000 <= v < 3,000,000 3%
3,000,000 <= v < 5,000,000 4%
5,000,000 <= v < 7,000,000 5%
7,000,000 <= v 6%
Disear un algoritmo que lea las ventas de N vendedores y que escriba la comisin anual que le
corresponda a cada vendedor. Suponer que nadie vende ms de 10,000,000 al ao.

22.-Teniendo las notas de ingles, matemtica y programacin de n alumnos se requiere un


algoritmo que permita calcular:
Promedio de notas por materia
Promedio de notas por alumno
Promedio General (de todas las materias para todos los alumnos).

23.-Disear un algoritmo que permita leer por cada alumno de INTRODUCCION A LA


PROGRAMACION su nmero de legajo y su calificacin en cada una de las 5 unidades de la
materia. Al final que escriba el numero de control del alumno que obtuvo mayor promedio.
Suponga que los alumnos tienen diferentes promedios.

24.-Una compaa de seguros tiene contratados a n vendedores. Cada uno hace una cantidad X
ventas a la semana. Su poltica de pagos es que un vendedor recibe un sueldo base, y un 10%
extra por comisiones de sus ventas. El gerente de su compaa desea que disees un algoritmo
parasaber cuanto dinero obtendr cada vendedor por concepto de comisiones por las ventas
realizadas, y cuanto tomando en cuenta su sueldo base y sus comisiones.

25.- Disear un algoritmo que permita resolver el siguiente problema: En un supermercado un


cajero va ingresando los precios de los N artculos que los clientes compran e indica a cada
cliente cual es el monto que deben pagar.
Al final del da le indica a su supervisor cuanto fue lo que cobro en total a TODOS los clientes
que pasaron por su caja.

26.-Disear un algoritmo que permita realizar la suma de la siguiente serie:


1 1 1 1 1
.......
2 4 6 8 2*n

42
Introduccin a la Programacin E.P.E.T N20

27.-.Disear algoritmos que muestren las siguientes salidas:


11111 10 11 12 13 14 #####
1111 11 12 13 14 #####
111 12 13 14 #####
11 13 14 #####
1 14 #####

12345 00000
1234 1111
123 22 2
12 33
1 4

43

Vous aimerez peut-être aussi