Curso de Programación en Bash/S23.sh

De WikiCabal
Ir a la navegación Ir a la búsqueda

S23.sh

 1 #!/bin/bash
 2 
 3 
 4 area[11]=23
 5 area[13]=37
 6 area[51]=UFOs
 7 
 8 #  No es necesario que los miembros de un areglo son consecutivos
 9 #  o contiguos.
10 
11 # Algunos elementos de la matriz se puede dejar sin inicializar.
12 # Vacíos en la matriz están permitidos.
13 # De hecho, las matrices con datos escasos ("matrices dispersas")
14 # son útiles en una hoja de cálculo de procesamiento.
15 
16 
17 echo -n "area[11] = "
18 echo ${area[11]}    #  { llaves } son mandatorios.
19 
20 echo -n "area[13] = "
21 echo ${area[13]}
22 
23 echo "Contenidos del area[51] son ${area[51]}."
24 
25 # Elementos de una matriz sin inicialización imprimen nada (null).
26 echo -n "area[43] = "
27 echo ${area[43]}
28 echo "(area[43] sin inicialización )"
29 
30 echo
31 
32 # La suma de dos elementos de un areglo asignado a un tercer elemento
33 area[5]=`expr ${area[11]} + ${area[13]}`
34 echo "area[5] = area[11] + area[13]"
35 echo -n "area[5] = "
36 echo ${area[5]}
37 
38 area[6]=`expr ${area[11]} + ${area[51]}`
39 echo "area[6] = area[11] + area[51]"
40 echo -n "area[6] = "
41 echo ${area[6]}
42 # Este falla porque no se permite a sumar un intero con una cadena.
43 
44 echo; echo; echo
45 # -----------------------------------------------------------------
46 # Otro areglo, "area2".
47 # Otra manera de asignar valores a elementos de un areglo...
48 # nombre_de_areglo=( Valor1 Valor2 Valor3 ... )
49 
50 area2=( cero uno dos tres cuatro )
51 
52 echo -n "area2[0] = "
53 echo ${area2[0]}
54 # Recuerda que el primer elemento se llama [0] no [1]).
55 
56 echo -n "area2[1] = "
57 echo ${area2[1]}    # [1] es el segundo elemento del areglo.
58 # -----------------------------------------------------------------
59 
60 echo; echo; echo
61 
62 # -----------------------------------------------
63 # Otro areglo, "area3".
64 # Otra manera de asignar valores a elementos de un areglo...
65 # nombre_de_areglo=([Index_de_Elemneto]=XXX [Index_de_Elemento]=YYY ...)
66 
67 area3=([17]=diecisiete [24]=veinte-cuatro)
68 
69 echo -n "area3[17] = "
70 echo ${area3[17]}
71 
72 echo -n "area3[24] = "
73 echo ${area3[24]}

Resultado

[root@Pridd BashClase]# ./S23.sh 
area[11] = 23
area[13] = 37
Contenidos del area[51] son UFOs.
area[43] = 
(area[43] sin inicialización )

area[5] = area[11] + area[13]
area[5] = 60
expr: non-integer argument
area[6] = area[11] + area[51]
area[6] = 



area2[0] = cero
area2[1] = uno



area3[17] = diecisiete
area3[24] = veinte-cuatro
[root@Pridd BashClase]# 

Explicación