Repositorio de mi curso de Algoritmos Computacionales en la Facultad de Ciencias (UNAM).
- Introducción a la programación
- Paradigma imperativo de la programación (video) (cuaderno interactivo)
- Lenguajes de programación (video) (cuaderno interactivo)
- Legalidad y ética en la programación (video)
- Herramientas de programación (video 1) (video 2) (video 3) (cuaderno interactivo)
- Algoritmos, diagramas de flujo y pseudocódigo (video) (cuaderno interactivo)
- Estructura básica de la programación
- Operadores aritméticos y tipos de datos numéricos (video) (cuaderno interactivo)
- Sistemas numéricos de punto flotante y error numérico (video) (cuaderno interactivo)
- Tipos de dato de texto y arreglos (video) (cuaderno interactivo)
- Variables, constantes y funciones (video) (cuaderno interactivo)
- Operaciones lógicas y valores Booleanos (video) (cuaderno interactivo)
- Declaraciones condicionales y control de flujo (video) (cuaderno interactivo)
- Bucles iterativos y recursivos (video) (cuaderno interactivo)
- Estructura de la programación modular (video) (cuaderno interactivo)
- Representaciones visuales
- Graficación y animación de funciones (cuaderno interactivo)
- Visualización de datos (cuaderno interactivo)
- Manipulación de imágenes digitales (cuaderno interactivo)
- Métodos numéricos
- Estabilidad y convergencia (cuaderno interactivo)
- Solución de sistemas lineales de ecuaciones algebraicas a través del método de eliminación Gaussiana (cuaderno interactivo)
- Aproximación de raíces a través del método de Newton (cuaderno interactivo)
- Solución de ecuaciones diferenciales ordinarias a través del método de Euler (cuaderno interactivo)
- Caminante aleatorio (cuaderno interactivo)
Para poder ejecutar los notebooks localmente en tu computadora es necesario instalar Julia, Jupyter, Git, IJulia y Pluto:
- Julia es el lenguaje de programación en el cual están escritos la mayoría de los programas del repositorio,
- Jupyter es un entorno cómodo para aprender a programar con el cual podremos abrir los notebooks (cuadernos interactivos) de Jupyter del repositorio (archivos con formato
.ipynb
), - Git nos servirá para "clonar" (es decir, descargar) el repositorio y actualizarlo cuando sea necesario (en el caso particular de sistemas operativos basados en Arch Linux, también nos ayudará a poder instalar los programas anteriores),
- IJulia nos permitirá ejecutar código de Julia en los notebooks de Jupyter y
- Pluto es un entorno reactivo con el cual podremos abrir y ejecutar los notebooks de Pluto del repositorio (archivos con formato
.jl
, el formato estándar de los programas escritos en Julia).
A continuación, detallamos los pasos que debes seguir en distintos sistemas operativos para poder ejecutar los notebooks del curso localmente en tu computadora.
Si utilizas alguna otra distribución de Linux u otro sistema operativo distinto a los mencionados a continuación y necesitas soporte técnico, contacta al ayudante del curso.
- Abre una terminal virtual y actualiza las bases de datos de paquetes de Debian con el administrador de paquetes Aptitude corriendo el comando
sudo apt update && sudo apt -y upgrade
. - Instala
julia
ygit
con el comandosudo apt-get install julia git
. - Para instalar
jupyter
, instala primero Python3 ypip
con el comandoapt-get install python3 python3-pip python3-dev -y
; después de que haya terminado, ejecuta el comandopip install jupyter
.
Nota
-
No es posible actualizar versiones de Python2 a Python3; por ende, aunque ya tengas instalado Python2, tendrás que instalar Python3 para poder instalar Jupyter.
-
Si tu computadora tiene ChromeOS, puedes activar las opciones de desarrollador y luego activar Linux. De esta manera, una vez que tengas acceso a una terminal virtual de Linux, podrás seguir las instrucciones para distribuciones basadas en Debian para instalar Julia, Jupyter y Git.
-
...en distribuciones basadas en Arch (Manjaro/Endeavour/Arch)
- Abre una terminal virtual y actualiza las bases de datos de paquetes de Arch con el administrador de paquetes
pacman
corriendo el comandosudo pacman -Syyu
antes de instalar cualquier cosa. - Instala
git
con el comandosudo pacman -S git
. - Ejecuta los comandos
cd ~
ygit clone https://aur.archlinux.org/yay.git
; después de que el segundo comando haya terminado, ejecuta el comandocd yay
. - Instala el programa auxiliar
yay
con el comandomakepkg -si
; después de que haya terminado, ejecuta el comandocd ~
, y luego el comandorm -rf yay/
. - Actualiza las bases de datos de los paquetes del AUR con
yay
corriendo el comandoyay -Syyu
antes de instalar cualquiera de los programas siguientes. - Instala
julia
yjupyter
con el comandoyay -S julia-bin jupyter
.
- ...en MacOS
- Abre una terminal e instala el administrador de paquetes hombrew corriendo el comando
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
. - Instala
jupyter
ygit
con el comandobrew install jupyter git
. - Instala
julia
con el comandobrew install --cask julia
.
- Abre una terminal virtual y ejecuta el comando
julia
-el prompt de la terminal virtual debería cambiar al textojulia>
en verde. - Teclea
]
-el prompt ahora debería cambiar a algo en azul que digapkg>
; después, escribeadd IJulia Pluto
y tecleaENTER
.
Decargar y actualizar actualizar el repositorio del curso (para cualquier distribución GNU/Linux y MacOS)
- Para descargar todo el repositorio (en su forma actual) a la carpeta "home" de tu computadora, abre una terminal virtual y ejecuta los comandos
cd ~
y despuésgit clone https://github.com/dabnciencias/AC
. Esto creará una carpetaAC
con todos los contenidos del repositorio. - Para más adelante actualizar el repositorio (a como se encuentra en esta página de GitHub), abre una terminal virtual y ejecuta los comandos
cd ~/AC
y despuésgit pull
.
- Para ejecutar notebooks de Jupyter (archivos del repositorio con formato .ipynb) localmente, abre una terminal virtual y ejecuta el comando
jupyter-notebook
. - Para ejecutar notebooks de Pluto (archivos del repositorio con formato .jl, el formato estándar de código de Julia) localmente, abre una terminal virtual y ejecuta el comando
julia
; después, ejecuta el comandousing Pluto & Pluto.run()
.
- Descarga Julia utilizando el instalador desde su página oficial. Selecciona
64-bit (installer)
en la sección de Windows. - Al instalar, asegúrate de marcar la casilla 'Add Julia to PATH'.
- Da click en el ícono de la aplicación de Julia que se creó en tu escritorio para abrir una terminal, deberás ver que el prompt de la terminal virtual tiene el texto
julia>
en color verde. - Teclea
]
para ingresar al modo Pkg (Package), el prompt ahora debería cambiar a algo en azul que digapkg>
; después, escribeadd IJulia Pluto
y tecleaENTER
para instalar las paqueterías correspondientes. Para salir del modo Pkg, usa la teclaDEL
. - Para ejecutar notebooks de Pluto usa la terminal de julia (asegurate que el prompt sea
julia>
en color verde) y ejecuta el comandousing Pluto & Pluto.run()
, esto deberá crear una ventana emergente en tu navegador con la interfaz de Pluto.
- Instala Python3 utilizando el instalador desde su página oficial descargando el siguiente archivo.
- Al instalar asegurate de marcar la casilla 'Add Python 3 to PATH'.
- Da click en la aplicación de Power Shell para abrir una terminal virtual en Windows.
- Utiliza pip para instalar
jupyter
copiando y pegando el siguiente comando en tu terminal de PowerShell:python -m pip install jupyter
. - Para abrir un notebook de Jupyter utiliza el siguiente comando en la terminal de PowerShell:
jupyter notebook
y espera a que se abra una ventana emergente en tu navegador. - Para terminar la sesión de Jupyter, cierra la ventana correspondiente de tu navegador y usa
Ctrl-C
dos veces en la terminal de PowerShell para terminar el proceso.
- Crea una cuenta en la página oficial de GitHub usando tu correo @ciencias.
- Descarga Git desde la página oficial de Git (download for Windows).
- Ejecuta el instalador para Windows descargado (archivo con extensión
.exe
). - Acepta los términos y revisa las configuraciones durante la instalación. Se recomienda que selecciones las configuraciones predeterminadas.
- Selecciona tu IDE de preferencia para integrar Git. Si no tienes preferencia, elige cualquiera.
- Para clonar el repositorio del curso, abre Git Bash desde tu buscador de Windows,
navega hasta la carpeta donde quieres clonar el repositorio y ejecuta el siguiente comando:
git clone https://github.com/dabnciencias/AC
.
- Google Colab
Si no cuentas con una computadora personal o tu computadora no tiene los suficientes recursos suficientes para soportar la instalación, puedes usar google colab como alternativa.
Google Colab es un servicio que ofrece notebooks de Jupyter de manera gratuita con recursos de cómputo totalmente gestionados en la nube sin necesidad de instalar nada en tu computadora local.
Los notebooks están desarrollados para ejecutar en Python por default, sin embargo se pueden hacer manipulaciones para utilizar otros programas como julia.
Para utilizarlo, ve directamente a la página oficial de Google Colab, una vez allí verás un recuadro que te pedirá seleccionar un archivo para abrir, selecciona la ventana Google Drive y da click en 'New notebook' para crear un notebook en blanco. Nota: Los archivos que crees de esta manera se almacenarán en una carpeta llamada 'Colab Notebooks' en la página principal de tu carpeta de Google Drive.
También puedes abrir los notebooks del repositorio del curso yendo a la pestaña de 'GitHub', copiando y pegando la siguiente liga https://github.com/dabnciencias/AC.git
y seleccionando el archivo que quieras abrir.
En la siguiente liga puedes encontrar un ejemplo de como usar julia desde google colab.
- Anaconda
Una forma más sencilla (pero menos recomendada por el peso de descarga) para hacer la instalación es utilizando Anaconda Navigator. Puedes descargar Anaconda directamente desde su página web. Si decides utilizar esta opción de descarga y necesitas soporte técnico, contacta directamente al ayudante del curso.