Example: marketing

Fundamentos de programación Ejercicios

Fundamentos de programaci nEjerciciosCurso 2020/21123 Ejercicios de Fundamentos de programaci n - revisi n 01/01/2021 Copyleft Alejandro Cast n SalinasSe otorga el permiso para copiar, distribuir y/o modificar este documento bajolos t rminos de la licencia de documentaci n libre GNU, versi n ocualquier otra versi n posterior publicada por la Free Software consultar dicha licencia en contenido de este documento puede cambiar debido a ampliaciones ycorrecciones enviadas por los lectores. Encontrar s siempre la ltima versi ndel documento en ca t/~acastan/textos/ . ndice de contenidoPreparados, listos, .. ya!..5Pr ctica 1: Lenguajes de programaci n, compiladores e int rpretes, y entornos de ctica 2: Algoritmos ctica 3: Estructuras de control ctica 4: Estructuras de control ctica 5: Estructuras de almacenamiento homog neas unidimensionales (vectores y strings).

Práctica 1: Lenguajes de programación, compiladores e intérpretes, y entornos de desarrollo Objetivos de la práctica Conocer la historia de los lenguajes de programación más importantes. Entender los conceptos de código fuente, código máquina, compilador e intérprete. Familiarización con un entorno integrado de desarrollo. Familiarización con la estructura de un …

Tags:

  243 n, Programaci, Fundamento, Fundamentos de programaci

Information

Domain:

Source:

Link to this page:

Please notify us if you found a problem with this document:

Other abuse

Transcription of Fundamentos de programación Ejercicios

1 Fundamentos de programaci nEjerciciosCurso 2020/21123 Ejercicios de Fundamentos de programaci n - revisi n 01/01/2021 Copyleft Alejandro Cast n SalinasSe otorga el permiso para copiar, distribuir y/o modificar este documento bajolos t rminos de la licencia de documentaci n libre GNU, versi n ocualquier otra versi n posterior publicada por la Free Software consultar dicha licencia en contenido de este documento puede cambiar debido a ampliaciones ycorrecciones enviadas por los lectores. Encontrar s siempre la ltima versi ndel documento en ca t/~acastan/textos/ . ndice de contenidoPreparados, listos, .. ya!..5Pr ctica 1: Lenguajes de programaci n, compiladores e int rpretes, y entornos de ctica 2: Algoritmos ctica 3: Estructuras de control ctica 4: Estructuras de control ctica 5: Estructuras de almacenamiento homog neas unidimensionales (vectores y strings).

2 32Pr ctica 6: Estructuras de almacenamiento homog neas multidimensionales (matrices)..42Pr ctica 7: Estructuras de almacenamiento heterog neas (diccionarios y clases)..48Pr ctica 8: Funciones y ctica 9: Almacenamiento en ctica 10: Comunicaci n por ctica 11: Apuntadores y estructuras din micas de Fin!..854 Preparados, listos, .. ya!Este documento no es un curso de programaci n. Tampoco es un curso de Python. Encontrar smuchos buenos cursos sobre dichos temas en libros e documento tan s lo contiene algunos Ejercicios de programaci n, para ir practicando y fijandolo aprendido en clases de programaci n b sica. No pretende que resuelvas los problemas en Python,aunque a principio de cada bloque de Ejercicios haya un breve resumen de algunas caracter sticasnecesarias de dicho curso trabajamos con Python, pero en cursos anteriores utilizamos C o Java.

3 El lenguaje deprogramaci n no importa y el entorno de desarrollo tampoco. De hecho, las soluciones quepropongo no son pyth nicas : intento que no contengan caracter sticas distintivas de Python, sinoestructuras de datos, de control de flujo, y operadores que puedes encontrar en cualquier lenguaje deprogramaci programar hace falta curiosidad, pasi n por los rompecabezas, y muchas ganas de esta primera secci n del documento adjunto algunas ideas para practicar la programaci n conPython de una manera muy l + TurtlePython tiene el m dulo turtle, que te permite dibujar gr ficos vectoriales al estilo del antiguolenguaje de programaci n Logo. Un ejemplo de uso: - + PygamePython tiene el m dulo pygame, que te permite programar videojuegos 2D.

4 Un ejemplo de uso: - + BlenderBlender, el programa libre y gratuito de dise o 3D, permite utilizar Python para interactuar con losobjetos. Encontrar s varios videotutoriales en internet. La documentaci n de referencia: - + Robocode Te atreves a utilizar una API para programar el comportamiento de un tanque, y lanzarlo a un arenaa competir con otros tanques? - + Aplicaciones con interfaz gr fica Est s cansado de escribir aplicaciones para la c nsola? Te apetece utilizar librer as para que tuaplicaci n muestre ventanas y elementos gr ficos? Tk i nter , PyQt, wxPython, PySimpleG UI , .. - + MinecraftPython puede interactuar con el juego Minecraft. Puedes escribir programas que construyanestructuras dentro del juego, o que var en el comportamiento del ejemplo de uso: - dispones del juego Minecraft, que no es gratuito, para poder interactuar con Python debes:1)Descargar e instalar un servidor de Minecraft como Spigot o Paper.

