Apresenta - PowerPoint PPT Presentation

About This Presentation
Title:

Apresenta

Description:

Title: Apresenta o do PowerPoint Author: Nina Edelweiss Last modified by: Luis Otavio Created Date: 3/13/2001 9:05:58 PM Document presentation format – PowerPoint PPT presentation

Number of Views:50
Avg rating:3.0/5.0
Slides: 27
Provided by: Nina77
Category:
Tags: apresenta | vale

less

Transcript and Presenter's Notes

Title: Apresenta


1
Vetores ou arranjos de uma dimensão
Prof. Luis Otavio Alvares (Adaptado de material
da profa. Magda Bercht)
2
Ex Ler as notas de 30 alunos. Calcular
e informar a média da turma.
  • Program MediaTurma
  • var Nota real nota de um aluno
  • Media, Soma real
  • Aluno integer variável de controle da
    repetição
  • begin
  • Soma 0 inicializa a soma das notas
  • for Aluno 1 to 30 do para cada aluno da
    turma
  • begin
  • readln(Nota) obtém a nota do aluno
  • Soma Soma Nota
  • end
  • Media Soma / 30
  • writeln(Media da turma , Media51)
  • end.

3
Ex Ler as notas de 30 alunos. Calcular e
informar a média da turma. Informar, ainda, as
notas que são superiores à média calculada.
Program MediaTurma var Nota real nota de
um aluno Media, Soma real
Aluno integer variável de controle da
repetição begin Soma 0 inicializa a
soma das notas for Aluno 1 to 30 do para
cada aluno da turma begin
readln(Nota) obtém a nota do aluno
Soma Soma Nota end Media Soma
/ 30 writeln(Media da turma ,
Media51) end.
4
Ex Ler as notas de 30 alunos. Calcular e
informar a média da turma. Informar, ainda, as
notas que são superiores à média calculada.
Program MediaNotasSup_1 var N1, N2, N3, N4, N5,
N6, ... N30 real uma variável para
Media, Soma real cada nota dos alunos
! Aluno integer variável de controle
da repetição begin readln(N1, N2, N3, N4,
N5, N6, ... , N30) obtém as 30 notas
Soma N1N2N3N4N5N6 ... N30 Media
Soma / 30 writeln(Media da turma ,
Media51) if N1 gt Media
testa cada nota !!! then writeln(N1) if
N2 gt Media then writeln(N2) ... end.
É a única solução ?
5
  • Vamos precisar de 30 variáveis para armazenar os
    valores lidos!!!!
  • Essas 30 variáveis são do mesmo tipo.
  • Como simplificar isso, para não precisar declarar
    30 variáveis diferentes?

6
Solução para o problema de múltiplas variáveis de
mesmo tipo um vetor
Índice Posição identificando cada elemento
Nota
Nome Comum para todos os elementos
Valor Semelhante a uma variável simples
7
Vetores variáveis compostashomogêneas
  • Um só tipo
  • Um só nome
  • Múltiplas posições de memória identificadas por
    índices.

8
  • Vetor ou Arranjo de uma dimensão
  • conjunto ordenado de informações de mesma
    natureza
  • elementos todos do mesmo tipo
  • acesso randômico

8,5
Nota
Nota 3 vale 8,5
9
Arranjo - Pascal
Declaração
Tipo array array lt limite inferior gt
.. lt limite superior gt of lt tipo gt
  • limites devem ser inteiros ou caracteres
  • tipo qualquer tipo Pascal

Ex
var Nota array 1 .. 30 of real Y
array 10 .. 15 of string Z
array -5 .. 3 of integer
10
Arranjo - Pascal
Utilização
Variável indexada
lt nome do arranjo gt lt índice gt
Ex
var Nota array 1 .. 9 of real
begin readln( Nota 5 )
Nota 6
Nota 1 7.5
Nota 2 Nota 1 2
if Nota 1 gt 6.0 then writeln (Aprovado) ...
11
Arranjo - Pascal
lt nome do arranjo gt lt índice gt
Variável indexada
  • Índice
  • constante / nome de variável / expressão
  • deve ser inteiro ou char (dependendo do que foi
    definido)

Ex
var Nota array 1 .. 9 of real
Indice integer begin Indice
5 readln ( Nota Indice )
Nota Indice 1 7.5 ...
Ex
Nota 6
12
Ex Preencher por leitura um arranjo de 100
elementos inteiros.
var Valor array 1 .. 100 of integer
Ind integer begin for Ind
1 to 100 do readln ( Valor Ind ) ...
Ex Somar os elementos de um arranjo X de 200
posições
... Soma 0 for I 1 to 200
do Soma Soma X I ...
13
Ex Ler as notas de 30 alunos. Calcular e
informar a média da turma. Informar, ainda, as
notas que são superiores à média calculada.
Program MediaNotasSup_2 var Nota array 1 ..
30 of real vetor para as notas
Media, Soma real Aluno integer
variável de controle da repetição begin Soma
0 inicializa Soma for Aluno 1 to
30 do para cada a luno begin readln
(Nota Aluno) obtém sua nota Soma Soma
Nota Aluno acumula a soma end
Media Soma / 30 writeln(Media da turma
, Media51) for Aluno 1 to 30 do
imprime notas maiores que a média if Nota
Aluno gt Media then writeln (NotaAluno) end.
14
  • Exercício Faça um programa para
  • Preencher um vetor X de 20 posições inteiras por
    leitura.
  • 2. Mostrar o vetor obtido
  • 3. Informar o menor elemento deste vetor.
  • 4. Informar o valor do maior elemento, e sua
    posição.
  • 5. Informar quantos valores ímpares existem no
    vetor X

