Vous êtes sur la page 1sur 31

Pontificia Universidad Católica Madre y Maestra

Vicerrectoría Académica
Facultad Ciencias de las Ingenierías
Ingeniería en Sistemas y Computación - ISC

PRINCIPIOS DE
PROGRAMACIÓN
Tema 2 – Elementos Fundamentales de los
Lenguajes de Programación

22-ene.-18
Santiago, Rep. Dom.
LENGUAJES DE PROGRAMACIÓN
Concepto de Programación

Programar
Es la forma de dar órdenes a la
computadora. Se programa a través
de los lenguajes de programación.

La programación es la transmisión de
instrucciones a la computadora, a
través de un lenguaje de
programación.
LENGUAJES DE PROGRAMACIÓN
Evolución de los Lenguajes de Programación
Bajo Nivel
• Son dependientes de la máquina, están
diseñados para ejecutarse en una
determinada computadora.

Alto Nivel
• Son independientes de la máquina y se
pueden utilizar en una variedad de
computadoras. Los lenguajes de más alto nivel
no ofrecen necesariamente mayores
capacidades de programación, pero sí
ofrecen una interacción
programador/computadora más avanzada.
LENGUAJES DE PROGRAMACIÓN
Intérpretes y Compiladores

Compilación

La compilación es el proceso de traducción de programas fuente a


programas objeto, el cual ha sido ya traducido a código máquina.

Como parte del proceso de compilación, viene luego un programa


llamado montador, enlazador o linker, el cual analiza las
dependencias con otras librerías para unirlas con el programa objeto
ya compilado y así producir un archivo único ejecutable.
ELEMENTOS BÁSICOS DE LOS
LENGUAJES DE PROGRAMACIÓN
Definición y Características

¿Qué es el Lenguaje C?

Es un lenguaje de programación creado en el 1972 por Dennis M.


Ritchie en los laboratorios Bell como evolución del anterior lenguaje B
(de Ken Thomson), a su vez basado en BCPL (de Martin Richards).

Salió al público de manera oficial a través de la publicación de “The


C Programming Language”, de Brian Kernighan y Dennis Ritchie.
ELEMENTOS BÁSICOS DE LOS
LENGUAJES DE PROGRAMACIÓN
Palabras reservadas más comunes

break double int struct


case else long switch
char enum return typedef
const float short union
continue for signed unsigned
do if sizeof void
while
ELEMENTOS BÁSICOS DE LOS
LENGUAJES DE PROGRAMACIÓN
Tipos de Datos

Tipos de Datos

char short
Un caracter (letra) Cantidad entera pequeña

Ej.: ‘a’, ‘z’, ‘?’, ‘-’ Ej.: -15

Memoria: 1 byte Memoria: 2 bytes

Rango: -128..127 Rango: -32768…32767


ELEMENTOS BÁSICOS DE LOS
LENGUAJES DE PROGRAMACIÓN
Tipos de Datos

Tipos de Datos

int unsigned int


Cantidad entera Cantidad entera pequeña

Ej.: 5, 6, 3872 Ej.: 4047565324

Memoria: 4 bytes Memoria: 4 bytes

Rango: -
Rango: 0…4294967296
2147483648…2147483647
ELEMENTOS BÁSICOS DE LOS
LENGUAJES DE PROGRAMACIÓN
Tipos de Datos

Tipos de Datos

long float
Cantidad entera grande Punto flotante

Ej.: 15 Ej.: 5.4, 3.22, 7.6543

Memoria: 8 bytes Memoria: 4 bytes

Rango: -
Rango: 1.175494351e–38…3.402823466e38
9223372036854775808…9223372036854775807
ELEMENTOS BÁSICOS DE LOS
LENGUAJES DE PROGRAMACIÓN
Tipos de Datos

Tipos de Datos

double long double


Doble precisión de punto Doble precisión de punto
flotante. flotante.

Ej.: 6.1e12, 1.7e-19 Ej.: 6.1e12, 1.7e-19

Memoria: 8 bytes Memoria: 16 bytes

