Vetores Unimensionais

Documentos relacionados
Vetores Unimensionais

Vetores Unimensionais

Vetores Unimensionais

Variáveis Compostas. Vanessa Braganholo

CONTEÚDO 04 VETORES. Disciplina: Algoritmos e POO Professora: Alba Lopes.

Matrizes (Vetores Bidimensionais)

Programação de Computadores I. Aula - Vetores. Professor Ilaim Costa Junior.

Aula 08 Estruturas de Condição. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes

Arrays em Java. Introdução à Programação. Bruno Cartaxo

Lógica de Programação e Algoritmos

Bacharelado em Ciência e Tecnologia Processamento da Informação. Equivalência Portugol Java. Linguagem Java

Algoritmos e Programação

Programação: Vetores

LÓGICA DE PROGRAMAÇÃO (JAVA) ESTRUTURAS REPETIÇÃO. Professor Carlos Muniz

CONTEÚDO 05 MATRIZES

Vetores. Professor Dr Francisco Isidro Massettto

Variáveis Compostas Homogêneas Vetores

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

Programação de Computadores para GI

LINGUAGEM C: ARRAY: VETORES E MATRIZES

Arrays e Marizes. João Paulo Q. dos Santos

PROGRAMAÇÃO I A LINGUAGEM DE PROGRAMAÇÃO JAVA II

Seleção Múltipla Laços (while, do-while, for) AULA 05

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

Unidade 3: Estruturas de Controle Parte 2 - Lógica, SWITCH, FOR, WHILE e DO WHILE Prof. Daniel Caetano

Aula 03 Introdução à Java. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes

Universidade Federal de Goiás Instituto de Informática 1ª Prova de Introdução a Programação 06/04/11

Universidade de Mogi das Cruzes Implementação Orientada a Objetos - Profª. Danielle Martin. Guia da Sintaxe do Java

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

Programação Orientada a Objetos II Java Segunda aula. Prof. Rogério Albuquerque de Almeida

Ederson Luiz da Silva Ciência da Computação. Algoritmos e Programação

5 Arrays. 5.1 Criando um array. 5.2 Inicializando arrays. c:\>java Array Janeiro tem 31 dias.

Algoritmos II Aula 2 Vetores

Array em Java. Figura 1 - Exemplo de um array de inteiros

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

EXERCICIO DE JAVA PARA FIXAÇÃO DE CONTEÚDO - Introdução a Prática de Programação Docente Pedro F. Carvalho /

Lógica de Programação. Lógica de Programação com Java

UNIVERSIDADE FEDERAL DO PAMPA CAMPUS BAGÉ ALGORITMOS E PROGRAMAÇÃO. Matrizes. Prof. Alex Camargo

Curso Básico de Programação Aula 11. Revisão Aula Anterior Laços de Repetição While; Do-While; For.

Classes, instâncias e métodos de acesso. prática

CURSO DE POO COM JAVA

Algoritmia e Programação APROG. Vetores. Algoritmia e Java. Nelson Freire (ISEP DEI-APROG 2012/13) 1/32

Algoritmos e Programação

Algoritmos e Estrutura de Dados Aula 02 Listas em Python

LÓGICA DE PROGRAMAÇÃO (JAVA) VARIÁVEIS. Professor Carlos Muniz

Estrutura de Condição, Escolha e Repetição

Organização de programas em Java

Disciplina de Algoritmos e Programação. Vetor e Matriz

RESULUÇÃO DOS EXERCÍCIOS E INSTRUÇÕES DE DECISÃO (if{} e else{}) Profº André Aparecido da Silva Disponível em:

Linguagem de programação Java

Algoritmos I Aula 13 Linguagem de Programação Java

Estruturas de Repetição e String. Vanessa Braganholo

Introdução a Algoritmos Parte 06

Estruturas de Repetição e String

CI208 - Programação de Computadores. Aula 24: Arrays. Prof. MSc. Diego Roberto Antunes

4ª Lista de Exercícios de Programação I

Introdução à Programação. Vetores. Prof. José Honorato F. Nunes

4ª Lista de Exercícios de Programação I

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

Sintaxe Básica do Java. João Paulo Q. dos Santos

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

Exercícios: Vetores e Matrizes

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

Arrays em Java. Alberto Costa Neto DComp - UFS

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

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

Bacharelado em Ciência e Tecnologia Processamento da Informação. Equivalência Portugol Java. Linguagem Java

Métodos e Procedimentos. Prof. Jesus José de Oliveira Neto