15
var I, posicao, totimpar, maior, menor
integer Xarray 1..20 of integer begin 1.
Preencher um vetor X de 20 posições por
leitura. for I1 to 20 do begin
write('Digite um valor inteiro ')
readln(XI) end 2. Mostrar o vetor
obtido for I1 to 20 do writeln('Posicao
',i,' ',XI) 3.Informar o menor elemento
deste vetor menorX1 for I1 to 20 do
if XIlt menor then menorXI writeln('O
menor elemento do vetor eh ',menor)
16
4. Informar o valor do maior elemento, e sua
posição maiorX1 for I1 to 20 do if
XIgtmaior then begin
maiorXI posicaoI
end writeln('O maior
elemento do vetor eh ',maior) writeln('e esta
na posicao ', posicao) 5. Informar quantos
valores ímpares existem no vetor X
totimpar0 for I1 to 20 do if XI
mod 2 ltgt0 then totimpartotimpar1
writeln( 'o vetor X contem ',totimpar, ' valores
impares') readln end.
17
Exercício
Faça um programa que leia um valor n
correspondente ao número de valores a serem
lidos. Leia também os n valores e depois mostre
estes valores na ordem inversa da leitura.
18
Var seq,ninteger varray 1..20 of
integer begin write('Digite o comprimento da
sequencia (max. 20) ') readln(n)
writeln('Digite uma sequencia com ',n,' numeros
inteiros ') leitura da sequencia for seq
1 to n do readln(vseq) mostra na ordem
inversa for seq n downto 1 do
write(vseq,' ') readln end.
19
Exercício
Ler 5 valores inteiros e armazenar nas posições
iniciais de um vetor de 10 posições. Nas posições
seguintes, armazenar sucessivamente o dobro da
primeira posição, o triplo da segunda posição,
etc. Mostrar os valores armazenados em cada
posição do vetor.
20
var iinteger Narray1..10 of
integer begin for I 1 to 5 leitura dos 5
valores do begin write('digite um
valor inteiro ') readln(NI)
end for I1 to 5 do preenche posicoes 6 a
10 NI5 NI (I1) for I1 to 10
do mostra todo o vetor writeln('Valor
armazenado na posicao ',I, ' ',NI)
readln end.
21
Exemplo de execução digite um valor inteiro
10 digite um valor inteiro 20 digite um valor
inteiro 30 digite um valor inteiro 40 digite um
valor inteiro 50 Valor armazenado na posicao 1
10 Valor armazenado na posicao 2 20 Valor
armazenado na posicao 3 30 Valor armazenado na
posicao 4 40 Valor armazenado na posicao 5
50 Valor armazenado na posicao 6 20 Valor
armazenado na posicao 7 60 Valor armazenado na
posicao 8 120 Valor armazenado na posicao 9
200 Valor armazenado na posicao 10 300
22
Exercício Preencha um vetor X de 10 posições
inteiras por leitura. Preencha um vetor Y, tambem
de 10 posicoes inteiras, por leitura. Prencha um
vetor V1 com a soma de X e y, em cada
posição. Preencha um vetor V2 com a diferença de
X e Y, em cada posição.
23
Exercício Leia 6 nomes e os armazene em um vetor
de 6 posições. Depois disso, coloque o conteúdo
da primeira posição na última, o da segunda
posição na penúltima e assim sucessivamente.
Mostre o resultado.
24
Var vetarray 1..6 of string auxstring
iinteger begin leitura dos nomes for I1
to 6 do begin write('Informe o nome ',I,'
') readln(vetI) end alteracao do
vetor for I1 to 3 do begin aux
vetI vetI vet7-I
vet7-Iaux end mostra resultado
writeln('Nomes reordenados ') for I1 to 6
do writeln(vetI) readln end.
25
Exercício Faca um programa que preencha por
leitura um vetor de 20 posições inteiras e
classifique os valores do vetor colocando-os em
ordem crescente.
26
const TV 5 define TV como uma constante com
valor 5 var I,J,auxinteger Xarray 1..TV
of integer begin writeln('informe o vetor
X') for I1 to TV do readln(XI) classifi
ca o vetor for I1 to TV do for J1 to
TV - 1 do if XJgtXJ1 then
begin auxXJ
XJXJ1 XJ1aux
end mostra o vetor ordenado writeln('vetor
classificado') for I1 to TV do
write(XI4) readln end.
Write a Comment
User Comments (0)
About PowerShow.com