Rango: 2.2250738585072014e–
Rango: ¿?
308…1.7976931348623158e308
ELEMENTOS BÁSICOS DE LOS
LENGUAJES DE PROGRAMACIÓN
Operadores

Operadores Unarios
Si la variable i es de tipo entero (int) con valor de 5:

• -i = • i++ ó ++i • i-- ó --i =


=

Cambio de Incremento Decremendo


Signo en uno en uno

++ y – pueden ser utilizados prefijo o


posfijo. Si es prefijo, la variable se
incrementa/decrementa primero y luego de
utiliza. En posfijo, se utiliza primero y en la
siguiente sentencia se aplican los cambios.
ELEMENTOS BÁSICOS DE LOS
LENGUAJES DE PROGRAMACIÓN
Operadores

Operadores Unarios
Si la variable i es de tipo entero (int) con valor de 5:

• -i = -5 • i++ ó ++i • i-- ó --i = 4


=6

Cambio de Incremento Decremendo


Signo en uno en uno

++ y – pueden ser utilizados prefijo o


posfijo. Si es prefijo, la variable se
incrementa/decrementa primero y luego de
utiliza. En posfijo, se utiliza primero y en la
siguiente sentencia se aplican los cambios.
ELEMENTOS BÁSICOS DE LOS
LENGUAJES DE PROGRAMACIÓN
Operadores

En el lenguaje C, se utilizan “operadores” para representar


operaciones aritméticas. Por ejemplo, el operador + hace que se
sumen los valores situados a su izquierda y derecha. Si a y b son
variables del tipo entero (int) con valores 10 y 3 respectivamente:

• a+b = • a-b = • a*b =

Suma Resta Multiplicación

• a/b= • a%b=

Módulo
División
(residuo)
ELEMENTOS BÁSICOS DE LOS
LENGUAJES DE PROGRAMACIÓN
Operadores

En el lenguaje C, se utilizan “operadores” para representar


operaciones aritméticas. Por ejemplo, el operador + hace que se
sumen los valores situados a su izquierda y derecha. Si a y b son
variables del tipo entero (int) con valores 10 y 3 respectivamente:

• a+b = • a-b = 7 • a*b = 30


13

Suma Resta Multiplicación

• a/b=3 • a%b=1

Módulo
División
(residuo)
ELEMENTOS BÁSICOS DE LOS
LENGUAJES DE PROGRAMACIÓN
Operadores

Supongamos ahora que v1 y v2 son variables flotantes (float) cuyos


valores son 12.5 y 2.0, respectivamente. Veamos los resultados de las
siguientes expresiones:

• v1+v2 • v1-v2 = • v1*v2 =


=
Suma Resta Multiplicación

• v1/v2= • v1%v2 El operador % (módulo, residuo)


= es entre enteros y no está
definido para valores decimales.
Módulo
División
(residuo)
ELEMENTOS BÁSICOS DE LOS
LENGUAJES DE PROGRAMACIÓN
Operadores

Supongamos ahora que v1 y v2 son variables flotantes (float) cuyos


valores son 12.5 y 2.0, respectivamente. Veamos los resultados de las
siguientes expresiones:

• v1+v2 • v1-v2 = • v1*v2 =


= 14.5 10.5 25.0

Suma Resta Multiplicación

• v1/v2= • v1%v2 El operador % (módulo, residuo)


6.25 =Error! es entre enteros y no está
definido para valores decimales.
Módulo
División
(residuo)
ELEMENTOS BÁSICOS DE LOS
LENGUAJES DE PROGRAMACIÓN
Operadores

Aquí, supongamos que c1 y c2 son tipo caracter con los valores ‘P’ y
‘T’, respectivamente. Veamos los valores de las siguientes
operaciones:

Expresión Valor
c1
c1+c2
c1+c2+5
c1+c2+’5’
c1%c2 Fíjese que el caracter ‘P’ tiene el
valor 80 como decimal, según la
tabla ASCII y ‘T’ tiene el 84 y
‘5’ tiene el valor 53.
ELEMENTOS BÁSICOS DE LOS
LENGUAJES DE PROGRAMACIÓN
Operadores

