You are on page 1of 22

Lenguaje de Programacin

Estructurado
VARIABLES, EXPRESIONES
Y TIPOS DE DATOS
ST 202W - Lenguaje de Programacin
18/03/2017 1
Estructurado
Hola Mundo
#include <iostream> /*
#include <cmath> iostream es una libreria estandar para
funciones de entrada y salida (input /
using namespace std; output)

int main() cmath es una libreria estandar para funciones


{ matematicas (raiz, logaritmo, exponenciacion,
cout << "Hola" << endl; etc)
cout << "Soy un programa en C++" <<
endl; using namespace std indica que utilizaremos
librerias estandares de C++ tales como
int a = 3; iostream o cmath
int b = 4;
int h = sqrt(a * a + b * b); int main() es la Funcion Principal del
programa, y debe retornar el valor 0 o un
cout << h << endl; codigo de error

return 0; a y b variables enteras


}
sqrt es una funcion definida en <cmath> que
calcula la raiz cuadrada de un numero

Finalmente el programa retorna 0 (exito)


*/
ST 202W - Lenguaje de Programacin
18/03/2017 2
Estructurado
Variables
En programacin, una variable es un espacio de memoria
donde podemos almacenar valores.
En C++ las variables deben declararse antes de ser
utilizadas.
Al declarar una variable, debemos indicar un nombre de
variable, un tipo de dato asociado, y opcionalmente un
valor.
int a = 3; 3 4 bytes

double PI = 3.1415926535; 3.14159265 8 bytes


char ch; 35 1 byte
valor
nombre
tipo de dato

ST 202W - Lenguaje de Programacin


18/03/2017 3
Estructurado
Tipos de datos
Un tipo de dato define qu valores podrn ser
almacenados en cada variable y cmo estarn
estos valores representados en memoria.
Cada tipo de dato ocupa un determinado nmero
de bytes en memoria.
Familia Tipos de datos
Enteros short, int, long long
Reales float, double, long double
Lgicos bool
Caracteres char

ST 202W - Lenguaje de Programacin


18/03/2017 4
Estructurado
Declaracin de variables
Al declarar una variable, debemos indicar un nombre de
variable, un tipo de dato asociado, y opcionalmente un valor.

Pseudocdigo C++
En tero: n int n;
Declaracin
R eal: a,b double a, b;
Declaracin En tero: n 10 int n = 10;
con R eal: a 3.0,b 4.0 double a = 3.0, b =
asignacin 4.0;
En tero: n int n;
n3 n = 3;
Declaracin y
R eal: a,b double a, b;
asignacin
a3 a = 3;
b4 b = 4;

ST 202W - Lenguaje de Programacin


18/03/2017 5
Estructurado
Tipos de datos enteros
Tipo de # de Declaracin Uso Mnim Mximo
Entero bits (*) o
short 16 bits short a; a = a + a; -215 215 1
(2 short a = 4; a = 2 * a;
bytes)
unsigned 16 bits unsigned short a; a = -1 * a; 0 216 - 1
short (2 unsigned short a = a = -a;
bytes) 4;
int 32 bits int a; a = a + 1; -231 231 - 1
(4 a++;
bytes)
unsigned int 32 bits unsigned int a; a = a + 4; 0 232 - 1
(4 a += 4;
bytes)
long long 64 bits long long a; a = -263 263 - 1
(8 4000000000000LL;
bytes)
(*) Cantidad
unsigned long de 64bits correspondientes
bits unsigned long a cada tipo de
long a =dato en los principales compiladores
0 264 - 1
long (8 a; de C++ 4000000000000ULL;
Recordemos que
bytes) utilizando n bits podemos representar 2n valores diferentes

ST 202W - Lenguaje de Programacin


18/03/2017 6
Estructurado
Unidades de medida de memoria

Unidad Equivalencia Unidad Equivalencia


(decimal (binario)
)
Bit (b) Dgito binario (0 o Bit (b) Dgito binario (0 o 1)
1)
Byte (B) 8 bits Byte (B) 8 bits
Kilobyte (kB) 1000 bytes Kibibyte 1024 bytes
(KiB)
Megabyte (MB) 1000 kilobytes Mebibyte 1024 kibibytes
(MiB)
Gigabyte (GB) 1000 megabytes Gibibyte 1024 mebibytes
(GiB)
Terabyte (TB) 1000 gigabytes Tebibyte 1024 gibibytes
(TiB)
(*) Continan los prefijos Peta/Pebi (P/Pi), Exa/Exbi (E/Ei), Zetta/Zebi (Z/Zi),
Yotta/Yobi (Y/Yi)
https://es.wikipedia.org/wiki/Prefijo_binario

ST 202W - Lenguaje de Programacin


18/03/2017 7
Estructurado
Tipos de datos reales
Tipo Uso # IEEE 754
bits
float float PI = 3.14; 32 Signo: 1, Exp: 8,
Mantisa: 23
double double PI = 3.14; 64 Signo: 1, Exp: 11,
Mantisa: 52
long long double PI = 80 Signo: 1, Exp: 15,
double 3.14; Mantisa: 64