Recursividade. Prof. Jesus José de Oliveira Neto

POO fundamentos Parte II. Professor Vicente Paulo de Camargo

Organização de programas em Java

Paradigmas de Programação. Java First-Tier: Aplicações. Orientação a Objetos em Java (I) Nomenclatura. Paradigma OO. Nomenclatura

CURSO BÁSICO DE PROGRAMAÇÃO AULA 19. Netbeans - Linguagem JAVA - Vetores - Matrizes - Métodos

Aula 10: Introdução a Vetores e Matrizes

AULA 6 - ARRAYS. Array de 10 elementos

Comando de Seleção em Java

12 - Dados Estruturados Vetores, Matrizes e Strings

Linguagem C: Introdução

Instituto Federal de Educação, Ciência e Tecnologia do RN Câmpus Currais Novos. LINGUAGEM C++ VARIÁVEIS COMPOSTAS Arrays Aula I

Orientação a Objetos e Java

Operadores e Estruturas de Decisão. Vanessa Braganholo

1. [VETOR][SALA] Cálculo da média aritmética de 10 valores armazenados em um vetor.

Sintaxe Básica de Java Parte 2

Estruturas II UFOP 1/35

Linguagem de programação Estruturas de armazenamento

PROGRAMAÇÃO A. Vetores

Transcrição:

Vetores Unimensionais

Objetivos Entender a importância e a necessidade do uso de Vetores Definição de Manipulação de Vetores Inserir elementos em um vetor (usando laços ou não) Imprimir elementos de um vetor (usando laços ou não)

Conceituando Vetores

Vetores Definição de vetores: Coleção de variáveis de mesmo tipo. Estrutura de dados homogênea. Porque homogênea? Agrupam várias informações Dentro de uma mesma variável e Com o mesmo tipo de dado

Vetores Exemplo: Representação gráfica de um vetor Índice Elemento 0 1 2 3 4 5 6 7 8 5 7 10 7 8 6 10 3 4 Tamanho: 9 posições Cada elemento ocupa uma posição diferente. Genericamente chamamos as posições de ÍNDICES.

Vetores Ex: Agrupar as médias de 5 alunos Alunos Medias 1 4.5 2 6.5 3 8.0 4 3.5 5 6.0 Mesmo tipo de dado tipo REAL E onde ficam armazenados os dados? De forma agrupada na Memória Principal! 6

Vetores Um vetor é representado por: Identificador - nome do vetor Tamanho (dimensão) - quantidade de elementos (dados) Tipo - tipo de dado armazenado (integer, real, string) Sintaxe: tipo identificador [ ] = new tipo[tamanho]; double exemplo[ ] = new double [55]; 7

Vetores Como seria a declaração de um vetor para 80 notas? (Java) double notas [ ] = new double [80];

Manipulação de Vetores Os dados de um vetor são manipulados através de um índice O índice indica a posição do dado no vetor: double md[ ] = new double [5]; Como identificar cada dado no vetor? Através do ÍNDICE!! MD guarda as médias de 5 alunos 9

Manipulação de Vetores Vetor MD 4.5 6.5 8.0 3.5 6.0 0 1 2 3 4 md [0] = 4.5; md [1] = 6.5; md[2] = 8.0; md[3] = 3.5; md [4] = 6.0; Atribuição de valores em um vetor índice dados 10

Vetores Cada elemento de um vetor é tratado como se fosse uma variável simples. Para referência a um elemento do vetor utiliza-se o nome do vetor e o seu índice entre colchetes. Exemplo: No vetor de 80 notas para atribuir a nota 10 na posição 80 a instrução é: notas[ 79] = 10 0 1 2 3 4 5 6 7 8 79 5 7 10 7 8 6 10 3 4 10

Problema 1 Calcular a média de uma classe a partir da nota de seus 10 alunos. LÓGICA (SOLUÇÃO) Para cada um dos 10 alunos: Ler a nota N ATENÇÃO: a cada nota digitada vai acumulando com a anterior. Pode-se usar a mesma variável N para ler a nota do aluno seguinte Acumular a nota (somar com as anteriores) Media = soma / 10 N N N N N N N N N N 5.5 6.5 8.0 3,0 7.5 2.5 7.5 6.0 4.5 10.0

Solução Em Portugol Studio

Solução Em Java import java.util.*; public class Media00 { public static void main(string[ ] args) { double media, soma = 0, nota; int cont = 0; Scanner teclado = new Scanner(System.in); } } while (cont < 10) { System.out.println("Digite a nota : "); nota = teclado.nextdouble(); soma = soma + nota; cont++; } media = soma / 10; System.out.println("Media da Sala = " + media);

