Sunteți pe pagina 1din 6

Universidad Distrital Francisco Jos de Caldas

Facultad de Ingeniera
Proyecto Curricular de Ingeniera de Sistemas
Programacin Bsica grupo 85
Taller No.1
Fecha.

Uso de Estructuras de Control o Sentencias en C++ y Python

Objetivos

Aplicar soluciones algortmicas basadas en seleccin.


Identificar el uso de las estructuras condicionales o de seleccin:
o Identificar el uso de la estructura if-else (C++ / Python).
o Identificar el uso de la estructura switch (C++).
Identificar el uso de las estructuras de iteracin:
o Identificar el uso de la estructura while (C++ / Python).
o Identificar el uso de la estructura do-while (C++ / Python).
o Identificar el uso de la estructura for (C++ / Python).

Tema: Estructuras condicionales o de seleccin

Cuando se construyen algoritmos a menudo se hace indispensable representar tomas de decisiones ya sea evaluando entre
dos opciones disponibles o evaluando mltiples opciones. El primer caso va a ser posible representarlo usando la estructura
de control if-condicion-else (C++ / Python), en la cual se van a evaluar nicamente condiciones de carcter booleano, es
decir cuya respuesta sea nicamente verdadero o falso.

C++ Python
if (expresion_logica) { if (expresin_logica):
acciones_por_verdadero; acciones_por_verdadero
else{ else:
acciones_por_falso; acciones_por_falso
} }

Prepar: John Freddy Parra Pea


Universidad Distrital Francisco Jos de Caldas
Facultad de Ingeniera
Proyecto Curricular de Ingeniera de Sistemas
Programacin Bsica grupo 85
Taller No.1
Fecha.

Para el segundo caso se aplicar ya sea una sucesin de estructuras if-condicin- sino en C++ y Python anidadas de la
siguiente manera:

