Vetores. e o programa deverá ler os valores separadamente:

Documentos relacionados
Aula 8 Oficina de Programação Vetores. Profa. Elaine Faria UFU

Algoritmos e Programação

Programação: Vetores

LINGUAGEM C: ARRAY: VETORES E MATRIZES

LÓGICA DE PROGRAMAÇÃO (C) VETORES E MATRIZES. Professor Carlos Muniz

Computação Eletrônica. Vetores e Matrizes. Prof: Luciano Barbosa. CIn.ufpe.br

Linguagem C estruturas de repetição

CCO 016 Fundamentos de Programação

Matrizes em C. Lucas Ferrari de Oliveira Professor Adjunto. Universidade Federal do Paraná

Variáveis Compostas Homogêneas Vetores

VETORES ADAPTADO DO MATERIAL DE PROF. L. A. ALVARES

LINGUAGEM C: ESTRUTURAS DEFINIDAS PELO

SSC304 Introdução à Programação Para Engenharias. Estruturas. GE4 Bio

Algoritmos e Programação

Linguagem de Programação

Curso de Introdução à Liguagem de. Grupo PET-Tele. Universidade Federal Fluminense. July 16, 2012

Disciplina de Algoritmos e Programação

Introdução à Programação. Introdução a Linguagem C. Prof. José Honorato F. Nunes

Universidade Federal de Uberlândia Faculdade de Computação. Linguagem C: ponteiros e alocação dinâmica

Universidade Federal de Uberlândia Faculdade de Computação. Linguagem C: estruturas de repetição While / Do While / For

Linguagem C. André Tavares da Silva.

12 - Dados Estruturados Vetores, Matrizes e Strings

CCO 016 / COM 110 Fundamentos de Programação

TÉCNICAS DE PROGRAMAÇÃO. Estrutura de dados

Introdução a Programação de Jogos

Linguagem C: Introdução

ponteiros INF Programação I Prof. Roberto Azevedo

Introdução à Programação

Fundamentos de Programação

Linguagem C. Programação Estruturada. Estrutura de Dados Heterogêneos. Prof. Luis Nícolas de Amorim Trigo

Linguagem C (repetição)

Estruturas de Controle de Fluxo

Linguagem C (estruturas condicionais)

INF 1005 Programação I - Prof. Hélio Lopes 24/04/2012

Introdução à Programação Estruturada Parte 2. Material da Prof. Ana Eliza

Introdução a Linguagem C (Parte I) UFPA Sistemas de Informação. Roberto Araujo 2013

Quantas variáveis para armazenar as notas e as médias são necessárias para resolver este problema?

Linguagem C vetores. IF61A/IF71A - Computação 1 Prof. Leonelo Almeida. Universidade Tecnológica Federal do Paraná

Estruturas da linguagem C. 1. Identificadores, tipos primitivos, variáveis e constantes, operadores e expressões.

Programação 1. Atribuição, operadores aritméticos, entrada de dados. Técnico em Eletrônica Semestre 5 02

3. Linguagem de Programação C

<identificador>[<tamanho>]: <tipo>;

Revisão. Profa Marina Gomes

Laboratório de Programação II

Introdução a Programação de Jogos

È um tipo estruturado homogêneo

Algoritmos e Programação

Tipos Básicos. Operadores de Incremento e Decremento. Operador Sizeof. Estruturas de Dados Aula 2: Estruturas Estáticas

Capítulo 1: Introdução à Linguagem C. Pontifícia Universidade Católica Departamento de Informática

Introdução à Programação

Estruturas de Dados Aula 2: Estruturas Estáticas. Tipos Básicos. Quantos valores distintos podemos representar com o tipo char?

Estruturas de Dados Aula 2: Estruturas Estáticas 02/03/2011

Vetores são estruturas indexadas utilizadas para armazenar dados de um mesmo tipo: int, char, float ou double. Oexemploaseguirédeumvetordeinteiros:

Apêndice B. Cadeias de Caracteres (Strings)

Estrutura de Dados. Struct (Registro) Lais Farias Alves

USP - ICMC - SSC SSC o. Semestre Disciplina de Introdução à Computação para Engenharia Ambiental

Estruturas. Estruturas. Estruturas. Estruturas. Estruturas. Algoritmos e Lógica de Programação. Estruturas. Uniões Enumerações CANSI

Aula 5 ESTRUTURAS DE REPETIÇÃO (WHILE)

CURSO BÁSICO DE PROGRAMAÇÃO AULA 11. Revisão Aula Anterior Vetores Cadeia de Caracteres

Unidade 8: Sobrecarga de Funções e Vetores e Matrizes (Arrays) Prof. Daniel Caetano