Problema 2 Bacharelado em Ciência e Tecnologia Calcular a média de uma classe a partir da nota de seus 10 alunos e verificar quantos conseguiram nota acima da média da classe: LÓGICA (SOLUÇÃO) Ler as 10 notas Somar as 10 notas e dividir por 10 Para cada uma das 10 notas faça: SE nota > media ENTÃO contar ATENÇÃO: Note que é preciso armazenar os 10 valores, para que depois de calculada a média se possa verificar se cada uma das 10 notas estão acima da média

Problema 2 Calcular a média de uma classe a partir da nota de seus 10 alunos e verificar quantos conseguiram nota acima da média da classe: SE N1 > media ENTÃO cont = cont + 1 SE N2 > media ENTÃO cont = cont + 1 SE N3 > media ENTÃO cont = cont + 1... SE N9 > media ENTÃO cont = cont + 1 SE N10 > media ENTÃO cont = cont + 1

import java.io.*; Solução com variáveis simples public class Media01 { public static void main(string[ ] args) { float media, soma = 0, n1, n2, n3, n4, n5, n5, n6, n7, n8, n9, n10; int conta = 0; Scanner teclado = new Scanner(System.in); System.out.println("Digite a nota n1: "); n1 = teclado.nextfloat();... System.out.println("Digite a nota n2: "); n2 = teclado.nextfloat();... System.out.println("Digite a nota n3: "); n3 = teclado.nextfloat();...... CONTINUA

Solução com variáveis simples... System.out.println("Digite a nota n10"); n10 = teclado.nextfloat();... soma = n1+ n2 + n3 + n4 + n5 + n6 + n7 + n8, + n9 + n10; media = soma / 10; if (n1>media) conta=conta+1; if (n2>media) conta=conta+1; if (n3>media) conta=conta+1;...... if (n9>media) conta=conta+1; if (n10>media) conta=conta+1; 10 ifs } } System.out.println("Existem " + conta + " notas cima da media " + media);

Problema E se fosse uma turma de 500 alunos? 500 variáveis? 500 ifs? A maioria das linguagens implementam variáveis do tipo CONJUNTO, chamadas de VETOR ou ARRAY

VETOR (ARRAY)

Vetores (No Portugol Studio) Permite a declaração de variáveis do tipo CONJUNTO Uma variável do tipo CONJUNTO pode armazenar mais de um valor. No ato da declaração da variável deve-se informar o seu tamanho. Para o problema de armazenar 10 notas, pode-se definir uma variável de tamanho 10 do tipo real. Declaração: real nota[ 10 ] A declaração acima cria em memória uma variável chamada NOTA com 10 posições do tipo REAL As 10 posições são numeradas de 0 a 9 (índice) nota conteúdo 5.5 6.5 8.0 3.0 7.5 2.5 7.5 6.0 4.5 10.0 índice 0 1 2 3 4 5 6 7 8 9

Vetores (No Portugol Studio) Declaração: real nota[ 10 ] A declaração acima cria em memória uma variável chamada NOTA com 10 posições do tipo REAL As 10 posições são numeradas de 0 a 9 (índice) nota Acesso a variável: conteúdo 5.5 6.5 8.0 3.0 7.5 2.5 7.5 6.0 4.5 10.0 índice 0 1 2 3 4 5 6 7 8 9 Para acessar cada posição deve-se usar o nome da variável e a sua posição ou índice (entre colchetes) A instrução abaixo imprime a nota que está na posição 3 (índice = 3-1) da variável. escreva( A nota da posição 3 =, nota [ 2 ] ) O índice pode ser uma variável: Ex. nota [ x ]

?????????? 0 1 2 3 4 5 6 7 8 9 Solução do Problema com VETOR (no Portugol Studio)

Vetor no Portugol Studio

VETOR EM JAVA

Exemplo Vetor de String String nomes [ ] = new String [3] ; nomes[0] = teclado.nextline(); Vetor de Inteiro int vetor [ ] = new int [10] ; vetor[0] = teclado.nextint(); 26

