apresentação do powerpoint · 2018-05-29 · 2. faça um programa que leia um vetor de 8...
TRANSCRIPT
![Page 1: Apresentação do PowerPoint · 2018-05-29 · 2. Faça um programa que leia um vetor de 8 posições e, em seguida, leia também dois valores X e Y quaisquer correspondentes a duas](https://reader034.vdocuments.net/reader034/viewer/2022042914/5f4e7526b6f9633f2c3bca2b/html5/thumbnails/1.jpg)
Joyce França Professora de Ciência da Computação - IFNMG
VETOR
![Page 2: Apresentação do PowerPoint · 2018-05-29 · 2. Faça um programa que leia um vetor de 8 posições e, em seguida, leia também dois valores X e Y quaisquer correspondentes a duas](https://reader034.vdocuments.net/reader034/viewer/2022042914/5f4e7526b6f9633f2c3bca2b/html5/thumbnails/2.jpg)
Vetor
• Imagine o seguinte problema:
• Leia 100 números do teclado e depois imprima a
soma das extremidades.
• Exemplo: 1,2,10,50,..... , 1, 7, 90,78
1 2 10 50 ... 1 7 54 78
![Page 3: Apresentação do PowerPoint · 2018-05-29 · 2. Faça um programa que leia um vetor de 8 posições e, em seguida, leia também dois valores X e Y quaisquer correspondentes a duas](https://reader034.vdocuments.net/reader034/viewer/2022042914/5f4e7526b6f9633f2c3bca2b/html5/thumbnails/3.jpg)
Vetor
• Solução1: Declarar 100 variáveis do tipo
inteiro e depois realizar a soma
• int num1,num2,num3,num4,....., num100
![Page 4: Apresentação do PowerPoint · 2018-05-29 · 2. Faça um programa que leia um vetor de 8 posições e, em seguida, leia também dois valores X e Y quaisquer correspondentes a duas](https://reader034.vdocuments.net/reader034/viewer/2022042914/5f4e7526b6f9633f2c3bca2b/html5/thumbnails/4.jpg)
Vetor
• Solução1: Declarar 100 variáveis do tipo
inteiro e depois realizar a soma
• int num1,num2,num3,num4,....., num100
INVIÁVEL!!!!
![Page 5: Apresentação do PowerPoint · 2018-05-29 · 2. Faça um programa que leia um vetor de 8 posições e, em seguida, leia também dois valores X e Y quaisquer correspondentes a duas](https://reader034.vdocuments.net/reader034/viewer/2022042914/5f4e7526b6f9633f2c3bca2b/html5/thumbnails/5.jpg)
Vetor
• Solução2: Usar vetores!!
• int num[100];
![Page 6: Apresentação do PowerPoint · 2018-05-29 · 2. Faça um programa que leia um vetor de 8 posições e, em seguida, leia também dois valores X e Y quaisquer correspondentes a duas](https://reader034.vdocuments.net/reader034/viewer/2022042914/5f4e7526b6f9633f2c3bca2b/html5/thumbnails/6.jpg)
Array unidimensional ou
vetor
• Um array é um conjunto de componentes
do mesmo tipo.
![Page 7: Apresentação do PowerPoint · 2018-05-29 · 2. Faça um programa que leia um vetor de 8 posições e, em seguida, leia também dois valores X e Y quaisquer correspondentes a duas](https://reader034.vdocuments.net/reader034/viewer/2022042914/5f4e7526b6f9633f2c3bca2b/html5/thumbnails/7.jpg)
Vetor
• Sintaxe:
tipo nome[tam];
• Tipo pode ser: int,float,double,char.
![Page 8: Apresentação do PowerPoint · 2018-05-29 · 2. Faça um programa que leia um vetor de 8 posições e, em seguida, leia também dois valores X e Y quaisquer correspondentes a duas](https://reader034.vdocuments.net/reader034/viewer/2022042914/5f4e7526b6f9633f2c3bca2b/html5/thumbnails/8.jpg)
Array - Definição
• Como estes dados têm uma relação entre si, podemos declará-los usando um ÚNICO nome para todos os 100 elementos.
• Lista = conjunto de 100 números acessados por um índice.
0 1 ... 99
Lista
![Page 9: Apresentação do PowerPoint · 2018-05-29 · 2. Faça um programa que leia um vetor de 8 posições e, em seguida, leia também dois valores X e Y quaisquer correspondentes a duas](https://reader034.vdocuments.net/reader034/viewer/2022042914/5f4e7526b6f9633f2c3bca2b/html5/thumbnails/9.jpg)
Array - Definição
• Na linguagem C a numeração começa sempre em zero.
• Isto significa que, no exemplo anterior, os dados serão indexados de 0 a 99.
▫ Lista[0], Lista[1], ..., Lista[99]
0 1 ... 99
LISTA
![Page 10: Apresentação do PowerPoint · 2018-05-29 · 2. Faça um programa que leia um vetor de 8 posições e, em seguida, leia também dois valores X e Y quaisquer correspondentes a duas](https://reader034.vdocuments.net/reader034/viewer/2022042914/5f4e7526b6f9633f2c3bca2b/html5/thumbnails/10.jpg)
Array - Definição
• Observação
▫ Se o usuário digitar mais de 100 elementos em um array de 100 elementos, o programa tentará ler normalmente.
▫ Porém, o programa os armazenará em uma parte não alocada de memória, pois o espaço alocado foi para somente 100 elementos.
▫ Isto pode resultar nos mais variados erros no instante da execução do programa.
![Page 11: Apresentação do PowerPoint · 2018-05-29 · 2. Faça um programa que leia um vetor de 8 posições e, em seguida, leia também dois valores X e Y quaisquer correspondentes a duas](https://reader034.vdocuments.net/reader034/viewer/2022042914/5f4e7526b6f9633f2c3bca2b/html5/thumbnails/11.jpg)
Array = varíavel
• O elemento do array tem todas as características de uma variável e pode aparecer em expressões e atribuições.
▫ Lista[2] = Lista[3] + Lista[20]
• Ex: somar todos os elementos da Lista:
int soma = 0;
for(i=0;i < 100; i++)
soma = soma + Lista[i];
![Page 12: Apresentação do PowerPoint · 2018-05-29 · 2. Faça um programa que leia um vetor de 8 posições e, em seguida, leia também dois valores X e Y quaisquer correspondentes a duas](https://reader034.vdocuments.net/reader034/viewer/2022042914/5f4e7526b6f9633f2c3bca2b/html5/thumbnails/12.jpg)
Características
• Características básicas de um Array ▫ Estrutura homogênea, isto é, formada de elementos do
mesmo tipo. ▫ todos os elementos da estrutura são igualmente
acessíveis, isto é, o tempo e o tipo de procedimento para acessar qualquer um dos elementos do Array são iguais.
▫ cada elemento componente desta estrutura tem um índice próprio segundo sua posição no conjunto
![Page 13: Apresentação do PowerPoint · 2018-05-29 · 2. Faça um programa que leia um vetor de 8 posições e, em seguida, leia também dois valores X e Y quaisquer correspondentes a duas](https://reader034.vdocuments.net/reader034/viewer/2022042914/5f4e7526b6f9633f2c3bca2b/html5/thumbnails/13.jpg)
Vetores em C - Inicialização
• É possível inicializar vetores no comando de
declaração.
• Exemplos:
/* Cria e inicializa vetor de 10 posições */
int a[10] = {1, 2, 3, 5, 7, 11, 13, 17, 19, 23};
/* Cria e inicializa vetor de 6 posições. O tamanho do vetor PODE ser omitido se houver uma inicialização no comando de declaração */
• int b[] = {1, 2, 4, 8, 16, 32};
![Page 14: Apresentação do PowerPoint · 2018-05-29 · 2. Faça um programa que leia um vetor de 8 posições e, em seguida, leia também dois valores X e Y quaisquer correspondentes a duas](https://reader034.vdocuments.net/reader034/viewer/2022042914/5f4e7526b6f9633f2c3bca2b/html5/thumbnails/14.jpg)
Exemplo
• Armazenar 10 números em um vetor. E ao final imprimi-los na tela.
#include <stdio.h>
#include <stdlib.h>
int main() {
int i, vet[10]={20,22,23,25,26,28,98,36,98,36};
for(i=0;i<10;i++)
{
printf(" %d ", vet[i]);
}
}
14
![Page 15: Apresentação do PowerPoint · 2018-05-29 · 2. Faça um programa que leia um vetor de 8 posições e, em seguida, leia também dois valores X e Y quaisquer correspondentes a duas](https://reader034.vdocuments.net/reader034/viewer/2022042914/5f4e7526b6f9633f2c3bca2b/html5/thumbnails/15.jpg)
Exercício de fixação
1. Faça um programa que possua um vetor denominado A que armazene 6 números inteiros. O programa deve executar os seguintes passos:
(a) Atribua os seguintes valores a esse vetor: 1, 0, 5, -2, -5, 7.
(b) Armazene em uma variável inteira (simples) a soma entre os valores das posições A[0], A[1] e A[5] do vetor e mostre na tela esta soma.
(c) Modifique o vetor na posição 4, atribuindo a esta posição o valor 100.
(d) Mostre na tela cada valor do vetor A, um em cada linha.
![Page 16: Apresentação do PowerPoint · 2018-05-29 · 2. Faça um programa que leia um vetor de 8 posições e, em seguida, leia também dois valores X e Y quaisquer correspondentes a duas](https://reader034.vdocuments.net/reader034/viewer/2022042914/5f4e7526b6f9633f2c3bca2b/html5/thumbnails/16.jpg)
Exemplo
• Inicialização de vetor usando números digitados
• Ler 10 inteiros e armazená-los em um vetor. E ao final imprimi-los na tela.
#include <stdio.h>
#include <stdlib.h>
int main() {
int i, vet[10];
printf("digite 10 numeros separados por espaço ou digite um numero e aperte enter \n");
for(i=0;i<10;i++)
{
scanf("%d", &vet[i]);
}
for(i=0;i<10;i++)
{
printf(" %d ", vet[i]);
}
}
16
![Page 17: Apresentação do PowerPoint · 2018-05-29 · 2. Faça um programa que leia um vetor de 8 posições e, em seguida, leia também dois valores X e Y quaisquer correspondentes a duas](https://reader034.vdocuments.net/reader034/viewer/2022042914/5f4e7526b6f9633f2c3bca2b/html5/thumbnails/17.jpg)
Exercícios
1. Dada uma seqüência de 10 números digitados, imprimi-la e também mostre o posição.
2. Dada uma seqüência de 10 números digitados, imprimi-la na ordem inversa à da leitura.
17
![Page 18: Apresentação do PowerPoint · 2018-05-29 · 2. Faça um programa que leia um vetor de 8 posições e, em seguida, leia também dois valores X e Y quaisquer correspondentes a duas](https://reader034.vdocuments.net/reader034/viewer/2022042914/5f4e7526b6f9633f2c3bca2b/html5/thumbnails/18.jpg)
Exercícios
1. Dada uma seqüência de 10 números digitados, imprimir a soma das extremidades.
2. Faça um programa que leia um vetor de 8 posições e, em seguida, leia também dois valores X e Y quaisquer correspondentes a duas posições no vetor. Ao final seu programa deverá escrever a soma dos valores encontrados nas respectivas posições X e Y .
3. Ler um conjunto de números reais, armazenando-o em vetor e calcular o quadrado das componentes deste vetor, armazenando o resultado em outro vetor. Os conjuntos têm 10 elementos cada. Imprimir todos os conjuntos.
4. Leia um vetor de 10 posições. Contar e escrever quantos valores pares ele possui.
18
![Page 19: Apresentação do PowerPoint · 2018-05-29 · 2. Faça um programa que leia um vetor de 8 posições e, em seguida, leia também dois valores X e Y quaisquer correspondentes a duas](https://reader034.vdocuments.net/reader034/viewer/2022042914/5f4e7526b6f9633f2c3bca2b/html5/thumbnails/19.jpg)
Números aleatórios • Para gerar um número aleatório (randômico) em
linguagem C podemos usar a função rand pertencente à biblioteca stdlib.h.
#include <stdio.h> main() { int i; printf("Gerando 10 valores aleatorios:\n\n"); for (i = 0; i < 10; i++) { /* gerando valores aleatórios entre zero e 100 */ printf("%d ", rand() % 100); } }
![Page 20: Apresentação do PowerPoint · 2018-05-29 · 2. Faça um programa que leia um vetor de 8 posições e, em seguida, leia também dois valores X e Y quaisquer correspondentes a duas](https://reader034.vdocuments.net/reader034/viewer/2022042914/5f4e7526b6f9633f2c3bca2b/html5/thumbnails/20.jpg)
Números aleatórios
![Page 21: Apresentação do PowerPoint · 2018-05-29 · 2. Faça um programa que leia um vetor de 8 posições e, em seguida, leia também dois valores X e Y quaisquer correspondentes a duas](https://reader034.vdocuments.net/reader034/viewer/2022042914/5f4e7526b6f9633f2c3bca2b/html5/thumbnails/21.jpg)
criar um vetor de 10 espaços com
números aleatórios
#include<stdio.h> #include<stdlib.h> #include<time.h> main(){ srand(time(NULL));
int a[10],i; printf("Programa para criação de vetor\n"); for(i=0;i<10;i++) { a[i]=rand()%10; } printf("\n\nVetor a\n"); for(i=0;i<10;i++) { printf("[%d] = %d\n",i+1,a[i]); } }
![Page 22: Apresentação do PowerPoint · 2018-05-29 · 2. Faça um programa que leia um vetor de 8 posições e, em seguida, leia também dois valores X e Y quaisquer correspondentes a duas](https://reader034.vdocuments.net/reader034/viewer/2022042914/5f4e7526b6f9633f2c3bca2b/html5/thumbnails/22.jpg)
Exercícios
1. Elabore um programa que preencha um vetor com 20 números aleatórios. Em seguida, mostre o vetor e depois a soma dos números pares.
2. Elabore um programa que preencha um vetor com 100 números aleatórios. Em seguida, mostre o vetor e depois mostre somente os números armazenado nas posições ímpares do vetor.
3. Elabore um programa que encontre o menor elemento de um vetor com 20 elementos gerados por números aleatórios.
4. Elabore um programa que leia um vetor A de 10 números inteiros e imprima o maior valor e a posição em que ele se encontra no vetor.
5. Faça um programa que preencha um vetor com 10 números reais, calcule e mostre a quantidade de números negativos e a soma dos números positivos desse vetor.
6. Faça um programa para ler a nota da prova de 15 alunos e armazene num vetor, calcule e imprima a média geral.
22
![Page 23: Apresentação do PowerPoint · 2018-05-29 · 2. Faça um programa que leia um vetor de 8 posições e, em seguida, leia também dois valores X e Y quaisquer correspondentes a duas](https://reader034.vdocuments.net/reader034/viewer/2022042914/5f4e7526b6f9633f2c3bca2b/html5/thumbnails/23.jpg)
Exercícios
3. Elabore um programa que receba 10 letras e armazene em um vetor. E ao final imprima as 10 letras ao contrário.
4. Elabore um programa que, dados dois vetores inteiros de 10 posições, leia os dois vetores, some os valores da mesma posição e armazene em um terceiro vetor inteiro de 10 posições. No final imprima este terceiro vetor.
5. Faça um programa que receba 6 números inteiros e mostre:
▫ Os números pares digitados; ▫ A soma dos números pares digitados; ▫ Os números ímpares digitados; ▫ A quantidade de números ímpares digitados
23