Computação Eletrônica. Strings. Prof: Luciano Barbosa. CIn.ufpe.br

Computação 2. Aula 5. Profª. Fabiany defines vetor, strings e matriz por parâmetros de função

Introdução. Ponteiros

Sub Rotinas. Estrutura de Dados. Prof. Kleber Rezende

LINGUAGEM C: FUNÇÕES FUNÇÃO 08/01/2018. Funções são blocos de código que podem ser nomeados e chamados de dentro de um programa.

Métodos Computacionais. Vetores e Matrizes Dinâmicas

Aula 18: Vetores Introdução a Programação Túlio Toffolo & Puca Huachi

Arranjos. David Déharbe

Laboratório de Introdução à Ciência da Computação I

1) Operadores de auto incremento ++ e auto decremento --

Algoritmos e Introdução à Programação. Lógica e Linguagem de Programação

Explicação do programa:

Programação de Computadores I Funções de Repetição da Linguagem C PROFESSORA CINTIA CAETANO

Controle de Fluxo. Laços e Desvios incondicionais

Introdução à Programação. Operadores, Expressões Aritméticas e Entrada/Saída de Dados

Introdução à Linguagem C Variáveis e Expressões

Computação 2. Aula 2. Profª. Fabiany Vetores e Matrizes

Introdução a Computação

Algoritmos e Programação Parte 02 Vetores e Matrizes

Podemos declarar um ponteiro para um ponteiro com a seguinte notação: tipo_da_variável **nome_da_variável;

6 Alguns conceitos e comandos em programação

CURSO BÁSICO DE PROGRAMAÇÃO AULA 15. Revisão Vetores e Matrizes Trabalho

Faculdade Anglo-Americano Curso de Ciência da Computação Linguagem de Programação. Lista de Exercícios 1

Centro Universitário Franciscano Curso de Sistemas de Informação Disciplina de algoritmos e programação II. Ponteiros

Estruturas de Repetição. for() while() do-while() break; continue;

Vetores. IFSC/Florianópolis - Programação Orientada a Objetos + POO - prof. Herval Daminelli

Laços de repetição for, while, do-while

Lógica e Linguagem de Programação Convertendo um algoritmo em pseudocódigo para a linguagem C Professor: Danilo Giacobo

Programação Básica. Estrutura de um algoritmo

Introdução à Programação

Aula 06 Introdução à Programação Matrizes

Programação de Computadores I Funções na Linguagem C PROFESSORA CINTIA CAETANO

Comandos de entrada. e saída. Comandos de entrada. Comandos de entrada. Comandos de entrada. Comandos de entrada. Comandos de entrada.

Programação I Funções. Prof. Carlos Alberto

Programação em C. Variáveis e Expressões. Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação

Introdução à Programação Estruturada Parte 3. Material da Prof. Ana Eliza

Transcrição:

Vetores Vetor é um tipo de dado usado para representar uma certa quantidade de variáveis de valores homogêneos (do mesmo tipo). Imagine o seguinte problema: calcular a média das notas da prova de 5 alunos. Você poderia declarar: int nota0, nota1, nota2, nota3, nota4; e o programa deverá ler os valores separadamente: printf( Digite a nota do aluno 0 ); scanf( %d, &nota0); printf( Digite a nota do aluno 1 ); scanf( %d, &nota1); printf( Digite a nota do aluno 4 ); scanf( %d, &nota4); Imagine se pretendêssemos encontrar a média aritmética das notas de uma classe de 50 alunos? Seria uma programação bastante volumosa. O vetor é uma série de variáveis do mesmo tipo referenciadas por um único nome, onde cada variável é diferenciada através de um número chamado índice. A declaração em linguagem C para um vetor é feita da seguinte maneira: int notas[5]; Esta declaração aloca memória para armazenar 5 inteiros e anuncia que notas é um vetor de 5 elementos de inteiros. A palavra int declara que todo elemento do vetor é do tipo int. notas é o nome dado ao vetor e [5] indica que o vetor terá 5 elementos. Em C, os vetores precisam ser declarados, como quaisquer outras variáveis, para que o compilador conheça o tipo do vetor e reserve espaço de memória suficiente para armazená-la. Os elementos de um vetor são guardados numa seqüência contínua de memória, isto é, um seguido ao outro. Na declaração de um vetor, deve-se colocar entre [ ] o tamanho o do vetor (quantos elementos ele poderá armazenar). Disciplina: Programação Estruturada 1

