jueves, 16 de febrero de 2017

Cuestionario de programación

1.- ¿Qué es un lenguaje de programación?
Podemos definir lenguaje de programación como un conjunto de caracteres y reglas

que permiten crear un programa , para introducir y tratar la información en un ordenador.

Son lenguajes artificiales creados con el objetivo de conseguir la comunicación entre el humano y

la máquina, o entre máquinas.

2.- ¿Qué es programar?

Programar consiste en crear una serie de órdenes dirigidas a un ordenador o

dispositivo para que lleve a cabo las tareas que le encomendemos, con el objetivo de

solucionar un determinado problema.

3.- Criterios de clasificación de los lenguajes de programación

  1. Clasificación según el nivel de abstracción (Lenguajes de Programación de Bajo Nivel (Lenguaje ensamblador)Lenguajes de Programación de Alto Nivel Compiladores e intérpretes),
  2. Clasificación según el propósito de creación(Lenguajes de Propósito General y Lenguajes de Propósito Específico),
  3. Clasificación según su paradigma de programación(Lenguajes Imperativos, Lenguajes Declarativos, Lenguajes Funcionales, Lenguajes de Lógicos, Lenguajes Orientados a Objetos).


4.- ¿Qué es un lenguaje imperativo?
Lenguajes imperativos son a aquellos en los cuales se le ordena a la computadora cómo realizar una tarea siguiendo una serie de pasos o instrucciones, por ejemplo:
Paso 1, solicitar número, paso 2, multiplicar número por dos,  paso 3, imprimir resultado de la operación. ... etc
5.- ¿Qué es un lenguaje orientado a objetos?
Crean un sistema de clases y objetos siguiendo el esquema del mundo real para definir los objetos, acciones y forma de comunican entre objetos.

6.- En un lenguaje orientado a objetos, ¿qué entiendes por DATOS Y

MÉTODOS?
Un objeto es una entidad provista de un conjunto de propiedades o atributos ("datos") y de comportamiento o funcionalidad ("métodos").

7.- Definir código fuente y código objeto

  • El código fuente (source code) consiste en uno o más archivos que contienen las instrucciones de programación con las cuales un desarrollador de software ha creado determinado programa o aplicación.
  • El  código objeto resulta de la compilación del código fuente. Puede ser en lenguaje máquina o bytecode, y puede distribuirse en varios archivos que corresponden a cada código fuente compilado. Luego un enlazador (linker) se encarga de juntar todos los archivos de código objeto para obtener el programa ejecutable.

8.- ¿Qué significa ABRIR y LIBERAR un programa?

  • “abrir el programa” , acceder al código fuente concreto de un programa significa acceder a todo lo creado, o, como se suele decir, 
  •  “liberar” el código cuando se va acompartir el programa en forma de texto, para que cualquier persona lo analice, modifique, lo comparta o lo copie. Cuando se libera un programa este queda expuesto, por lo que queda en estado de inestabilidad.


9.- Definir algoritmo y enunciar sus características básicas

  • algoritmo,  la secuencia de pasos organizados a seguir para resolver un problema. Cualquier algoritmo debe tener las siguientes características:

- La descripción de cada paso no debe llevar a ambigüedades, los pasos son absolutamente explícitos y no inducen a error.
- El número de pasos debe ser finito, de forma que el algoritmo se pueda ejecutar en un
tiempo finito.

