tablas definición. el tipo tabla permite definir objetos formados por un conjunto de elementos del...

28
TABLAS • Definición . El tipo tabla permite definir objetos formados por un conjunto de elementos del mismo tipo. • Ejemplos . El tipo tabla se utiliza para definir puntos en 3-D, vectores, matrices, palabras, etc.

Upload: remigio-san-antonio

Post on 22-Jan-2016

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: TABLAS Definición. El tipo tabla permite definir objetos formados por un conjunto de elementos del mismo tipo. Ejemplos. El tipo tabla se utiliza para

TABLAS

• Definición. El tipo tabla permite definir objetos formados por un conjunto de elementos del mismo tipo.

• Ejemplos. El tipo tabla se utiliza para definir puntos en 3-D, vectores, matrices, palabras, etc.

Page 2: TABLAS Definición. El tipo tabla permite definir objetos formados por un conjunto de elementos del mismo tipo. Ejemplos. El tipo tabla se utiliza para

TABLAS

• Sintaxisnombre_nuevo_tipo = tabla [rango, rango,...] de nombre_tipo

donde rango se define como primer_rango .. ultimo_rango siendo primer_rango y ultimo_rango expresiones de constantes de tipo entero el número de elementos que se pueden guardar en la tabla es igual a ultimo_rango–primer_rango+1

Page 3: TABLAS Definición. El tipo tabla permite definir objetos formados por un conjunto de elementos del mismo tipo. Ejemplos. El tipo tabla se utiliza para

TABLAS

• Ejemplosalgoritmo

tipo vector = tabla [1..10] de real palabra = tabla [1..10] de caracteres matriz = tabla [1..20,1..30] de entero ftipo var v1,v2: vector; p:palabra; m:matriz fvar

Page 4: TABLAS Definición. El tipo tabla permite definir objetos formados por un conjunto de elementos del mismo tipo. Ejemplos. El tipo tabla se utiliza para

Operaciones

La única operación que se puede realizar con un tipo tabla es la asignación. La asignación puede ser:

• Tabla -> Tabla • Componente de la tabla -> variable del tipo

base• Objeto del tipo base -> componente

Sobre los componentes de la tabla se pueden realizar las mismas operaciones que sobre cualquier objeto del mismo tipo base.

Page 5: TABLAS Definición. El tipo tabla permite definir objetos formados por un conjunto de elementos del mismo tipo. Ejemplos. El tipo tabla se utiliza para

OperacionesEjemplostipo vector = tabla [1..10] de realftipovar v1,v2: vector ; n: real fvar

• Tabla -> Tabla v1 := v2• Componente de la tabla -> variable del tipo base v1[1] := n• Objeto del tipo base -> componente n := v1[7]

Page 6: TABLAS Definición. El tipo tabla permite definir objetos formados por un conjunto de elementos del mismo tipo. Ejemplos. El tipo tabla se utiliza para

Operaciones

EjemplosCualquier operación que se puede realizar

con el tipo base

v1[1] := LeerReal() v1[2] := v1[1] *v2[1] /0.5 EscribirReal (v1[2]) EscribirReal(v1[1]+v2[2])

Page 7: TABLAS Definición. El tipo tabla permite definir objetos formados por un conjunto de elementos del mismo tipo. Ejemplos. El tipo tabla se utiliza para

Convenio de longitud

• El número de elementos contenidos en una variable de tipo tabla siempre ha de ser menor o igual a la que aparece en la definición.

• Dos tipos de convenios se utilizan para indicar el número de elementos de una tabla:

• La marca específica de final (centinela)• El conocimiento explícito de la longitud

Page 8: TABLAS Definición. El tipo tabla permite definir objetos formados por un conjunto de elementos del mismo tipo. Ejemplos. El tipo tabla se utiliza para

Calcular el producto escalar de dos vectores de 25 elementos reales

algoritmo producto_escalar

const

N: entero = 25

fconst

tipo

vector = tabla [1..N] de real

ftipo

var v1, v2: vector; j : entero; p: real fvar

Page 9: TABLAS Definición. El tipo tabla permite definir objetos formados por un conjunto de elementos del mismo tipo. Ejemplos. El tipo tabla se utiliza para

Leer los N primeros reales y guardarlos en el vector v1

var v1, v2: vector; j : entero; p: real fvar

j:= 1

mientras j <= N hacer

v1[j] := LeerReal()

j := j+1

fmientras

Page 10: TABLAS Definición. El tipo tabla permite definir objetos formados por un conjunto de elementos del mismo tipo. Ejemplos. El tipo tabla se utiliza para

Leer los N siguientes reales y guardarlos en el vector v2