Referenciando um elemento do vetor Uma vez declarado o vetor, precisamos de um modo de referenciar os elementos individualmente. Isto é feito através de um número entre colchetes seguindo o nome do vetor. Quando referenciamos um elemento do vetor este número especifica a posição do elemento no vetor. É importante diferenciar bem os conceitos de posição e conteúdo. Os elementos do vetor são sempre numerados por índices iniciados por 0 (zero), como mostra o exemplo da figura abaixo: vetor conteúdo 0 1 2 3 4 posição O elemento referenciado pela posição (índice) 2 é especificado pela seguinte instrução: notas[2] Este não é o segundo elemento do vetor e sim o terceiro, pois a numeração começa em 0. Assim o último elemento do vetor possui um índice menor que o tamanho do vetor. Exemplo 1: Faça uma programa que declare um vetor para armazenar 5 notas, leia as 5 notas e calcule a média. #include <stdio.h> int notas[5]; int i, soma = 0; printf( media das notas = %d, soma/5); Disciplina: Programação Estruturada 2

Armazenando dados no vetor No exemplo1, a parte do programa que armazena dados no vetor é: O laço for causa um processo de solicitação ao usuário e leitura das notas, repetido 5 vezes. Na instrução scanf( ), nós usamos o operador (&) junto da variável notas[i], que é uma variável como outra qualquer. Lendo dados do vetor No exemplo1, a parte do programa que lê dados do vetor é: O laço for adiciona os valores contidos em cada elemento do vetor (notas[i]) em uma variável soma, para depois calcular a média. Utilizando a diretiva #define Com a diretiva #define podemos definir um valor constante conforme o exemplo abaixo. Exemplo 2: Faça um programa que leia notas até que a nota seja menor ou igual a 0. Calcule e apresente a média das notas. #include<stdio.h> #define tamanho 40 float notas[40], soma = 0.0; int i; do scanf( %f, &notas[i]); Disciplina: Programação Estruturada 3

if (notas[i] > 0) i++; while(notas[i] > 0); printf( media das notas = %.2f, soma/(i-1) ); No exemplo2, a diretiva define foi utilizada para criar uma constante chamada tamanho e que contém o valor 40. O uso de constantes para dimensionar vetores é comum em C, pois, se com o passar do tempo quisermos aumentar ou diminuir este valor, precisamos somente trocar o 40 pelo número desejado e a troca refletirá em qualquer parte do programa onde a palavra tamanho aparece. A variável notas foi definida com o tamanho máximo de 40 elementos reais, utilizando a palavra tamanho. No exemplo 2, o laço do-while repete a solicitação da nota ao usuário, armazenando-a no vetor notas, até que seja fornecido um valor menor ou igual à zero (0). Quando o último item for digitado, a variável i terá alcançado um valor acima do valor total de itens. Portanto, para encontrar o número de itens válidos devemos subtrair 1 do valor contido em i. O ideal no exemplo 2 é verificar se o limite máximo do vetor não foi ultrapassado e isso é de responsabilidade do programador. Sendo assim, poderíamos embutir o seguinte trecho no código: do if (i > = tamanho) printf( capacidade máxima do vetor preenchida\n ); break; scanf( %f, &notas[i]); if (notas[i] > 0) i++; while(notas[i] > 0); O comando break termina a execução do laço do-while. Disciplina: Programação Estruturada 4

Inicializando vetores Um vetor pode ser inicializado na instrução de sua declaração, para que possamos especificar valores prefixados. Para sua inicialização devemos colocar os valores separados por vírgulas e todos eles entre. A quantidade de valores definidos não pode ser superior ao tamanho máximo do vetor. Se há menos inicializadores que a dimensão especificada, os outros serão zero. Exemplo 3: #include<stdio.h> float soma = 0.0, notas[5] = 5.0, 6.0, 7.0, 8.0, 9.0; int i; printf( media das notas = %d, soma/5); Exercícios 1) Faça um programa que seja capaz de conhecer e armazenar quaisquer 10 valores inteiros em um vetor. 2) Faça um programa que seja capaz de conhecer e armazenar N valores inteiros quaisquer em um vetor com capacidade de armazenamento de 50 elementos inteiros. O valor de N é fornecido pelo usuário. 3) Faça um programa que, tendo como dados de entrada 10 valores reais, calcule a média aritmética entre os mesmos, e que seja possível saber quantos elementos são superiores a média calculada. 4) Faça um programa que leia 2 vetores de 10 elementos inteiros cada, e que construa um terceiro vetor composto somente com os elementos que estão nos dois vetores. 5) Refaça o item 4, evitando elementos repetidos no vetor gerado. 6) Faça um programa que leia 2 vetores de 50 elementos inteiros cada. Em seguida crie um vetor soma com base nos dois vetores lidos. Disciplina: Programação Estruturada 5