ponteiros
Ponteiros
Gurvan Huiban
29 de agosto de 2013
1
Ponteiros
1.1
Aquecimento
Escreva um programa em Pascal que leia do teclado dois valores inteiros em duas variáveis a e b. Faça um ponteiro pMin apontar para o o menor dos dois valores, e um ponteiro pMax para o maior dos dois valores. Em seguida, imprima os valores apontado por pMin e pMax.
1.2
Min e max
Escreva um programa em Pascal que:
• inicialize a partir do teclado um vetor de 10 números reais.
• faça apontar um ponteiro pMin no menor elemento do vetor e um ponteiro pMax no maior elemento do vetor.
• compare os dois ponteiros e indique se o menor e o maior elemento são os mesmos, se o menor elemento vem antes (no vetor) do maior elemento ou se o maior elemento vem antes do menor elemento.
2
Alocação dinâmica de memória
2.1
Dois valores
Escreva um programa em Pascal que leia do teclado dois valores inteiros. O programa só deve ter variáveis de tipo ponteiro; ou seja deve ter dois ponteiros p1 e p2 apontando para estes dois valores.
Em seguida, troque os valores (se necessário) de forma a garantir que o valor apontado por p1 seja menor ou igual ao valor apontado por p2, e imprima o menor valor (apontado por p1) e o maior valor (apontado por p2).
2.2
Strings
Escreva um programa em Pascal que:
• defina um vetor de 10 ponteiros para cadeias de carácteres.
• aloque dinamicamente e leia do teclado uma cadeia de carácteres para cada uma das posições do vetor.
• imprima na mesma linha todas as cadeias de carácteres do vetor separadas por vírgulas.
• troque a primeira e a última cadeia de carácteres do vetor.
• imprima na mesma linha todas as cadeias de carácteres do vetor separadas por virgulas.
1
3
Lista encadeada
Usando o registro abaixo, escreva um programa que usa listas encadeadas para armazenar valores inteiros. type TLista = record val : integer; prox : ^TLista; end; PLista = ^TLista;
3.1
Inserção