C++ Python
if (expresion_logica) { if (expresin_logica):
acciones_por_verdadero; acciones_por_verdadero
else{ else:
if (expresion_logica) { if (expresin_logica):
acciones_por_verdadero; acciones_por_verdadero
else{ else:


...
}
}

O con una estructura switch, que evala el contenido de una variable y segn la opcin desencadena una accin:

C++ Python
En Python no existe una estructura de control switch, para
esto se implementa la estructura if usando elif, que permite
evaluar el contenido de la variable en caso contrario de que
switch (variable) { el primer condicional no sea verdadero:
case valor_variable_especifica_1:
secuencia_de_acciones_1; if (expresin_lgica_1): #funciona como case_1
break; acciones_por_verdadero_1
case valor_variable_especifica_2: elif (expresin_lgica_2): #funciona como case_2
secuencia_de_acciones_2; acciones_por_verdadero_2
break; elif (expresin_lgica_3): #funciona como case_3
case valor_variable_especifica_3: acciones_por_verdadero_2
secuencia_de_acciones_3; else: #de otro modo
break; secuencia_de_acciones_dom;
default: //de otro modo
secuencia_de_acciones_dom;
break;
}

Prepar: John Freddy Parra Pea


Universidad Distrital Francisco Jos de Caldas
Facultad de Ingeniera
Proyecto Curricular de Ingeniera de Sistemas
Programacin Bsica grupo 85
Taller No.1
Fecha.

Tema: Estructuras Iterativas

Al igual que se usan estructuras condicionales para el desarrollo de algoritmos, tambin se usan otro tipo de que son las
estructuras iterativas, que nos permite repetir una parte del algoritmo un determinadas veces, dependiendo una condicin o
un nmero, el primer caso se representa con la estructura while para C++ y Python, lo ms importante a recordar de la
sentencia while es que su condicin de terminacin (expresin booleana) se comprueba cada vez antes de que el cuerpo
del sea ejecutado. El cuerpo se ejecuta mientras se cumpla la condicin de control. Si la condicin es false (0), entonces el
cuerpo no se ejecuta. Hay que hacer notar que, si la condicin es true (1) inicialmente, la sentencia mientras no terminar
(ciclo o bucle infinito) a menos que en el cuerpo de la misma se modifique de alguna forma la condicin de control del ciclo.
Una sentencia while se ejecutar cero o ms veces.

C++ Python

while (expresion_logica){
while (expresin_logica):
secuencia_de_acciones;
secuencia_de_acciones
}

Al igual que en la sentencia mientras, en la sentencia do-while para C++ el cuerpo del bucle se ejecuta mientras que sea
verdad la expresin booleana que constituye la condicin de control. Adems, esta condicin se comprueba cada vez tras la
ejecucin del cuerpo, no antes, como en el mientras. El cuerpo de una sentencia repetir siempre se ejecuta al menos una
vez. Cuando esto pueda ocurrir es ms conveniente su uso que la sentencia do-while (C++).

En Python no existe una estructura de control do-while definida, para esto se usa la estructura while en un ciclo infinito y se
usa el break, para romper este ciclo en un momento determinado, esto se explica en el cdigo de ejemplo mostrado a
continuacin:

C++ Python
do{ while(True): #Mantiene un ciclo infinito
secuencia de acciones
secuencia_de_acciones if (expresin_lgica): #debe romper el bucle infinito
}while (expresin_logica); break

Prepar: John Freddy Parra Pea


Universidad Distrital Francisco Jos de Caldas
Facultad de Ingeniera
Proyecto Curricular de Ingeniera de Sistemas
Programacin Bsica grupo 85
Taller No.1
Fecha.

Finalmente la sentencia FOR se usa cuando no se necesita una iteracin dada una condicin numrica, si no que se quiere
iterar un nmero especfico de veces, la sentencia FOR en C++ contiene las siguientes partes:
Parte de inicializacin (for int variable_numerica = valor_inicial), que inicializa las variables de control del bucle.
Parte de finalizacin (variable_numerica operador_lgico valor_final), que contiene la variable definida en la
inicializacin con un operador lgico (<, <=,>,>=) usado correctamente con un valor final especfico.
Parte de incremento (variable_numerica_con_incremento), que modifica la variable de control de bucle, dndole
incremento segn el paso escogido.
En Python tiene la siguiente estructura:
Parte de inicializacin (for variable in range) donde se define una variable y se declara que va a adoptar un rango
Parte de finalizacin (valor_inicial, valor_final) esta parte es especficamente para valores numricos, ya que la parte de
finalizacin tambin puede tener una lista o una cadena. No existe una parte de incremento ya que Python recorre valor
por valor desde el inicial hasta el final.

C++ Python
Sintaxis: Sintaxis:
for (int variable_numerica = valor_inicial; variable_numerica for variable in range (valor_inicial, valor_final):
operaror_logico valor_final; secuencia_de_acciones
variable_numerica_con_incremento) {
secuencia _de_acciones; Ejemplo:
} for i in range (1,10)
Ejemplo: print (Hola, i)
for (int i = 0 ; i >10 ; i++) {
cout << i;
}

Competencias asociadas

Representa soluciones de problemas aplicando el concepto de Algoritmo.


Modela, implementa y evala problemas cuya solucin algortmica requiere el uso de las diferentes
estructuras de control.
Es capaz de discernir que tecnologa debe utilizar para la resolucin de problemas particulares.

Consideraciones generales

Para la elaboracin del presente taller se debe tener en cuenta en cada punto:

Los algoritmos deben funcionar con diferentes datos pedidos al usuario.

Los algoritmos deben usar correctamente las diferentes estructuras de control.

Prepar: John Freddy Parra Pea


Universidad Distrital Francisco Jos de Caldas
Facultad de Ingeniera
Proyecto Curricular de Ingeniera de Sistemas
Programacin Bsica grupo 85
Taller No.1
Fecha.

Recursos y Herramientas

IDE Bloodshed Software Dev - C++


IDE para Python
Aula virtual del grupo 85 de programacin bsica
Aula virtual transversal

Ejercicios

1. Le pida al usuario dos nmeros y le presente el resultado de:


a. La suma
b. La resta
c. La multiplicacin
2. Le pida al usuario un valor de una temperatura en Celsius y la convierta a:
a. Fahrenheit
b. Kelvin
c. Rankine
3. Dados 5 nmeros calcule:
a. El mayor
b. El menor
c. El promedio
4. Dados dos nmeros calcular la divisin del primero entre el segundo. Nota: se debe tener en cuenta los errores
matemticos posibles
5. Determinar si un nmero es par
6. Determinar si un nmero es negativo
7. Calcular una multiplicacin usando sumas
8. Calcular una potencia usando multiplicaciones (tener en cuanta potencias negativas)
9. Dados el ao de nacimiento y el ao de muerte de una persona determinar qu edad alcanz.
10. Aproximar un valor flotante al entero ms cercano sin utilizar la funcin de redondeo
11. Dado un nmero imprima en pantalla la tabla de multiplicar del mismo
12. Calcule las races de una ecuacin cuadrtica dados los 3 coeficientes a, b, c
13. Calcular el volumen de una esfera de radio dado. (Tener en cuenta restricciones geomtricas)
14. Dada una figura seleccionada por el usuario, calcular el permetro y el rea, pidiendo al usuario los datos que se
muestran a continuacin (tener en cuenta restricciones geomtricas)

Circulo Radio
Cuadrado Lado
Rectngulo Base, altura
Triangulo Los tres lados
Trapecio Base mayor, base menor y altura

15. Calcular el factorial de un nmero dado


16. Dado n calcular el n-simo trmino de la serie de fibonacci
17. Aproximar el exponencial de un nmero dado usando la serie de McLauren

18. Calcular el valor de la derivada de una funcin polinmica de grado 3 evaluada en un valor
19. Leer nmeros hasta recibir un cero y calcular el promedio de los nmeros recibidos
20. Leer nmeros hasta recibir tres nmeros negativos y calcular el promedio de los nmeros positivos recibidos

Prepar: John Freddy Parra Pea


Universidad Distrital Francisco Jos de Caldas
Facultad de Ingeniera
Proyecto Curricular de Ingeniera de Sistemas
Programacin Bsica grupo 85
Taller No.1
Fecha.

21. Convertir nmeros entre las diferentes bases como se muestra a continuacin
Desde Hasta
Decimal Octal Binario Hexa
Binario Decimal Octal Hexa
Binario Decimal Octal Hexa
Octal Binario Decimal Hexa

22. Leer nmeros nicamente en sentido ascendente. Una vez reciba un nmero que sea menor que el anterior. Con solo
los nmeros ascendentes hallar cuntos de ellos fueron impares
23. Determinar si un nmero es primo
24. Hallar MCD de todos los nmeros ledos antes de recibir un nmero negativo
25. Hallar el MCM de todos los nmeros ledos antes de recibir un nmero negativo
26. Generar el valor de un dado
27. Dado el valor de un ngulo determinar qu tipo de ngulo es
28. Dado un valor descomponerlo en sus factores primos
29. Dados dos nmeros enteros positivos calcular
a. La combinacin del primero en el segundo
b. La permutacin del primero en el segundo
30. Dado un monto, un nmero de meses y un valor de inters mensual de un prstamo calcular el valor total a pagar

Prepar: John Freddy Parra Pea

S-ar putea să vă placă și