200 likes | 379 Views
Algoritmos e Programação. Thyago Maia Tavares de Farias Aula 20. Sumário. Pascal – Estruturas de Repetição Comando repeat ... until (continuação); Pascal – Variáveis Compostas Homogêneas Vetores;. Exercícios. Faça um programa que repita as instruções abaixo (utilizando o repeat ):
E N D
Algoritmos e Programação Thyago Maia Tavares de Farias Aula 20
Sumário • Pascal – Estruturas de Repetição • Comando repeat...until (continuação); • Pascal – Variáveis Compostas Homogêneas • Vetores;
Exercícios • Faça um programa que repita as instruções abaixo (utilizando o repeat): • Ler o sexo e a altura de 10 pessoas; • Contar o número de homens e mulheres; • O programa deverá executar 10 vezes; • Após a execução do laço, o programa deverá escrever a altura da pessoa mais alta e a quantidade de homens e mulheres;
Variáveis Compostas Homogêneas • A declaração de várias variáveis , uma a uma, é suficiente para codificar um programa; • Porém, tal metodologia não é suficiente para resolver TODOS os problemas computacionais; • Ex.: Faça um programa que leia o nome de 500 pessoas e, em seguida, escreva o nome de cada uma. • Você iria declarar e utilizar 500 variáveis? Trabalhoso, não?! • Para resolver problemas similares ao descrito acima, utilizamos vetores e matrizes;
Vetores 2 3 4 1 1 5 • Vários valores poderão ser armazenados em uma única variável, chamada vetor; • Vetores possuem índices que, pelos quais, poderemos acessar valores armazenados; • Vetores funcionam como tabelas de uma linha e várias colunas: • Ex.: Um vetor de inteiros:
Vetores • Em Pascal, um vetor é identificado pela palavra reservada array; • Declaração de um vetor: varnome: array [inicio..fim] of tipo; • Em [inicio..fim], devemos definir a posição inicial e final do vetor, separado por .. • Ex.: [1..2], [3..5], [6..10], etc.;
Vetores • OBS: • O valor do índice inicial deve ser menor que o índice final; • A primeira posição (índice) de um array (vetor) em Pascal é a posição 1; • As posições (índices) são numeradas com valores INTEIROS. Não utilize outro tipo de valor em um índice!
Vetores • Como atribuir valores a um vetor? • atribuições em vetor exigem que seja informada em qual de suas posições o valor ficará armazenado;
Vetores • Como escrever na tela os elementos de um vetor? • Também através dos índices; • Exemplo:
Vetores • Preenchendo e mostrando os elementos de um vetor: • Para preencher um vetor, temos que atribuir valores para cada posição do mesmo; • Para apresentar todos os valores contidos em um vetor, temos que percorrer todas as posições do vetor e obter cada valor correspondente;
Vetores • Como fazer tudo isso de uma maneira mais eficiente? • Deve-se implementar um mecanismo que controle o valor do índice; • Percebe-se que, para percorrer um vetor, a estrutura de repetição FOR se apresenta como um bom recurso; • A estrutura FOR permite contar um valor inicial até um valor final, coincidentemente com os índices de um vetor;
Exemplo Escreva um programa em Pascal que lê 20 números inteiros e escreve cada número e sua posição no vetor;
Exemplo Escreva um programa em Pascal que lê 10 números inteiros, calcula e exibe a quantidade de números maiores que 5;
Exercícios Faça um programa em Pascal que recebe 10 números inteiros e os armazena em um vetor de 10 posições. O programa deverá escrever na tela apenas os valores pares do vetor;
Exercícios Faça um programa em Pascal que recebe 10 números inteiros e os armazena em um vetor de 10 posições. O programa deverá trocar todos os valores negativos do vetor por 0. Após a substituição, escrever todo o conteúdo do vetor na tela;
Exercícios Faça um programa em Pascal que recebe 5 números inteiros e os armazena em um vetor X de 5 posições. O programa deverá armazenar o valor/2 de cada posição do vetor X em um vetor Y. Após a substituição, escrever todo o conteúdo dos vetores X e Y na tela;
Exercícios Faça um programa em Pascal que possua um vetor com 3 nomes armazenados: nomes[1] := ‘Jose’; nomes[2] := ‘Maria’; nomes[3] := ‘Carlos’; O programa deverá solicitar a digitação de um nome qualquer, e buscará o nome digitado no vetor de nomes. Caso encontre o nome, escreverá ‘Achei!’; Caso contrário, escreverá ‘Não achei’;