Vetores (array) Permite a declaração de variáveis do tipo CONJUNTO Uma variável do tipo CONJUNTO pode armazenar mais de um valor. No ato da declaração da variável deve-se informar o seu tamanho. Para o problema de armazenar 10 notas, pode-se definir uma variável de tamanho 10 do tipo float. Declaração: double nota [ ] = new double [ 10 ]; A declaração acima cria em memória uma variável com 10 posições do tipo float As 10 posições são automaticamente numeradas de 0 a 9 (índice); Para acessar cada posição deve-se usar o nome da variável e a sua posição ou índice (entre colchetes) A instrução abaixo imprime a nota que está na posição 3 da variável. System.out.println( \nota da posição 3 = + nota [ 3 ] );

Solução com VETOR import java.io.*; public class Media02 { public static void main(string[ ] args) { double nota [ ] = new double [10]; double media, soma = 0; int indice = 0, cont = 0; Scanner teclado = new Scanner(System.in); while (indice < 10) { System.out.println("Digite a nota :"); nota [ indice ] = teclado.nextdouble(); soma = soma + nota [ indice ]; indice++; } media = soma / 10; CONTINUA

Solução com VETOR Bacharelado em Ciência e Tecnologia /* ------- verificar quem está acima da média ------------ */ indice = 0; /* recomeça a percorrer a partir da posição ZERO!!! */ while ( indice < 10) { if ( nota [ indice ] > media ) { cont++; } indice++; } System.out.println("Existem " + cont + " notas cima da media " + media); } }

Respondendo à pergunta: E se fosse uma turma de 500 alunos?

Solução com VETOR import java.io.*; public class Media02 { public static void main(string[ ] args) { double nota [ ] = new double [500]; double media, soma = 0; int indice = 0, cont = 0; Scanner teclado = new Scanner(System.in); while (indice < 500) { System.out.println("Digite a nota :"); nota [ indice ] = teclado.nextdouble (); } soma = soma + nota [ indice ]; indice++; media = soma / 500 ;

Solução com VETOR /* ------- verificar quem está acima da média ------------ */ indice = 0; /* recomeça a percorrer a partir da posição ZERO!!! */ while ( indice < 500) { if ( nota [ indice ] > media ) { conta++; } ind++; } System.out.println("Existem " + cont + " notas cima da media " + media); } }

Mais Exemplos

Vetores Exemplo 2 Faça um programa que crie um vetor de string com 5 elementos e preencha cada elemento com uma cor de acordo como desenho abaixo. O programa deve pedir um número de 0 a 4 para o usuário, e imprimir a cor correspondente a esse número. 0 1 2 3 4 Azul Rosa Verde Roxo Preto

Vetores Exemplo 2 - Portugol cadeia Cor[5] int num 0 1 2 3 4 Azul Rosa Verde Roxo Preto Cor[0] = "Azul" Cor[1] = "Rosa" Cor[2] = "Verde" Cor[3] = "Roxo Cor[4] = "Preto" escreva("digite um número de 0 a 4") leia(num) escreva("a cor correspondente é,cor[num])

Vetores Exemplo 2 - Java 0 1 2 3 4 Azul Rosa Verde Roxo Preto String Cor[] = new String[5]; Scanner teclado = new Scanner(System.in); Cor[0] = "Azul"; Cor[1] = "Rosa"; Cor[2] = " Verde"; Cor[3] = "Roxo"; Cor[4] = "Preto"; System.out.println("Digite um número de 0 a 4"); int num = teclado.nextint(); System.out.println("A cor correspondente é "+ Cor[num]);

Alerta!!!

Vetores: Erros Comuns int vet A = new int[5]; int vet B = new int[5]; Jamais fazer: A = B. A atribuição de dois vetores tem que ser feito elemento por elemento. Ex: A[1] = B[2] Jamais fazer: A = teclado.nextint(); Tem que ler elemento por elemento. Ex: A[0] = teclado.nextint(); Jamais fazer: System.out.println(A); Tem que escrever elemento por elemento. Ex: System.out.println(A[1])

Exercício 1 Manipulando vetores Escreva um algoritmo que preencha um vetor de 100 elementos inteiros, colocando 1 na posição correspondente a um índice par e 0, na posição correspondente a um índice ímpar.

Exercício 2 Elabore um algoritmo que, dados dois vetores inteiros de 20 posições (fornecidos pelo usuário), efetue as respectivas operações indicadas por outro vetor de 20 posições de caracteres também fornecido pelo usuário, contendo as quatro operações aritméticas em qualquer combinação, e armazenando os resultados em um quarto vetor. A B Op R 2 4 5 7 4 2 0 7 9 2 8 6 8 5 5 9 0 6 0 7 + - * * / - + + - + 10-2 40 35 0.8-7 0 13 9 9