Aquí, supongamos que c1 y c2 son tipo caracter con los valores ‘P’ y
‘T’, respectivamente. Veamos los valores de las siguientes
operaciones:

Expresión Valor
c1 80
c1+c2 164
c1+c2+5 169
c1+c2+’5’ 217
c1%c2 80 Fíjese que el caracter ‘P’ tiene el
valor 80 como decimal, según la
tabla ASCII y ‘T’ tiene el 84 y
‘5’ tiene el valor 53.
ELEMENTOS BÁSICOS DE LOS
LENGUAJES DE PROGRAMACIÓN
Operadores

Supóngase que i es un entero cuyo valor es 7, f es un flotante cuyo


valor es 5.5 y c es un caracter que representa el caracter ‘w’.
Veamos los resultados de las siguientes expresiones:

Expresión Valor Tipo


i+f
i+c
i + c – ‘0’
(i + c) – (2 * f / 5)
‘0’ = 48
‘w’ = 119
ELEMENTOS BÁSICOS DE LOS
LENGUAJES DE PROGRAMACIÓN
Operadores

Supóngase que i es un entero cuyo valor es 7, f es un flotante cuyo


valor es 5.5 y c es un caracter que representa el caracter ‘w’.
Veamos los resultados de las siguientes expresiones:

Expresión Valor Tipo


i+f 12.5 float
i+c 126 int
i + c – ‘0’ 78 int
(i + c) – (2 * f / 5) 123.8 float
‘0’ = 48
‘w’ = 119
ELEMENTOS BÁSICOS DE LOS
LENGUAJES DE PROGRAMACIÓN
Operadores
El valor de una expresión puede ser convertido a un tipo de dato en
específico si así se desea. Esto se conoce como conversión de tipo.
Simplemente la expresión (o variable) debe estar precedida por el tipo
de dato deseado encerrado entre paréntesis. En algunos casos es
obligatorio hacer la conversión de tipo.

Supongamos que i es una variable tipo entero cuyo valor es 7 y f es una


variable flotante con un valor de 8.5.

La expresión: (i + f) % 4 es inválida, porque el primer operando es


flotante.
Pero si la expresión fuese ((int) (i+f)) % 4, se está convirtiendo el resultado
de (i+f) a entero.

Si queremos hacer una conversión de tipo la forma es: (tipo)expresion.


ELEMENTOS BÁSICOS DE LOS
LENGUAJES DE PROGRAMACIÓN
Operadores

Debemos tener claro que al hacer una conversión de tipo los datos
se trabajan de acuerdo al tipo asignado en la conversión.

Si por ejemplo tenemos i como entero con el valor de 2, x como


flotante con el valor de 3.12, al evaluar: i+x tenemos 2+3.12, pero al
evaluar i+(int)x tenemos 2+3.

Al evaluar (float)i+x tenemos 2.0+3.12, además i/x es 2/3.12 = 0 (toma


el tipo del numerador por defecto) y (float)i/x es 2.0 /3.12=0.641025
ELEMENTOS BÁSICOS DE LOS
LENGUAJES DE PROGRAMACIÓN
Operadores
Operadores Relacionales y Lógicos

Operado Significado
r
< Menor que
<= Menor o igual que
> Mayor que
>= Mayor o igual que
== Igual a
En el lenguaje C no existe el tipo
!= Diferente a de dato booleano propiamente,
! Negación pero C define como verdadero todo
&& Y lógico valor diferente de cero y como
falso el valor cero.
|| O lógico
ELEMENTOS BÁSICOS DE LOS
LENGUAJES DE PROGRAMACIÓN
Operadores

Supongamos que i, j y k son variables tipo entero con los valores 1, 2


y 3 respectivamente. Veamos los valores de las siguientes
expresiones:

Expresión Interpretación Valor


i<j Verdadero
(i+j) >= k Verdadero
(j+k) > (i+5) Falso
k != 3 Falso
j == 2 Verdadero
!(j==2) Falso
(i>=5) || (j%3) Verdadero
(i<=2) && (j%2) Falso
ELEMENTOS BÁSICOS DE LOS
LENGUAJES DE PROGRAMACIÓN
Operadores

