Sie sind auf Seite 1von 13

1 Explique o defina los siguientes conceptos de acuerdo con lo desarrollado en clase.

- Lenguaje de programación: Un lenguaje de programación es un lenguaje formal diseñado


para realizar procesos que pueden ser llevados a cabo por máquinas como las computadoras.
Un lenguaje de programación proporciona los elementos de lenguaje necesarios que son
necesarios para traducir los pasos de un pseudocódigo en formato comprensible de la
máquina. En otras palabras, el lenguaje de programación proporciona el puente para hacer la
transición de pseudocódigo legible por humano a instrucciones legibles por máquina.

- Programar: Programar es el proceso de diseñar, codificar, depurar y mantener el código


fuente de programas computacionales. El código fuente es escrito en un lenguaje de
programación.

Según la Real Academia Española el término programar se entiende como: Elaborar programas
para la resolución de problemas mediante ordenadores.

- Algoritmo: un algoritmo es un conjunto pre-escrito de instrucciones o reglas bien definidas,


ordenadas y finitas que permiten realizar una actividad mediante pasos sucesivos que no
generen dudas a quien deba realizar dicha actividad. Dados un estado inicial y una entrada,
siguiendo los pasos sucesivos se llega a un estado final y se obtiene una solución (ambos
únicos).

Finito: Cantidad limitada de pasos o Instrucciones desde el inicio al final.

Ordenado: Uno antes que otro – es muy importante indicar bien el orden.

Claridad: No deben quedar dudas respecto de lo que se debe hacer.

Formas de representación de un algoritmo:

1- Diagrama de flujo: Los diagramas de flujo son descripciones gráficas de algoritmos;


usan símbolos conectados con flechas para indicar la secuencia de instrucciones. Por
su facilidad de lectura son usados como introducción a los algoritmos, descripción de
un lenguaje y descripción de procesos a personas ajenas a la computación.
Punto de Inicio y Fin únicos
Flechas que unen los símbolos del diagrama. Tienen dirección – indican el orden o secuencia.
Símbolos distintos para cada instrucción.
Instrucciones elementales:

Lectura: Captura desde el teclado y lo asigna a una variable.

Escritura: Muestra un mensaje y/o el valor de las variables en pantalla.

Asignación: Establece el valor de una variable. La variable toma el valor de una


constante o el resultado de una operación.

Operaciones aritméticas: Suma + | Resta - | Multiplicación * | División /


2- Pseudocódigo: Es una descripción de alto nivel de un algoritmo que emplea una
mezcla de lenguaje natural con algunas convenciones sintácticas propias de lenguajes
de programación, es comprensible sin necesidad de conocer o utilizar un entorno de
programación específico, y es a la vez suficientemente estructurado para que su
implementación se pueda hacer directamente a partir de él.

- Bandera: Una bandera es una variable a la cual se le asigna un valor en un momento y


posteriormente, según se compruebe que ocurra un determinado suceso se le asigna otro
valor. De esta manera es posible comprobar si el suceso ocurrió o no. Cuando la expresión de
control de la estructura use una bandera, deberá estar inicializada antes de ingresar al bloque
mientras y reasignada dentro del bloque en función de los cambios que se den el
procesamiento de la iteración.

- Centinela: es un valor que se utiliza para controlar iteraciones. Su valor se establece de tal
manera que no corresponda con un dato válido del conjunto a procesar.

- Acumulador: Se dice que una variable se usa como acumulador cuando en ella se suma en
cada iteración el valor de otra variable. DEBEN ser inicializadas en cero. El tipo de esta variable
depende del tipo de valores a sumar.

- Estructura SI: Permite mediante el análisis LOGICO de una condición determinar entre 2
caminos posibles a seguir. Se la conoce también como : Decisión simple – Bifurcación –
selección simple.

Esta formada por 4 partes:

Condición a Evaluar

Expresión lógica o booleana con 2 resultados posibles Verdadero o Falso.

Camino a recorrer si el resultado de la condición planteada es Verdadero