j:= 1

mientras j <= N hacer

v2[j] := LeerReal()

j := j+1

fmientras

Page 11: TABLAS Definición. El tipo tabla permite definir objetos formados por un conjunto de elementos del mismo tipo. Ejemplos. El tipo tabla se utiliza para

Multiplicar componente a componente

v1 y v2

j:= 1; p := 0

mientras j <= N hacer

p := p + v1[j] * v2[j]

j := j+1

fmientras

EscribirReal (p)

Page 12: TABLAS Definición. El tipo tabla permite definir objetos formados por un conjunto de elementos del mismo tipo. Ejemplos. El tipo tabla se utiliza para

algoritmo producto_escalar const N: entero = 25 fconst tipo vector = tabla [1..N] de real ftipo var v1, v2: vector; j : entero; p: real fvar j:= 1 mientras j < N hacer v1[j] := LeerReal j := j+1 fmientras j:= 1 mientras j < N hacer v2[j] := LeerReal j := j+1 fmientras j:= 1; p := 0 mientras j <= N hacer p := p + v1[j] * v2[j] j := j+1 fmientras EscribirReal (p)falgoritmo

Page 13: TABLAS Definición. El tipo tabla permite definir objetos formados por un conjunto de elementos del mismo tipo. Ejemplos. El tipo tabla se utiliza para

Estructura repetitiva para

para indice en [rango_inicial..rango_final]

(paso expresión) hacer

Sentencias

fpara

para j en [1..N] hacer

v1[j] := LeerEntero()

fpara

para j en [1..N] paso 2 hacer

v1[j] := v1[j] + 10

fpara

Page 14: TABLAS Definición. El tipo tabla permite definir objetos formados por un conjunto de elementos del mismo tipo. Ejemplos. El tipo tabla se utiliza para

Leer los N siguientes reales y guardarlos en el vector v2

para j en [1..N] hacer

v2[j] := LeerReal()

hacer

Page 15: TABLAS Definición. El tipo tabla permite definir objetos formados por un conjunto de elementos del mismo tipo. Ejemplos. El tipo tabla se utiliza para

Multiplicar componente a componente

v1 y v2

p := 0

para j en [1..N] hacer

p := p + v1[j] * v2[j]

fpara

EscribirReal (p)

Page 16: TABLAS Definición. El tipo tabla permite definir objetos formados por un conjunto de elementos del mismo tipo. Ejemplos. El tipo tabla se utiliza para

Lee una secuencia de enteros acabada en 0 y un siguiente entero e indica si este entero

aparece en la secuencia anterior

algoritmo búsqueda_entero

const

N: entero = 25

fconst

tipo

tentero = tabla [1..N] de entero

ftipo

var t1: tentero; n, j: entero

encontrado: booleano

fvar

Page 17: TABLAS Definición. El tipo tabla permite definir objetos formados por un conjunto de elementos del mismo tipo. Ejemplos. El tipo tabla se utiliza para

Leer la secuencia de enteros, guardarlos en la tabla t1 y leer el siguiente entero

j:= 1; t1[j] := LeerEntero

mientras t1[j] != 0 y j < N hacer

j := j+1

t1[j] := LeerEntero

fmientras

n := LeerEntero

Page 18: TABLAS Definición. El tipo tabla permite definir objetos formados por un conjunto de elementos del mismo tipo. Ejemplos. El tipo tabla se utiliza para

Buscar el entero en la secuencia guardada en el la tabla t1

j:= 1; encontrado := falso

mientras t1[j] != 0 y no encontrado hacer

si t1[j] = n entonces

encontrado := cierto

fsi

j := j+1

fmientras

si encontrado entonces EscribirCaracter(‘S’)

sino EscribirCaracter(‘N’)

fsi

Page 19: TABLAS Definición. El tipo tabla permite definir objetos formados por un conjunto de elementos del mismo tipo. Ejemplos. El tipo tabla se utiliza para

algoritmo búsqueda_entero

const N: entero = 25 fconst

tipo tentero = tabla [1..N] de entero ftipo

var t1: tentero; n, j: entero ; encontrado: booleano fvar

j:= 1; t1[j] := LeerEntero

mientras t1[j] != 0 y j < N hacer

j := j+1; t1[j] := LeerEntero

fmientras

n := LeerEntero; j:= 1; encontrado := falso

mientras t1[j] != 0 y no encontrado hacer

si t1[j] = n entonces encontrado := cierto fsi

j := j+1

fmientras

si encontrado entonces EscribirCaracter(‘S’)

sino EscribirCaracter(‘N’)

fsi

falgoritmo