Supongamos que i, j y k son variables tipo entero con los valores 1, 2


y 3 respectivamente. Veamos los valores de las siguientes
expresiones:

Expresión Interpretación Valor


i<j Verdadero 1
(i+j) >= k Verdadero 1
(j+k) > (i+5) Falso 0
k != 3 Falso 0
j == 2 Verdadero 1
!(j==2) Falso 0
(i>=5) || (j%3) Verdadero 1
(i<=2) && (j%2) Falso 0
ELEMENTOS BÁSICOS DE LOS
LENGUAJES DE PROGRAMACIÓN
Operadores
Operadores de Asignación

Operador Significado
= Asigna el valor de la derecha a la variable que está a la
izquierda.
+= Asigna el valor de la variable de la izquierda más el valor
de la derecha a la variable de la izquierda.
-= Asigna el valor de la variable de la izquierda menos el
valor de la derecha a la variable de la izquierda.
*= Asigna el valor de la variable de la izquierda por el valor
de la derecha a la variable de la izquierda.
/= Asigna el valor de la variable de la izquierda entre el
valor de la derecha a la variable de la izquierda.
%= Asigna el residuo de la división de la variable de la
izquierda con el valor de la derecha a la variable de la
izquierda.
ELEMENTOS BÁSICOS DE LOS
LENGUAJES DE PROGRAMACIÓN
Operadores

Supongamos que i, j y k son variables tipo entero con los valores 1, 2


y 3 respectivamente. Veamos los valores de las siguientes
expresiones:
Expresión Valor de k
k=i+j
k=i–j
k += i+j
k *= i+j
k /= i+j
k %= j
ELEMENTOS BÁSICOS DE LOS
LENGUAJES DE PROGRAMACIÓN
Operadores

Supongamos que i, j y k son variables tipo entero con los valores 1, 2


y 3 respectivamente. Veamos los valores de las siguientes
expresiones:
Expresión Valor de k
k=i+j 3
k=i–j -1
k += i+j 6
k *= i+j 9
k /= i+j 1
k %= j 1
ELEMENTOS BÁSICOS DE LOS
LENGUAJES DE PROGRAMACIÓN
Operadores
Operador Ternario ?:
Generalmente se usa con un operador de asignación, pero se
puede usar en otros casos.

Uso: Expresión ? VERDADERO : FALSE

Si la expresión es verdadera retorna lo que está después del ? (signo


de interrogación), y si no, lo que está después del : (dos puntos).

Expresión Valor de
Si i, j y k son enteros con los
k
valores 5, 6 y 8 respectivamente.
k = i>5 ? 6 : 4
k += i<7 ? 9 : 1
k -= i%2 ? 5 : 6
ELEMENTOS BÁSICOS DE LOS
LENGUAJES DE PROGRAMACIÓN
Operadores
Operador Ternario ?:
Generalmente se usa con un operador de asignación, pero se
puede usar en otros casos.

Uso: Expresión ? VERDADERO : FALSE

Si la expresión es verdadera retorna lo que está después del ? (signo


de interrogación), y si no, lo que está después del : (dos puntos).

Expresión Valor de
Si i, j y k son enteros con los
k
valores 5, 6 y 8 respectivamente.
k = i>5 ? 6 : 4 4
k += i<7 ? 9 : 1 17
k -= i%2 ? 5 : 6 3
ELEMENTOS BÁSICOS DE LOS
LENGUAJES DE PROGRAMACIÓN
Operadores
Orden de Precedencia de Evaluación
(de mayor a menor)

Categorías Operadores Asociaci


ón
Unarios - ++ -- ! DI
Multiplicación, División y */% ID
Módulo
Suma y Sustracción +- ID
Relacionales < <= > >= ID
Igualdad == != ID
Y lógico && ID
O lógico || ID
Asignación = += -= *= /= %= DI

Vous aimerez peut-être aussi