Warning: The magic method Slickr_Flickr_Plugin::__wakeup() must have public visibility in /home/kenbauer/public_kenscourses/tc101fall2015/wp-content/plugins/slickr-flickr/classes/class-plugin.php on line 152
victor hugo fernandez angel’s Articles at TC101 Fall 2015
Introduction to Programming Python and C++

Author Archives: victor hugo fernandez angel

Mastery # 06 TC1017

Cómo instalar Linux en nuestra computadora 
Pasos a seguir:
1. Necesitamos instalar un programa para maquinas virtuales, como sugerencia podemos usarOracle VM VirtualBox, para descargarlo tenemos que entrar a la siguiente liga: https://www.virtualbox.org/wiki/Downloads
2. Una vez que instalamos el programa, tenemos que descargar la imagen de linux del siguiente enlace:  https://www.virtualbox.org/wiki/
3. Si ya contamos con los dos pasos anteriores, ahora tenemos que crear una nueva maquina virtual, buscaremos el icono de nueva, el cual se encuentra en la parte superior izquierda.
4. Luego de seleccionar el icono, le asiganaremos un nombre, ademas seleccionaremos el sistema operativo que deseamos instalar. 
5. Enseguida debemos ingresar cuanta memoria ram le otorgaremos a esta maquina virtual, aquí depende de cada quien la memoria que deseen emplear.
6. En la nueva ventana debemos seleccionar la opción de crear un disco duro virtual ahora.
7. -Debemos tener en cuenta donde guardaremos el nuevo sistema operativo, si desea crear el sistema en un disco duro externo debemos seleccionar la opción de VMDK, pero si queremos hacerlo en el disco duro de nuestra maquina seleccionaremos la opción VDI.
8.Después seleccionaremos la opción de reservado dinámicamente, para que la instalación no demore demasiado.

Mastery #29 TC1017

Creación y uso de matrices en C++

La sintaxis de una matriz es C++ es la siguiente:
1
int matrix[rows][cols];
En este ejemplo int es el tipo de dato, matrix es el nombre del todo el conjunto de datos y debo de especificar el numero de filas (rows) y columnas (cols).
Las matrices también pueden ser de distintos tipos de datos como char, float, double, etc. Las matrices en C++ se almacenan al igual que los vectores en posiciones consecutivas de memoria.
Podríamos imaginarnos que una matriz es como un tablero, pero en realidad el manejo es como su definición lo indica, un vector de vectores, es decir, los vectores están uno detrás del otro juntos.
Para acceder a los elementos de la matriz es utilizando su nombre e indicando los 2 subíndices que van en los corchetes.
Si coloco int matriz[2][3] = 10; estoy asignando al cuarto elemento de la tercera fila el valor 10.
Es importante tener en cuenta que tanto filas como columnas se enumeran a partir de 0. Para recorrer una matriz es buena idea hacer uso de un bucle. En este caso usando 2 for:
2
3
4
5
for(int i = 0; i
  for(int j = 0; j
    matrix[i][j] = i % j;
  }
}

Mastery # 21 TC1017

Uso de recursion en algoritmos repetitivos
Se dice que una función es recursiva cuando se define en función de si misma.
No todas la funciones pueden llamarse a si mismas, sino que deben estar diseñadas especialmente para que sean recursivas, de otro modo podrían conducir a bucles infinitos, o a que el programa termine inadecuadamente.
Tampoco todos los lenguajes de programación permiten usar recursividad.
C++ permite la recursividad. Cada vez que se llama a una función, se crea un juego de variables locales, de este modo, si la función hace una llamada a si misma, se guardan sus variables y parámetros, usando la pila, y la nueva instancia de la función trabajará con su propia copia de las variables locales. Cuando esta segunda instancia de la función retorna, recupera las variables y los parámetros de la pila y continua la ejecución en el punto en que había sido llamada.
Un ejemplo muy clásico de la recursividad es cuando se quiere crear un programa de gdc (greatest común divisor), en lo cual se puede llamar a si mismo para volver a hacer el mismo procedimiento una y otra vez hasta que una condición sea rota y pueda salir de la recursividad, así, te puede dar los resultados de manera que corresponda a lo que uno quiere como podemos ver en la foto.