Camino a recorrer si el resultado de la condición es Falso se cumple la condición

Punto de unión - Final de la estructura – Final de los caminos.


Formato Pseudocódigo:

>Si Condición Entonces

> Escribir “Salida Si”;

>Sino

> Escribir Salida No;

>FinSi

Diagrama de Flujo:

Las condiciones a evaluar deben se booleanas o LÓGICAS, es decir que su resultado debe ser
verdadero o falso.

Esto no impide que puedan ser muy complejas combinando operadores (Igualdad == | Mayor
> | Menor < | Mayor o igual >= | Menor o igual <= | Y lógico Y [AND] | O lógico O [OR] | No
lógico ! [NOT] | Diferente o Desigual != ).

TENER EN CUENTA:

Seleccionar la alternativa más adecuada para la solución de su problema. No da igual una que
otra.

No ANIDAR muchos condicionales.

Siempre que un condicional tenga instrucciones en uno solo de los caminos , el que debe
quedar vacío es el camino de falsedad de la condición.

No Invierta la condición en el camino del FALSO , ya conoce el resultado.


4) Desarrolle: Tipos de datos – Definición de Variables – Estructuras iterativas – Usos
recomendados

Tipos de datos:

Cuando hablamos de tipos de datos nos referimos a la naturaleza de éstos.

Pueden ser : Numéricos - No numéricos – Alfanuméricos – Lógicos(booleanos)

υ Numéricos

υ Enteros (1, 5, -8 )

υ Reales (1.2 , 3987.61 , -97.32177)

υ Alfanuméricos υ Carácter (letras- símbolos)

υ Cadenas de caracteres (Palabras – Nombres – Descripciones)

υ Lógicos – Booleanos

υ Verdadero o Falso.

Definición de Variables:

Artilugio o recurso que permite establecer un nombre (o identificador) a una entidad que
representa un valor, por vez (dentro de un conjunto o rango de valores), y que puede ser
modificado o variado . Espacio en memoria , capaz de contener una cantidad de información
(según su tipo), asociada a un identificador o nombre simbólico el que se usa para referirse al
valor almacenado. El valor almacenado puede cambiar durante la ejecución del programa.

Algunos casos de variables de uso particular son contadores, acumuladores y banderas.

Es muy importante que el identificador que se le da a una variable sea representativo del uso
que se hace del dato almacenado en la misma.

Estructuras iterativas:

Existen instrucciones que permiten la repetición de la ejecución de un conjunto de pasos de


acuerdo al cumplimiento de alguna condición. Tales instrucciones reciben el nombre de
ESTRUCTURAS ITERATIVAS.

Estructura iterativa “MIENTRAS”:

Esta estructura repite un fragmento de código mientras una expresión lógica se cumple.

Esta estructura permite la repetición de ciertas instrucciones mientras que la condición


evaluada sea verdadera. Cuando la condición ya no se cumpla sale de la estructura sin ejecutar
las instrucciones del bucle. Las variables involucradas en la condición a evaluar deben ser
modificadas dentro del bucle, caso contrario el bucle se repetiría infinitamente.
• Por la metodología de trabajo de esta estructura, el fragmento de acciones asociado a la
misma debe alterar alguno de los operadores que intervienen en la expresión lógica.

• Es posible que el fragmento de código asociado a la estructura no se ejecute nunca.

• Esta estructura se recomienda para cuando la cantidad de iteraciones requeridas en un


algoritmo no es conocida y depende de una condición o valor de una variable.

Estructura “PARA”:

Para casos donde sabemos la cantidad de veces que se va a repetir el procesos usamos el la
estructura iterativa PARA. En la misma se incorporan bloques que permiten actuar sobre una
variable de control de modo de producir:

- Inicialización
- Evaluación de una condición
- Un incremento
• No plantea exclusivamente la idea de iteración teniendo un inicio y un final, en vez de esto
posibilita indicar un valor inicial, una condición y un incremento.

• La variable de control puede estar definida previamente, junto con el resto de las variables
(recomendable).

• Como en todas las estructuras, el bloque de órdenes asociado a la estructura debe estar
encerrado entre delimitadores (a excepción que se trate de una sola orden).
Estructura “REPETIR”:

• Siempre se ejecuta el conjunto de acciones asociado a la estructura, al menos la primera vez.

• Si la expresión lógica evaluada al final del bloque es verdadera, se inicia nuevamente la


ejecución del bloque de acciones asociadas a la estructura.

• Cuando el resultado de evaluar la expresión lógica es falso, se finalizan las iteraciones,


saliendo de la estructura.

La sintaxis de esta estructura es:

Repetir

[acción 1];

[acción 2];

. . . [acción n];

Hasta Que (exp lógica);

• El fragmento de código sobre el que la estructura se aplica es el delimitado por las palabras
clave Repetir y Hasta Que.

• En una primera iteración todo el código es ejecutado.

• Finalizada la ejecución de la acción n, es evaluada la expresión lógica asociada a la palabra


clave Hasta Que.

• Mientras las expresión lógica sea evaluada como verdadera, continuarán las iteraciones
comenzando otra vez desde la primer acción después de la palabra Repetir.

• Cuando la evaluación de la expresión lógica dé cómo resultado falso, se finalizarán las


iteraciones. Continuando con la siguiente instrucción después de la (exp lógica);

• De este comportamiento se desprende que de la misma manera que con la estructura


Mientras, el conjunto de acciones iterado debe modificar de alguna manera la expresión lógica
evaluada.

Usos recomendados de las estructuras iterativas:

υ Mientras (while )

υ Se recomienda su uso cuando no se conoce o no se puede determinar dentro del algoritmo


la cantidad de iteraciones necesarias. Usos de centinelas y banderas.

υ Para (for)

υ Se recomienda en los caos que se conoce, o el se puede determinar en el algoritmo, la


cantidad de iteraciones necesarias.

υ Repetir (do while)


υ Se recomienda su uso cuando no se conoce la cantidad de iteraciones pero se tiene certeza
de que al menos una es necesaria.

5)Desarrolle y Diferencie: Clases y objetos, Estado y Comportamiento, Encapsulamiento y


Ocultamiento – (agrego datos vs información)

Clase vs Objetos:

Clases

Una clase es un concepto de la POO que encapsula los datos y procesos requeridos para
describir el contenido y el comportamiento de alguna entidad del mundo real.

Pilar fundamental de la POO

Representan un conjunto de elementos que tienen características y comportamiento común.

Permiten abstraer los datos y sus operaciones , centrarse en el qué hacen y no en el cómo lo
hacen. CAJA NEGRA!!!

Encapsulación: Proteger u ocultar el estado, las modificaciones sólo pueden hacerse por las
operaciones especificadas.

“Plantilla o molde para la representación y creación de objetos”

Clases en POO

Las clases son declaraciones generales o abstracciones de un conjunto de elementos


agrupados por sus características comunes o similares. Esto quiere decir que la definición de
un objeto está dada por la clase. Cuando programamos un objeto y definimos sus
características y funcionalidades en realidad lo que estamos haciendo es programar una clase.
υ Propiedades en clases

Las propiedades o atributos son las características de los objetos. Cuando definimos una
propiedad normalmente especificamos su nombre y su tipo. Nos podemos hacer a la idea de
que las propiedades son algo así como variables donde almacenamos datos relacionados con
los objetos.

υ Métodos en las clases

Son las funcionalidades asociadas a los objetos. Cuando estamos programando las clases las
llamamos métodos. Los métodos son algoritmos que resuelven cada una de las partes del
problema asociado a la clase.

Objetos

Los objetos son instancias de una clase específica, con valores específicos en sus atributos. Los
objetos representan en el sistema los elementos del conjunto modelado por una Clase que les
dio origen.

Los algoritmos que procesan los datos se llaman operaciones o métodos


Cada una de las operaciones que se encapsula mediante un método u operación proporciona
una representación de uno de los comportamientos del objeto.

Cada objeto tiene Identidad, Estado y Comportamiento.

Utilizan mensajes para recibir y contestar llamados a sus métodos. Esta es la forma de
comunicación entre objetos.

Objetos en POO

Los objetos son ejemplares de una clase cualquiera. Un objeto representa un elemento del
sistema real en el sistema informático. Ese objeto pertenece a una clase que lo representa, a
partir de la cual se instanció.

Todos los objetos tienen propiedades que representan sus atributos, por ejemplo un producto
de supermercado puede tener las siguientes propiedades, Código de producto, descripción ,
precio, tamaño, medida ,etc.

Estados en objetos:

El estado está definido por el conjunto de valores concretos que toman las propiedades. Por
ejemplo, cuando tenemos un coche la propiedad color tomará un valor en concreto, como
blanco o gris metalizado, u otro. Así también la propiedad tipo de combustible puede ser nafta
o gasoil. Para acceder a un estado de un objeto para ver su valor o cambiarlo se utiliza el
operador punto.

Mensajes entre objetos

Un mensaje en un objeto es la acción de efectuar una llamada a un método. Por ejemplo,


cuando le decimos a un objeto coche que se ponga en marcha estamos pasándole el mensaje
ponerse en marcha. υPara mandar mensajes a los objetos utilizamos el operador punto,
seguido del método que deseamos invocar.

υ miCoche.ponerseEnMarcha()

υEn este ejemplo pasamos el mensaje ponerseEnMarcha(). Hay que colocar paréntesis y
dentro irían los parámetros

Nótese la diferencia entre propiedad y método, la invocación a un método lleva paréntesis


con los argumentos, la propiedad se asigna.

Las clases definen las características de los objetos, y son estos objetos los que utilizamos. Sin
embargo, existen clases que por sus características se utilizan directamente sin crear un objeto
de su tipo.
Estado vs Comportamiento:

El estado esta definido por el conjunto de valores concretos que toman las propiedades.

Para acceder a un estado de un objeto para ver su valor o cambiarlo se utiliza el operador
punto.

El comportamiento de un objeto está directamente relacionado con su funcionalidad y


determina las operaciones que este puede realizar o a las que puede responder ante
mensajes enviados por otros objetos. La funcionalidad de un objeto está determinada,
primariamente, por su responsabilidad.

Una tarea fundamental a la hora de diseñar una aplicación informática es definir el


comportamiento que tendrán los objetos de las clases involucradas en la aplicación,
asociando la funcionalidad requerida por la aplicación a las clases adecuadas.

El comportamiento de un objeto puede modificar el estado de este. Cuando una operación


de un objeto modifica su estado se dice que esta tiene "efecto colateral".

El estado

Está compuesto de datos, será uno o varios atributos a los que se habrán asignado unos
valores concretos (datos).

El comportamiento

Está definido por los procedimientos o métodos con que puede operar dicho objeto, es decir,
qué operaciones se pueden realizar con él.
Encapsulamiento Vs Ocultamiento:

El encapsulamiento consiste en unir en la clase las características y comportamientos, esto


es, las variables y métodos.

El ocultamiento es la capacidad de ocultar los detalles internos del comportamiento de una


clase y exponer sólo los detalles que sean necesarios para el resto del sistema.

El ocultamiento permite 2 cosas: restringir y controlar el uso de la clase. Restringir porque


habrá cierto comportamiento privado de la clase que no podrá ser accedido por otras clases.
Y controlar porque daremos ciertos mecanismos para modificar el estado de nuestra clase y
es en estos mecanismos donde se validarán que algunas condiciones se cumplan.

Datos Vs Información:

Es importante hacer una distinción entre estos términos. En algunos casos suelen usarse como
sinónimos y en otros componen definiciones cíclicas o recursivas de ambos términos. Nos
referimos a dato cuando hablemos del conjunto de valores que sirve como entrada a un
proceso. Hablaremos de información para referirnos al resultado de un proceso.