ST 202W - Lenguaje de Programacin


18/03/2017 8
Estructurado
Tipo de dato caracter
Representa un carcter, como 'a', '0 o '@'
Internamente es un tipo de dato numrico y
utiliza 1 byte
Almacena valores de 0 a 255 (8 bits, 28 valores
distintos)
La representacin numrica de cada carcter est
definida segn el estndar de cdigos ASCII
(American Standard Code for Information
Interchange)
char ch = 'a';
Ejemplo:

ST 202W - Lenguaje de Programacin


18/03/2017 9
Estructurado
Tabla ASCII (0 - 127)

ST 202W - Lenguaje de Programacin


18/03/2017 10
Estructurado
Tabla ASCII (128 - 255)

ST 202W - Lenguaje de Programacin


18/03/2017 11
Estructurado
Booleanos

Definicion
es
Una variable que puede ser
verdadera o falsa
Emplean 1 byte (a pesar de requerir solo 1
bit)

bool soyVerdadero = true;


bool soyFalso = false;

ST 202W - Lenguaje de Programacin


18/03/2017 12
Estructurado
Lenguaje de Programacin
Estructurado
EXPRESIONES

ST 202W - Lenguaje de Programacin


18/03/2017 13
Estructurado
Expresiones
Una expresin es un conjunto de operadores y
operandos siguiendo reglas de agrupacin
Las expresiones tienen un valor

int a = 6, b = 4;

int c = a + sqrt(b);

int x = (1.0 / 2.0) * (a + sqrt(b));

ST 202W - Lenguaje de Programacin


18/03/2017 14
Estructurado
Operadores aritmticos
Divisin Real (/)
real1 = 3.0 / 4.0; // 0.75
real2 = 3 / 4.0; // 0.75
real3 = 3.0 / 4; // 0.75
Divisin Entera (/)
entero1 = 3 / 4; // 0
entero2 = 3 / 0; // Error de ejecucin
Mdulo o Resto (%)
entero1 = 10 % 7; // 3
entero2 = 10 % 0; // Error de ejecucin

ST 202W - Lenguaje de Programacin


18/03/2017 15
Estructurado
Operadores aritmticos
Tener en cuenta precedencia de operadores:
o Mayor precedencia: * / %
o Menor precedencia: + -

x = 1 + 2 * 4 % 6 / 2 - 1; // 1

Utilizar parntesis para indicar orden de


operaciones:

x = 1 + 2 * (4 % 6) / 2 - 1; // 4

ST 202W - Lenguaje de Programacin


18/03/2017 16
Estructurado
Operadores lgicos
Una variable con valor 0 se considera como falsa

& Una variable con valor distinto de 0 se considera como


verdadera
int unNumero = 3, otroNumero = 0;

& bool resultado;

resultado = unNumero && otroNumero;

|| resultado = unNumero || otroNumero;

! resultado = !unNumero;

ST 202W - Lenguaje de Programacin


18/03/2017 17
Estructurado
Operadores de comparacin

Operado Significado Ejemplo


r
a == b Verdadero si a y b bool resultado = (5 ==
son iguales 3);
a != b Verdadero si a y b bool resultado = (5 !=
son diferentes 3);

a > b bool resultado = (5 >


3);

a >= b bool resultado = (5 >=


3);

a < b bool resultado = (5 <


3);

a <= b bool resultado = (5 <=


3);

ST 202W - Lenguaje de Programacin


18/03/2017 18
Estructurado
Operadores de bits

a | b OR (unin de bits)
a & b AND (interseccin de bits)
a ^ b XOR (o exclusivo)
~a NOT (negacin de bits)

72 & 184
01001000 &
10111000 =
--------
00001000

ST 202W - Lenguaje de Programacin


18/03/2017 19
Estructurado
Conversin de tipos

Mtodo int un_entero = 1;

para
trabajar Implci float un_real = 2.3;

ta
con un_entero = un_entero +
variable un_real;

s de
diferent char un_carcter = A;

es tipos
Explci
ta
un_entero = (int) un_caracter;

ST 202W - Lenguaje de Programacin


18/03/2017 20
Estructurado
Lectura y escritura: Utilizando cin y
cout
#include <iostream>
#include <cmath>

using namespace std;

int main()
{
int a, b;
cout << "a = ";
cin >> a; // cin permite la lectura de datos

cout << "b = ";


cin >> b;

int h = sqrt(a * a + b * b);


cout << "h = " << h << endl;

return 0;
}

ST 202W - Lenguaje de Programacin


18/03/2017 21
Estructurado
Ejemplos
Escriba un programa que convierta grados
Centgrados a grados Fahrenheit.
F = (9 / 5) * C + 32
Escriba un programa que calcule el volumen de
una esfera
V = (4 / 3) * PI x R ^ 3

ST 202W - Lenguaje de Programacin


18/03/2017 22
Estructurado

You might also like