Mastery # 27 TC1017

validar input de usuarios en c++
c++ nos da la opción de poder validad datos alfanuméricos o lo que comunmente le podemos llamar strings, esto es util cuando nuestras opciones dependen de una palabra, como por ejemplo, en caso de que se pida al usuario el hacer o no hacer una acción, el mismo puede responder con un si o un no.
Principalmente, estos inputs se comportan como cualquier número, dando como resultado, que el manejo de los mismos no sea difícil. a continuación podremos ver un ejemplo de su uso.
Ejemplo:

Mastery # 14 TC1017

 Uso de Librerías
Creación y uso de librerías creadas por uno mismo.
Una de las herramientas que te deja usar los programas de programación es la facilidad de poder usar tus propias librerías estas librerías se pueden crear para definir variables con un significado mas especifico.
uno de los casos mas usados en la declaración de librerías es el  una librería que te permite utilizar el nombre de una variable y darle usos especificos ya sean de sistema, secuenciales y condicionales.
Ejemplo:
  PURPLE “33[35m”
  BLUE “33[34m”
  WHITE “33[37m”
  BLU “33[36m”
  YELLOW “33[33m”

Mastery # 3 TC1017

Como iniciar en blogg, twitter y GitHub.En este video explico como registrarse e iniciar una cuenta en un blog, Twitter y GitHubVideo: https://www.youtube.com/watch?v=rwquifilj7U&feature=youtu.be

Mastery #30 TC1017

El sistema de datos por herramientas es un software libre, libremente disponible para la realización de gráficos 3D por computadora, procesamiento de imagen y visualización. VTK consiste en una biblioteca de clases de C++ y varias capas de interfaz interpretadas como Tcl/Tk, Java, y Python.
Kitware, cuyo equipo creó y sigue ampliando el Kit de herramientas, ofrece apoyo profesional y servicios de consultoría para VTK. VTK soporta una amplia variedad de algoritmos de visualización como: escalar vector Euclides, tensor, textura y métodos volumétricos; y avanzadas técnicas de modelado como: modelado implícito, reducción de polígonos, suavizado de malla (mesh smoothing), corte, contorneado y triangulación de Delaunay. VTK tiene un amplio marco de visualización de la información, cuenta con un conjunto de widgets de interacción 3D, soporta el procesamiento en paralelo y se integra con diversas bases de datos de herramientas GUI como Qt y Tk. VTK es multiplataforma y se ejecuta en plataformas Linux, Windows, Mac y Unix. VTK también incluye soporte auxiliar de widgets de interacción 3D, anotación bi y tridimensional y computación paralela. En su núcleo VTK es implementado como un conjunto de herramientas de C++, exigiedo a los usuarios crear aplicaciones combinado varios objetos en una aplicación. El sistema también soporta ajuste automatizado del núcleo de C++ en Python, Java y Tcl, para que también se puedan escribir aplicaciones VTK utilizando estos lenguajes de programación interpretados.

Mastery #20 TC1017

Uso del loop forVideo: https://youtu.be/9SJN5Ya-TXg

Mastery # 15 TC1017

 Uso del condicional ifhttps://www.youtube.com/watch?v=U5rePg0P-5g&feature=youtu.be

Mastery #4 TC1017

Blogg y GitHub
Como subir archivos o códigos en GitHub y Como publicar en el blog.

What should you work on?

Week #12 and more partial exams for you.

For this week's readings:
C++ (TC1017) should either be looking at support for your project, ImageMagick C++ libraries are a good start.
Python (TC1014) should be finishing chapter 11 (Dictionaries).