Referenciando um elemento de array
Grande parte da utilidade dos arrays vem do fato de que seus elementos podem ser acessados individualmente.
A maneira de fazer isso é usar um índice para numerar os elementos.
Índice é um valor que aponta para um elemento específico da matriz div>
LEMBRE-SE!
A NUMERAÇÃO DE ARRAYS EM PASCAL COMEÇA DO ZERO!
(Isso é obrigatório — você deve começar do zero. É especialmente importante lembrar disso)
Exemplos de acesso ao array A:
x := (A[3] + 5) * A[1] // lê os valores de A[3] e A[1]
A[0] := x + 6 // escreve novo valor em A[0]
Vamos analisar o programa para trabalhar com elementos de array.
var i: inteiro;
a: array de inteiros;
começar
i := 1;
definir comprimento(a, 5); //cria um array de 5 elementos
a[0] := 23; // para cada um dos 5 elementos do array (índices de 0 a 4)
a[1] := 12; // escreve um valor específico
a[2] := 7;
a[3] := 43;
a[4] := 51;
a[2] := a[i] + 2 * a[i - 1] + a[2 * i]; // altera o valor do elemento com índice 2 para o resultado da expressão
// porque i=1, então substituindo o valor da variável i na expressão obtemos
// próxima expressão a[2] := a[1] + 2*a[0] + a[2];
writeln(a[2] + a[4]);
fim.
Como resultado da execução neste programa aparecerá na tela o valor da soma dos elementos do array com índice 2 e com índice 4 igual a 116. Como você pode ver no exemplo, podemos acessar qualquer elemento da matriz . E também calcule o número necessário do elemento usando várias fórmulas (por exemplo, como no programa A[i-1] ou A[2*i], nesses casos, os índices dos elementos serão calculados e dependem do valor de i.)
Vamos ver um exemplo de programa
var a: array de inteiro;
começar
definir comprimento(a, 5);
a[5] := 5;
a[-1] := 0;
fim.
Porque a matriz é declarada com 5 elementos, então os elementos serão numerados de 0 a 4. Vemos que o programa na 6ª linha refere-se a um elemento inexistente а [5] e na 7ª linha ao também inexistente a[-1].
Acontece que o programa ultrapassou os limites do array
Array fora dos limites está acessando um elemento com um índice que não existe no array.
Nesses casos, o programa geralmente falha com erro de tempo de execução
Problem
Nas linhas 8 a 11, defina os elementos da matriz no índice 1 a 4 para o dobro do valor do elemento da matriz anterior.
Nesta tarefa, você não pode atribuir números específicos, você deve se referir ao elemento anterior da matriz por nome e índice
Ou seja, a entrada a[1] = 46 será considerada incorreta.
Запрещенные операторы: 46