Page 20: TABLAS Definición. El tipo tabla permite definir objetos formados por un conjunto de elementos del mismo tipo. Ejemplos. El tipo tabla se utiliza para

Llegir dos vector de 4 components reals I escriure el vector resultant de sumar els

dos vectors component a component

12 3 0 -5 0 -1 23 4

12 2 23 -1

Page 21: TABLAS Definición. El tipo tabla permite definir objetos formados por un conjunto de elementos del mismo tipo. Ejemplos. El tipo tabla se utiliza para

Llegir dos vector de N components reals I escriure el vector resultant de sumar els

dos vectors component a component

algoritme sumar_vectors

const

N: enter = 4

fconst

tipus

vector = taula [1..N] de reals

ftipus

var v1,v2: vector; j: enter

fvar

Page 22: TABLAS Definición. El tipo tabla permite definir objetos formados por un conjunto de elementos del mismo tipo. Ejemplos. El tipo tabla se utiliza para

algoritme sumar_vectors

const N: enter = 4 fconst

tipus vector = taula [1..N] de reals ftipus

var v1,v2: vector; j: enter fvar

per j en [1..N] fer v1[j] := LlegirReal() fper

per j en [1..N] fer v2[j] := LlegirReal() fper

per j en [1..N] fer

escriureReal (v1[j] + v2[j])

fper

falgoritme

Page 23: TABLAS Definición. El tipo tabla permite definir objetos formados por un conjunto de elementos del mismo tipo. Ejemplos. El tipo tabla se utiliza para

Estructura repetitiva per

per index en [rang_inicial..rang_final] fer

Sentències

fper

for (index = rang_inicial; index <=rang_final;increment index)

{

.. Sentències

}

for (j= 0; j<N; j++) {

v1[j] = v1[j + 2];

}

Les taules en C comencen a la posició 0

Page 24: TABLAS Definición. El tipo tabla permite definir objetos formados por un conjunto de elementos del mismo tipo. Ejemplos. El tipo tabla se utiliza para

Llegir una seqüència de enters acabada en 0 i escriure-la incrementant cada element

amb la mitjana de la seqüència

algoritme incrementar_seqüència

const

N: enter = 25

fconst

tipus

tenter = taula [1..N] de enter

ftipus

var t1: tenter; suma,n, j: enter

mitjana: real

fvar

Page 25: TABLAS Definición. El tipo tabla permite definir objetos formados por un conjunto de elementos del mismo tipo. Ejemplos. El tipo tabla se utiliza para

Llegir la seqüència d’enters, guardarlos en la taula1 i calcular la mitjana

j:= 1; t1[j] := LlegirEnter ; suma := t1[j]

mentre t1[j] != 0 i j < N fer

j := j+1;

t1[j] := LlegirEnter

suma := suma + t1[j]

fmentre

mitjana := EnterAReal(suma)/ EnterAReal(j)

n := j

Page 26: TABLAS Definición. El tipo tabla permite definir objetos formados por un conjunto de elementos del mismo tipo. Ejemplos. El tipo tabla se utiliza para

Escriure la seqüència dels enters incrementada amb la mitjana

per j en [1..n ] fer

EscriureReal (EnterAReal(t1[j]) + mitjana)

fper

Page 27: TABLAS Definición. El tipo tabla permite definir objetos formados por un conjunto de elementos del mismo tipo. Ejemplos. El tipo tabla se utiliza para

algoritme incrementar_seqüència

const N: enter = 25 fconst

tipus tenter = taula [1..N] de enter ftipus

var t1: tenter; suma,n, j: enter ; mitjana: real; fvar

j:= 1; t1[j] := LlegirEnter ; suma := t1[j]

mentre t1[j] != 0 i j < N fer

j := j+1;

t1[j] := LlegirEnter

suma := suma + t1[j]

fmentre

mitjana := EnterAReal(suma)/ EnterAReal(j)

n := j

per j en [1..n ] fer

EscriureReal (EnterAReal(t1[j]) + mitjana)

fper

falgoritme

Page 28: TABLAS Definición. El tipo tabla permite definir objetos formados por un conjunto de elementos del mismo tipo. Ejemplos. El tipo tabla se utiliza para

Traducció a C# define N 25

typedef int tenter [N];

void main(void) {

tenter t1; int suma,num, j; float mitjana, aux;

j= 0; cin >> t1[j] ; suma = t1[j];

while (t1[j] != 0 && j < N-1) {

j = j+1; cin >> t1[j] ;

suma = suma + t1[j];

}

mitjana = (float)suma / (float)j; num = j;

for (j =0; j< num; j++){

aux = (float) t1[j] + mitjana ; cout << aux <<endl;

}

system(“PAUSE”);

}