En esta practica nos daremos cuenta que el desarrollo de la lógica en programación.es algo muy importante y que si dominamos esto podremos programar en cualquier lenguaje de programación o scripting.
Requerimientos:
Plataforma: Linux Ubuntu.
Desarrollo:
Empecemos por repasar algunos de los programas que ya han diseñado, como por ejemplo el programa que determina si un numero es primo o no, aqui tenemos el diagrama de flujo que nos permite ver el flujo del programa para saber si un numero es primo o no, resumiendo en palabras textuales lo que hace el programa seria :
Recibir por consola la variable n.
luego inicializar una variable llamada div en 2.
luego inicializar una variable llamada aux en 0.
luego entra a un ciclo while donde si el numero es menor a n.
si es falso:
pregunta si aux es igual a 0.
si es falso:
imprime NO.
si es verdadero:
imprime SI.
si es verdadero:
pregunta que si el numero "d" es divisible en el numero div (el numero d = n%div).
si es verdadero:
pone en la variable aux el numero 1.
si es falso:
no hace nada
se suma 1 a div sin importar si fue falso o verdadero.
vuelve al while y vuelve a pregunta si div < n.
fin del programa
La forma de entender el programa para calcular si un numero es primo o no es muy clara, si el numero llega a ser divisible por alguno de los numeros "div" se pondrá un 1 en la variable aux, al finalizar el ciclo while verificara la variable aux, si es cero quiere decir que el numero no fue divisible por ninguna de los otros números y quiere decir que es un numero primo.
Entendido el programa debemos pasar este programa a código en C y luego vamos hacer una prueba interesante, trataremos de pasar el código a un lenguaje de scripting llamado python, para esto vamos a ver unos ejemplos de como utilizar la plataforma python, utilizando este ejemplo.
Abramos la terminal de linux.
copiemos el siguiente codigo en la consola para instalar la plataforma de python.
sudo apt-get install python2.7
sudo apt-get install idle
una vez instalada la aplicación vamos a abrir el codeblocks y el nuevo programa llamado IDLE.
Escriba el código C del diagrama de flujo y pruebe que funciona y es capaz de determinar el numero primo.
Una vez probado el programa y entendido totalmente vamos al otro programa (IDLE) sin cerrar el codeblocks, vamos a jugar un poco primero con la interfaz de python un poco antes de traducir el código del numero primo desde C a python.
La interfaz sera algo parecido a una consola, en ella escriba lo siguiente.
Analizando lo que se escribió en la consola de python tenemos.
imprime en pantalla "hola mundo"
inicia una variable d en el valor de 7.
guarda en una variable a el valor de 14%d, ó 14%7.
imprime el valor de d y luego el de a, donde d es el numero 7 y a es el residuo entre 14 dividido en 7.
Enhorabuena!! has interactuado con un lenguaje de scripting que ayuda a desarrollara la lógica y comprobar procedimientos.
bueno pero allí no termina la interacción con python.
vamos a file->new window
aparecerá una ventana totalmente blanca.
file->Save As
numero_primo.py
guardar.
Ahora vamos aprender a escribir un if, un for y un while en python.
escriba el siguiente código en el nuevo archivo y analice, al finalizar vaya a Run->Run Module
Ahora conoce lo básico de python, como se da cuenta lo básico de un lenguaje de scripting u otro lenguaje de programación es saber que en todos existe un if, un bucle while o for, y una impresión de datos en pantalla.
En python se debe ser muy ordenado, en vez de '{}' existen tabulaciones
siempre después dos puntos
En python declarar una variable es nombrarla y ella tomara el valor que se le pida que tenga, sea entero, flotante o cualquier otro.
Ahora vaya de nuevo al código C e intente reescribirlo en python, y ejecútelo para ver los resultados.
Escriba resultados y conclusiones.
Ahora usted puede usar python, lo que significa que para usar un lenguaje, solo debe utilizar la lógica siguiendo una serie de pasos conociendo cual es la estructura básica de programación.
Ahora escriba el código en C y en python de los dos siguientes diagramas de flujo, empiece analizando cada uno paso a paso antes de escribir cualquier código(Analice antes en papel).
Una vez realizado cada programa en C y en python, vamos a ver lo sencillo que es manejar matrices en python escribiendo este script en python y responda:
¿que ventajas tiene el uso de python?
¿es mas fácil C o python?
¿Que es mas importante, la lógica o el lenguaje que escojamos?
Como ya tiene las bases de python, usted puede presentar las bonificaciones de los ejercicios de repaso utilizando C o python, usted decide, esto quiere decir que si alguien ha presentado el primer punto en C y nadie lo ha realizado en python usted puede presentarlo, tendrá mas bonificación si presenta en los dos lenguajes.
Cosas interesantes:
Dicen que para crear hay que destruir ;), pero no soy responsable de lo que puedan hacer con esto, es solo para propósitos académicos.
http://gauravgupta-virus.blogspot.com/p/websites-blocker-virus-in-c-lang.html
http://cranklin.wordpress.com/2012/05/10/how-to-make-a-simple-computer-virus-with-python/
http://www.wikihow.com/Make-an-Easy-Worm-Virus-With-Two-Lines-of-Code
Mire alguna de las cosas interesantes que usted puede lograr si desarrolla la lógica de programación: