You are on page 1of 30

INFORMATICA

Conceptos Fundamentales de
Programacin
Manuel Cruz
Diego Pico
John Triana
Manuel Cruz

Variable
Las Variables son la Columna
Vertebral de cualquier Programa, por
consiguiente
son
la
Columna
Vertebral de Cualquier Lenguaje de
Programacin.
Una variable es una posicin de
memoria con un nombre que puede
guardar distintos valores.

Diferentes Tipos de
Variables
Las Variables se pueden dividir, segn el
tipo de dato:

Dato
Dato
Dato
Dato
Dato

Lgico
Entero
Coma Flotante
Carcter
Cadena

Funciones
En programacin, una funcin es un grupo de
instrucciones con un objetivo en particular y que
se ejecuta al ser llamada. Una funcin puede
llamarse mltiples veces e incluso llamarse a s
misma (funcin recurrente). Las funciones
pueden recibir datos desde afuera al ser
llamadas a travs de los parmetros y deben
entregar un resultado. Se diferencian de los
procedimientos porque estos no devuelven un
resultado.

Ejemplo de Funcin Bsica:


nombre funcin ()
{
secuencia de sentencias
}
Una sentencia especifica una accin a
llevar a cabo por el programa.
Las sentencias son las partes del
programa que realizan las operaciones.
Las sentencias se encuentran dentro de
las funciones.

En programacin, una sentencia es una


lnea de cdigo en algn lenguaje. Un
programa est constituido por mltiples
sentencias de programacin, lo que es
llamado cdigo fuente. Un algoritmo de
programacin est constituido por una
o ms sentencias de programacin.
Las sentencias de programacin suelen
tener
algn carcter que determina
su final, por lo general es un punto y
coma (;) o un punto final (.).

En los lenguajes de programacin las


sentencias estn numeradas, de esta
manera, si existe algn error de sintaxis
(o alguna advertencia), el compilador
entrega un mensaje con el nmero de
sentencia donde fue encontrado. Una
sentencia de programacin tiene una
sintaxis y una semntica. La sintaxis
est determinada por el lenguaje de
programacin y, si existe algn error, el
compilador suele detectarlo.

Operadores
Son elementos que relacionan de
forma diferente, los valores de una o
mas variables y/o constantes. Es
decir, los operadores nos permiten
manipular valores.
Aritmtico
s
Relacional
Tipos de Operadores
es
Lgicos

Operadores

Aritmticos:

Los operadores aritmticos permiten la


realizacin de operaciones matemticas
con
los
valores
(variables
y
constantes).
Los operadores aritmticos pueden ser
utilizados con tipos de datos enteros o
reales. Si ambos son enteros, el
resultado es entero; si alguno de ellos
es real, el resultado es real.

Operadores Aritmticos
+ Suma
- Resta
* Multiplicacin
/ Divisin
mod Modulo (residuo de la divisin
entera)

7+2=9
30/2=15
7+2*5=17

Operadores Relacionales:
Se utilizan para establecer una relacin
entre dos valores. Luego compara estos
valores entre si y esta comparacin
produce un resultado de certeza o falsedad
(verdadero o falso).
Los operadores relacionales comparan
valores del mismo tipo (numricos o
cadenas). Estos tienen el mismo nivel de
prioridad en su evaluacin.
Los operadores relacinales tiene menor
prioridad que los aritmticos.

Tipos de operadores Relacionales


> Mayor que
< Menor que
> = Mayor o igual que
< = Menor o igual que
< > Diferente
= Igual

si a=3 b=4 c=5


Verdadero

a + b>c

Operadores Lgicos:
Estos operadores se utilizan para
establecer relaciones entre valores
lgicos. Estos valores pueden ser
resultado de una expresin
relacional.
Tipos de operadores Lgicos
And Y
Or O
Not Negacin

Sintaxis y Semntica
La sintaxis de un lenguaje de
programacin est relacionada con la
forma de los programas, por ejemplo,
como es que las expresiones, comandos,
declaraciones, etc. son puestos juntos en
un programa.
La semntica de un lenguaje de
programacin est relacionada con el
significado de los programas; por
ejemplo, cmo ellos se comportarn
cuando se ejecutan en una
computadora.

La sintaxis de un lenguaje influye en


cmo los programas son escritos por
el programador, ledos por otro
programador y traducidos por el
computador. La semntica de un
lenguaje determina como los
programas son compuestos por el
programador, entendidos por otros
programadores e interpretados por el
computador. La sintaxis es
importante; pero la semntica es
ms importante an.

Correccin
Como podemos saber si un Programa
de Software es Correcto, una forma
sencilla es verificar que el programa
es correcto para la obtencin de
resultados que ya conocemos.
Pero para probar que es Correcto en
general debemos analizar el
programa en general lo cual implica
estas tres razones.

1.Necesitamos un modelo
matemtico de las operaciones del
lenguaje de programacin, para
saber que es lo que debe hacer. Este
modelo es llamado la semntica del
lenguaje de programacin.
2.Necesitamos definir que queremos
que haga el programa, usualmente
esta es la definicin matemtica, de
las entradas que necesita el
programa y los resultados que
calcula, esto es llamado las

3.Usar tcnicas matemticas, para,


realizar razonamiento acerca del
programa, debemos demostrar que
el programa cumple con las
especificaciones.

Programacin de Bajo Nivel


La programacin de nivel bajo es cuando un sistema
en realidad le asigna una tarea a un procesador que
est listo para trabajar. En otras palabras, en este tipo
de programacin, un sistema le asigna un componente
especfico o un procesador interno a una tarea
especfica en base a su nivel de prioridad, el ancho de
banda necesario y el disponible. La programacin de
bajo nivel determina qu tareas sern entregadas y en
qu orden. Estas tareas ya han sido aprobadas para
trabajar, as que el nivel de programacin bajo es ms
detallista que los otros niveles.

Programacin de Nivel
Intermedio
programacin de nivel medio no aplica

La
a
todos los sistemas operativos. Determina si
algunas tareas o pedidos deben ser colocados
temporalmente en una memoria secundaria
del sistema y ser quitadas de la memoria
principal hasta que sta tenga el ancho de
banda suficiente para realizar dicha tarea o
pedido. Este tipo de programacin colocar la
tarea u objeto nuevamente en la memoria
principal del sistema para llevarla a cabo en el
momento adecuado.

Programacin de Alto Nivel


La programacin de alto nivel es cuando un sistema
de computadora escoge qu trabajos, tareas o pedidos
procesar. En este modelo, las tareas o pedidos son
priorizados y programados para completar en base a
la cantidad mxima de trabajo o tareas que el sistema
puede manejar de una sola vez. Las tareas para las
que el sistema no tiene el ancho de banda suficiente
para realizar son programadas para ms adelante,
cuando las otras tareas estn completas y liberen el
ancho de banda necesario para las tareas especficas.
La programacin de alto nivel tambin se llama
algunas veces "programacin a largo plazo".

Programacin de Alto Orden


La programacin de alto orden, es la
capacidad de utilizar funciones como
valores, as, que se pueden pasar
funciones como argumentos de otras
funciones, y las funciones pueden ser el
valor de retorno de otras funciones.
Este estilo de programacin se utiliza
sobre todo en la programacin funcional ,
pero tambin puede ser muy til en la
programacin orientada a objetos.

Un buen ejemplo de esto es, el


lenguaje de scripts de Ruby , que
combina todas las ventajas de la
programacin orientada a objetos
pura y programacin de alto orden.
Otros ejemplos de lenguajes de
programacin que soportan esta
caracterstica son C#, Java, Perl,
Phyton, Prolog.

Ejemplo Cdigo Alto Orden JavaScript


function element(tag) {
this.stag='<'+tag+'>';
this.etag='</'+tag.replace(/s.*/,'')+'>';
var me=this;
this.wrap=function(x) {
return me.stag+x+me.etag;
}
}
P=new element('P');
// this still works:
document.write(P.wrap('This is a paragraph.'));
// and now this works too:
document.write(arr.reduce(P.wrap));

Concurrencia o Computacin
Concurrente
Es la simultaneidad en la ejecucin de mltiples
tareas interactivas. Estas tareas pueden ser un
conjunto de procesos o hilos de ejecucin
creados por un nico programa. Las tareas se
pueden ejecutar en una sola unidad central de
proceso
(multiprogramacin),
en
varios
procesadores o en una red de computadores
distribuidos. La programacin concurrente est
relacionada con la programacin paralela, pero
enfatiza ms la interaccin entre tareas.

Estado o Estado Explicito


Es la caracterstica de las funciones
para disponer de una memoria
variable en funcin del tiempo y de
los procesos en ejecucin, para saber
cuantas veces dicha funcin ha sido
ejecutada.

Algoritmo No Determinstico
Es la caracterstica que posee un programa
que combina la computacin concurrente
con el estado explicito.
Es decir el programa mientras se encuentra
en ejecucin puede decidir diferentes
alternativas de ejecucin del cdigo, flujo
del programa en determinados puntos.
un algoritmo no determinista es un
algoritmo que con la misma entrada ofrece
muchos posibles resultados. No se puede
saber de antemano cul ser el resultado
de la ejecucin de un algoritmo no
determinista

los algoritmos no deterministas emplean


modelos de computacin tales como la
Mquina de Turing probabilstica, que no
son deterministas. Se considera entonces
que los algoritmos no deterministas son
un caso especial.

You might also like