Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


Fundamentos de Programación: Introducción a la Programación en Python, Diapositivas de Programación Informática

Fundamentos de programación en Python

Tipo: Diapositivas

2016/2017

Subido el 03/01/2023

steven_camo
steven_camo 🇪🇨

15 documentos

1 / 28

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
Fundamentos de programación
Miguel Realpe
Miguel Realpe
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c

Vista previa parcial del texto

¡Descarga Fundamentos de Programación: Introducción a la Programación en Python y más Diapositivas en PDF de Programación Informática solo en Docsity!

Fundamentos de programación

Miguel Realpe Miguel Realpe

[email protected] [email protected]

Horario Paralelo 14 Lunes y Miércoles 15H30 – 17H

Textos guías [1] Van Rossum, G. (2015). El Tutorial de Python. Traducido y empaquetado por la comunidad de Python Argentina. http://docs.python.org.ar/tutorial/pdfs/TutorialPython3.pdf [2] Rodríguez, L. Python Programación, Versión 2.6 – 2017. http://blog.espol.edu.ec/icm00794/files/2017/02/PYTHON_PROGRAMACION_V 2_6.pdf [3] Downey, A., Elkner, J., & Meyers, C. (2012). How to think like a computer scientist: learning with python. Green Tea Press, Wellesley, Massachusetts. http://www.ict.ru.ac.za/Resources/cspw/thinkcspy3/thinkcspy3.pdf [4] Sheppard, K. (2014). Introduction to Python for econometrics, statistics and data analysis. Self-published, University of Oxford, versión, 2.2. https://www.kevinsheppard.com/images/0/09/Python_introduction.pdf

Contenido General

  1. Introducción a la programación
  2. Variables y tipos de datos
  3. Estructuras de Control
  4. Listas
  5. Arreglos N-dimensionales
  6. Funciones
  7. Colecciones
  8. Archivos: Entrada/Salida
  9. Procesamiento de datos

¿Por qué aprender a programar? Entre otras cosas me permite: Automatizar tareas repetitivas y ser más productivo Crear herramientas que otros usan (trabajo de programador) Manejar alta densidad de datos Comprender con facilidad código de libre acceso creado por otras personas Otras razones: Fomenta la creatividad Crear cosas de interés personal Resolver problemas

Algunos conceptos básicos La informática es la rama del conocimiento que nos ayuda a resolver problemas por medio del uso del computador Los problemas que se pueden resolver con el computador están íntimamente ligados a la automatización de actividades realizadas por los seres humanos Ejemplos: Llevar las cuentas Organizar las reuniones Enviar y recibir mensajes Buscar información

Algunos conceptos básicos La definicion mas basica de un programa es que se trata de una secuencia de sentencias de Python que han sido creadas para hacer algo Incluso nuestro sencillo script es un programa Es un programa de una sola lınea y no particularmente util pero en su mas estricta definicion es un programa Python Deberıa ser mas sencillo entender que es un programa si pensasemos en un problema que pudiera resolverse mediante programacion, y a continuacion estudiasemos como serıa el programa que resolviera ese problema Imaginemos que estas haciendo una investigacion sobre estadıstica social en los mensajes de Facebook, y estas interesado en saber cual es la palabra que se usa con mayor frecuencia en una serie de mensajes Podrıas imprimir la cadena de mensajes de Facebook y estudiar detenidamente el texto buscando la palabra mas comun pero eso te llevarıa mucho tiempo y probablemente cometerıas errores Serıa mas inteligente escribir un programa en Python para realizar la tarea rapidamente y con precision y ası poder pasar el fin de semana haciendo algo divertido Cuántas palabras tiene el texto anterior? Que letra se repite más veces? dic={} for letra in texto.split(): if letra in dic: dic[letra]+= 1 else : dic[letra] = 1 v = list(dic.values()) k = list(dic.keys()) k[v.index(max(v))] len(texto.split())

El computador es un dispositivo capaz de realizar cálculos y tomar decisiones lógicas mucho más rápido que los humanos. El computador procesa datos bajo el control de instrucciones secuenciales a los que llamamos programas. Estos programas se escriben en lenguajes de programación. Algunos conceptos básicos

Lenguajes de Programación Para comunicarnos con los computadores existen varias alternativas: Lenguaje de Máquina (Bits) Lenguaje de Bajo Nivel (Ensamblador) Lenguaje de Alto Nivel (Python, Java, C…) Máquina Alto nivel Lenguaje Natural Lenguaje del Computador Bajo Nivel El lenguaje de máquina es poco práctico. El lenguaje de máquina es poco práctico. El ensamblador no es mucho mejor. Se escriben muchas líneas para programas relativamente sencillos. El ensamblador no es mucho mejor. Se escriben muchas líneas para programas relativamente sencillos. Parecidos al inglés con notación matemática. Se programa mucho más rápido. Parecidos al inglés con notación matemática. Se programa mucho más rápido.

Compilación / Interpretación El paso de traducción de lenguaje natural a lenguaje de máquina debe ocurrir en algún momento. Dependiendo de cuando, se llama: Compilación: Una sola vez, al terminar de escribir el programa. Interpretación: Cada vez que se ejecuta el programa, durante la ejecución.

Ejemplos C Python

Metodología para la resolución de un problema usando un computador ANÁLISIS DEL PROBLEMA DISEÑO DE LA SOLUCIÓN IMPLEMENTACIÓN

  • Qué debe hacer el programa
  • Definir y entender el problema
  • (^) Conocer las variables de entrada, los procesos y las salidas - (^) Cómo va a resolver el problema el programa - (^) Divide y vencerás - Implementar la solución en un lenguaje formal que el computador entienda REVISIÓN
  • (^) La solución es correcta?
  • Evaluar valores críticos
  • (^) Hay una manera más sencilla de obtenerla?

Algoritmo (una receta de cocina)

  • Podemos considerarlo como una receta de cocina, donde los ingredientes son la entradas al algoritmo.
  • La receta nos indica una serie de pasos finitos que se deben realizar para obtener el resultado, que en este caso es el plato final preparado.
  • Puede existir más de una solución al mismo problema (varias maneras de cocinar el mismo plato), sin embargo el resultado final es el mismo, con sus pequeñas variantes propias de la forma de resolverlo (el mismo plato puede tener mejor sabor si se lo prepara de una forma que de otra).

Características de los algoritmos Los algoritmos deben ser:

  • (^) Fáciles de construir y entender: instrucciones simples, claras y precisas
  • (^) Exactos: con suficientes instrucciones para resolver el problema
  • (^) Finitos: tener principio y fin
  • (^) Reproducibles: deben entregar los mismos resultados si se utilizan los mismos datos de entrada