5 Configurarlo para modode juego creativo .2)Descargar el m dulo RaspberryJuice en la carpeta plugins de dicho )Ejecutar el )Ejecutar el juego Minecraft y escoger una partida multijugador contra tu servidor. Pulsasimult neamente las teclas <F3>+<P> para activar que cuando abandones la ventana deljuego ste no se )En la carpeta donde vayas a programar con Python, descarga las librer as para Minecraft ydescompr melas en la carpeta mcpi . Aqu tienes una descripci n de las funciones de dichalibrer a: no dispones del juego Minecraft, no lo compres. Puedes realizar un montaje m s sencillo que elanterior sobre Minetest, un clon gratuito y libre de Minecraft, En Linux me ha bastado con instalardes de los repositorios los paquetes minetest , minetest-mod-pycraft y python3-minecraftpi.

6 Python + RaspberryEl miniordenador Raspberry Pi dispone de una l nea de entradas y salidas digitales llamada GPIOque permite conectar todo tipo de circuitos electr nicos e interactuar con ellos. Ejemplos de uso: - - - + sistemas y ciberseguridadHay mil y una librer as: Scapy para crear paquetes TCP/IP; shodan para interactuar con el buscadorShodan; smtp lib para enviar correo; Fabric para automatizar tareas de administraci n; dn s python para consultas DNS; python-whois para consultas WHOIS; PyPDF4 para procesar o crear pdf;ipaddress para c lculos de subnetting; pyHook para crear keyloggers; psutil, subprocess, os y syspara interactuar con procesos y el sistema; shutil para manipular ficheros a nivel de directorio.

7 Ctica 1: Lenguajes de programaci n, compiladores e int rpretes, y entornos de desarrolloObjetivos de la pr ctica Conocer la historia de los lenguajes de programaci n m s importantes. Entender los conceptos de c digo fuente, c digo m quina, compilador e int rprete. Familiarizaci n con un entorno integrado de desarrollo. Familiarizaci n con la estructura de un programa en lenguaje Python. Familiarizaci n con las funciones de entrada y salida del lenguaje Python. Familiarizaci n con los tipos de datos en Python y comprensi n de los errores debidos al rangode precisi n de los tipos num tmicaAlgoritmo es la exposici n, paso a paso, de la secuencia de instrucciones que se ha de seguir pararesolver un determinado de datos es una representaci n en forma l gica de la informaci n, una manera deorganizar una determinada informaci de programaci n son el conjunto de instrucciones que permiten controlar una m programa es la descripci n de un algoritmo en un determinado lenguaje de programaci n.

8 N Diagramas de flujoEl diagrama de flujo es un lenguaje visual de descripci n de algoritmos. La representaci n gr ficanos permite entender f cilmente el proceso, aunque para procesos muy complejos los diagramas deflujo se vuelven demasiado extensos y, por lo tanto, intratables. 7 Ejemplo: descripci n mediante diagrama de flujo del proceso a seguir un domingo por la ma NPEDIR DATOSDAR RESULTADOSENLAZAR OPERACIONESLas cajas con forma de elipse indican el inicio y el final del algoritmoLas cajas con forma de rect ngulo indican una operaci n, c lculos en cajas con forma de rombos indican una decisi n. Seg n sea el resultado de evaluar la expresi n l gica el codigo se bifurcar hacia un camino o hacia cajas con forma de trapecios indican una petici n de datos o una salida de flechas enlazan los diferentes pasos del algoritmo y nos indican el orden de NCIERTOE jemplo: descripci n mediante diagrama de flujo del proceso a seguir para calcular una ra digoPseudoc digo es un lenguaje escrito de descripci n de algoritmos, con una sintaxis m s coloquial ymenos r gida que la de los lenguajes de programaci n.

9 Digo Ejemplo: descripci n mediante pseudoc digo del proceso a seguir para calcular una ra z RaizCuadrada pedir n mero x sea b = x mientras x/b sea muy diferente de b, hacer lo siguiente: actualizar el nuevo valor de b = (b + x/b) / 2 fin del mientras decir b es la ra z cuadrada de x fin del programa9 Lenguaje de programaci nLos lenguajes de programaci n han evolucionado con el tiempo. Para hacernos una idea de dichaevoluci n y de las caracter sticas que han ido incorporando podemos consultar las siguientesdirecciones: n Como curiosidad, en las siguientes direcciones pod is encontrar un mismo programa ( Hello,world! y 99 Bottles of Beer ) escrito en centenares de lenguajes de programaci n diferentes: 10Un compilador es el programa encargado en traducir un programa escrito en lenguaje deprogramaci n de alto nivel (c digo fuente) al lenguaje que es capaz de ejecutar un ordenador(c digo m quina).

10 Para aprender m s podemos consultar las siguientes direcciones: rprete_inform tico Los Ejercicios de este documento se pueden resolver en el lenguaje de programaci n que se dar soluciones y alguna peque a explicaci n yo he escogido lenguaje Python. Para aprenderlopod is encontrar innumerables cursos de lenguaje Python en Internet. Ah van tres direcciones paracomenzar: Historia de Python: Curso de Python: Normas de estilo de programaci n: nPara trabajar vamos a utilizar un Entorno Integrado de Desarrollo (IDE), donde podemos escribirnuestro programa, compilarlo y ejecutarlo, recibir ayuda sobre errores y sintaxis, y ejecutarinstrucci n a instrucci n visualizando los valores que toman las variables ( depuraci n ).


Related search queries