2 Para cada una de las siguientes afirmaciones indique si son verdaderas o falsas , para las
que considere falsas justifique porque lo son.

# Afirmación V/F

1 El término informática es una contracción de las palabra inglesas information y matic que

significa máquina de información

2 Un lenguaje de alto nivel permite mayor flexibilidad y abstracción, porque está más cerca
del lenguaje de la máquina que del humano.

3 Se denomina variable a un elemento cuyo valor no puede ser alterado

4 Los diagramas de flujo son un lenguaje de programación de bajo nivel.

5 En una estructura Mientras el bloque asociado a la condición se ejecuta siempre al menos

una vez.

6 Un contador es una variable de tipo float cuyo incremento depende de los valores que tome

la variable asociada.

7 Una estructura SI permite la ejecución simultanea de las 2 ramas asociadas a la condición

evaluada .

8 En caso de que se requiera la ejecución de código en una sola rama de una estructura SI, esta

debe ser la asociada al no cumplimiento de la condición.

9 Cuando se usa una estructura MIENTRAS no se debe alterar el valor de la/s variable/s

analizada/s en la/s condición/es debido a que ello implicaría salir de dicha estructura.

10 En un diagrama de flujo el símbolo de forma circular se usa para representar la lectura de

un valor ingresado por el usuario.

6) Indique si las siguientes afirmaciones son verdaderas (V) o falsas (F). En las que considere
falsas justifique y explique por qué lo son:

# Afirmación V/F

1 La estructura SI permite la ejecución secuenciada por 2 caminos distintos del diagrama de


flujo.

2 La estructura Mientras es llamada de bifurcación dado que a partir de ella el algoritmo


permite

recorrer dos caminos paralelos.

3 Se denomina variable a un elemento cuyo valor no puede ser alterado

4 El objetivo de la programación es elaborar programas para la resolución de problemas


mediante

ordenadores.

5 La claridad es uno de los detalles a tener en cuenta porque facilita el trabajo del
programador,

tanto en la fase de creación como en las fases posteriores.

6 La estructura PARA es recomendada cuando no se conoce la cantidad de iteraciones a


ejecutar.

7 Un algoritmo es un conjunto de pasos que debe tener un inicio único, aunque puede tener
muchos puntos de finalización.

8 Los algoritmos deben ser representados en diagramas de flujo; usando símbolos conectados
con

flechas para indicar la secuencia de instrucciones.

9 Cuando se utiliza la estructura SI es preferible indicar las acciones a ejecutar solo por la rama

asociada al no cumplimiento de la condición lógica.

10 En P.O.O. las CLASES surgen de encontrar los adjetivos asociados a las entidades requeridas.

1 El pseudo-código permite a las personas escribir algoritmos que puedan ser interpretados
directamente por el procesador de la computadora.

2 Un lenguaje de alto nivel permite mayor flexibilidad y abstracción, porque está más cerca del
lenguaje de la máquina que del humano.

3 Los identificadores de variables pueden ser definidos por el programados como


combinaciones de caracteres de cualquier clase sin restricciones.

4 Se dice que una instrucción de un lenguaje de programación es una palabra reservada de


dicho lenguaje

5 La claridad es uno de los detalles a tener en cuenta porque facilita el trabajo del
programador, tanto en la fase de creación como en las fases posteriores.

6 En P.O.O un objeto se compara a un molde a partir del cual se especifican todas las
propiedades de interés.

7 La estructura SI es también denominada de Iterativa dado que a partir de ella es posible


seleccionar si un conjunto de instrucciones se ejecuta una o más veces.

8 Los algoritmos deben ser escritos en un lenguaje de programación de alto nivel para que se
puedan ejecutar en una computadora.

9 Cuando se utiliza la estructura MIENTRAS se deben usan centinelas para controlar la


condición lógica a evaluar.

10 La estructura SI es llamada condicional dado que a partir de ella la ejecución del algoritmo
estará determinada por el resultado de la expresión lógica evaluada.

Das könnte Ihnen auch gefallen