10.- ¿Qué papel desempeñan los compiladores e intérpretes?.

  • Compiladores, son programas especiales que procesan las instrucciones escritas en un lenguaje de programación de alto nivel y las convierte a lenguaje de máquina. El compilador traduce el programa completo a código máquina antes de empezar a ejecutarlo.




  • Intérpretes, 
  • es un programa que, en tiempo de ejecución, transcribe a lenguaje 
  • máquina y ejecuta una por una, en la secuencia descrita en el programa fuente, el conjunto de 
  • instrucciones del mismo (sin generar un programa objeto).

  • 11.- ¿Cómo se representan los algoritmos?
    Hay distintas formas de escribir un algoritmo, bien usando un lenguaje específico de descripción de algoritmos (pseudocódigo), bien mediante representaciones gráficas (organigramas o diagramas de flujo).
    12.- Realizar un diagrama de bloques con las fases de creación de un programa


    13.- Ventajas e inconvenientes de los compiladores



  • Las ventajas del utilizar un compilador son:

    1. El programa ejecutable no incluye el código fuente, por lo tanto, el código compilado es más seguro.
    2.  Un programa compilado se ejecutan más rápidamente que un programa que está siendo interpretado ya que la traducción se realiza directamente a código máquina.
    Las desventajas de utilizar un compilador son:


    1. El código objeto necesita crearse para obtener el archivo ejecutable final, y si el programa es muy largo, el proceso de compilación puede ser muy lento.
    2.  El código fuente debe estar libre de errores para que el archivo ejecutable se genere.
    3.  El archivo ejecutable generado por el compilador solo funcionará en el sistema operativo en el que fue creado.

    14.- Ventajas e inconvenientes de los intérpretes
    Las ventajas del utilizar un intérprete son:


    1.  Al ejecutarse línea a línea, resulta ser más fácil de depurar y comprobar errores.
    2.  Si el programa es muy largo, un intérprete resulta es más rápido que un compilador porque no tiene que traducir todo el programa para ejecutarlo.

    Las desventajas de utilizar un intérprete son:

    1.  El código fuente se requiere para poder ejecutar un programa
    2.  Los intérpretes son más lentos que los programas compilados o ejecutables.


    15.- ¿Qué significa depurar y mantener un programa?


    • El proceso de depuración: consiste en localizar los errores y corregirlos en caso de que estos existan. Si no existen errores, puede entenderse la depuración como una etapa de refinamiento en la que se ajustan detalles para optimizar el desempeño del programa.

  • Mantener un programa: Se refiere a las actualizaciones que deban aplicarse al programa cuando           las circunstancias así lo requieran. Este programa deberá ser susceptible de ser modificado para           adecuarlo a nuevas condiciones de operación.
  • 16. Durante este curso vamos a programar en processing y Python. ¿Dentro

    de qué grupo los clasificarías según cada uno de los tres criterios que se

    exponen en los apuntes?
    En lenguajes de Programación de alto nivel.

    17. En cursos anteriores has programado con Scratch. ¿Dentro de qué grupo

    lo clasificarías según cada uno de los tres criterios que se exponen en los
    En lenguajes de Programación de alto nivel.

    miércoles, 15 de febrero de 2017

    Python Programación

    # Calculo area de un circulo
    Pi= 3.14159
    Radio= input ("Introduce un numero")
    Area= Pi*Radio**2
    print "El área de un círculo es %10.4f " % (Area)

    #Conversor Euros
    euros=input ("introduce un número: ")
    valor_euro=166.386
    resultado= euros*valor_euro
    print "Resultado en pesetas es %.2f " % (resultado)

    # Ale nació en 1999"
    edad= input ("aNac ")
    anyo= input ("aAct ")
    a=input ("introduce un numero: ")
    b=input ("introduce un numero: ")
    x= a-b
    print "Ale nació en 1999, tiene 17 años "


    #Ejemplo nota

    a=input ("introducir el primer numeros")
    b=input ("introducir el segundo numeros")
    c=input ("introducir el tercer numeros")

    if a<4 and b<4 and c<4:
        nota_final=0
    elif (a>4 or b>4 or c>4) and not (a>4 and b>4 and c>4):
        nota_final=2
    elif a>4 and b>4 and c>4:
        nota_final= 0.3*a + 0.2*b + 0.5*c
    else:
       print "error"
    print "nota final = ",nota_final

    #mayor3
    dato1= input("introducir dato1")
    dato2= input("introducir dato2")
    dato3= input("introducir dato3")
    if dato1>dato2:
        if dato1>dato3:
           print "dato1 es el mayor"
        else:
           print "dato3 es el mayor"
    else:
        if dato2>dato3:
           print "dato2 es el mayor"
        else:
            print"dato3 es el mayor"
     

    #nota nominal
    nota= input ("introducir numero")
    if nota>=9:
        print "sobresaliente"
    elif nota>=7:
        print "notable"
    elif nota>=6:
        print "bien"
    elif nota>=5:
        print "suficiente"
    else:
        print "insuficiente"


    # Programa multiplicar
    a=input ("introduce un numero: ")
    b=input ("introduce un numero: ")
    m= a*b
    print "El resultado ",m
             

    #Hola Pedro, tiene 18 años"
    nombre= raw_input ("nomUsu ")
    edad= input ("edadUsu ")
    print "Hola", nombre, "tienes " ,edad, "años "