Buscar

Resolução - lista de vetores e matrizes visualg

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

Resolução vetores e matrizes
1)
var
pc: vetor[1..4] de inteiro // matrícula em PC
cn: vetor[1..5] de inteiro // matrícula em CN
i, j:inteiro
inicio
i <- 1
repita
escreva ("RM programação: ")
leia (pc[i])
se pc[i] = 9999 entao
interrompa
fimse
i <- i + 1
fimrepita
i <- 1
repita
escreva ("RM calculo numerico: ")
leia (cn[i])
se cn[i] = 9999 entao
interrompa
fimse
i <- i + 1
fimrepita
i <- 1
repita
se pc[i] = 9999 entao
interrompa
fimse
j <- 1
repita
se (cn[j] = 9999) ou (pc[i] = cn[j]) entao
//9999 deve ser digitado como ultimo rm ou o código não dará certo
interrompa
fimse
j <- j + 1
fimrepita
se pc[i] = cn[j] entao
escreval ("O aluno de RM ", pc[i], " esta matriculado nas duas materias")
fimse
i <- i + 1
fimrepita
fimalgoritmo
2)
var
nvoos, lugares: vetor [1..3] de inteiro
nvoo, rg, i: inteiro
inicio
// Seção de Comandos 
para i de 1 ate 3 faca
escreval ("Entre com o número do vôo: ")
leia (nvoos[i])
escreval ("Entre com o número de lugares disponíveis: ")
leia (lugares[i])
fimpara
repita
escreval ("Entre com o número do vôo desejado: ")
leia (nvoo)
escreval ("Entre com o RG: ")
leia (rg)
se (rg=9999) entao
interrompa
fimse
para i de 1 ate 3 faca
se (nvoo=nvoos[i]) entao
se (lugares[i]>0) entao
lugares[i] <- lugares[i]-1
escreval ("O rg ", rg, " possui um assento reservado no vôo ", nvoo)
senao
escreval ("Não há mais assentos disponíveis neste vôo. ")
fimse
fimse
fimpara
fimrepita
fimalgoritmo
3)
var
emp, m: vetor [1..6] de inteiro
aux1, aux2, aux3, r1, r2, r3, c, i: inteiro
inicio
// Seção de Comandos
para i de 1 ate 6 faca
escreval ("Entre com o nº do empregado: ")
leia (emp[i])
escreval ("Entre com o nº de meses trabalhados: ")
leia (m[i])
se ((i>6) ou ((emp[i]=0) e (m[i]=0))) entao
interrompa
fimse
fimpara
r1 <- 1
r2 <- 2
r3 <- 3
se ((m[r2]>m[r1]) e (m[r3]>m[r1]) e (m[r2]>m[r3])) entao
//132
c <- r2
r2 <- r3
r3 <- c
fimse
se ((m[r1]>m[r2]) e (m[r3]>m[r1]) e (m[r3]>m[r2])) entao
//213
c <- r1
r1 <- r2
r2 <- c
fimse
se ((m[r1]>m[r3]) e (m[r2]>m[r3]) e (m[r2]>m[r1])) entao
//231
aux1 <- r1
aux2 <- r2
aux3 <- r3
r1 <- aux3
r2 <- aux1
r3 <- aux2
fimse
se ((m[r1]>m[r3]) e (m[r2]>m[r3]) e (m[r1]>m[r2])) entao
//321
c <- r1
r1 <- r3
r3 <- c
fimse
se ((m[r1]>m[r2]) e (m[r1]>m[r3]) e (m[r3]>m[r2])) entao
//312
aux1 <- r1
aux2 <- r2
aux3 <- r3
r1 <- aux2
r2 <- aux3
r3 <- aux1
fimse
para i de 4 ate 6 faca
se ((i>6) ou ((emp[i]=0) e (m[i]=0))) entao
interrompa
fimse
se (m[r3]>m[i]) entao
r3 <- i
//como o objetivo é apontar os 3 funcionarios mais novos, se houver um 4º
//funcionário mais recente que os 3 primeiros, este passa a tomar o valor de r3
//e volta a passar nos comandos sucessivos de lógica para determinar sua ordem
//(mais novo, mais velho ou do meio)
fimse
se ((m[r2]>m[r1]) e (m[r3]>m[r1]) e (m[r2]>m[r3])) entao
//132
c <- r2
r2 <- r3
r3 <- c
fimse
se ((m[r1]>m[r2]) e (m[r3]>m[r1]) e (m[r3]>m[r2])) entao
//213
c <- r1
r1 <- r2
r2 <- c
fimse
se ((m[r1]>m[r3]) e (m[r2]>m[r3]) e (m[r2]>m[r1])) entao
//231
aux1 <- r1
aux2 <- r2
aux3 <- r3
r1 <- aux3
r2 <- aux1
r3 <- aux2
fimse
se ((m[r1]>m[r3]) e (m[r2]>m[r3]) e (m[r1]>m[r2])) entao
//321
c <- r1
r1 <- r3
r3 <- c
fimse
se ((m[r1]>m[r2]) e (m[r1]>m[r3]) e (m[r3]>m[r2])) entao
//312
aux1 <- r1
aux2 <- r2
aux3 <- r3
r1 <- aux2
r2 <- aux3
r3 <- aux1
fimse
fimpara
escreval ("Os 3 funcionários mais novos são: ", emp[r1], emp[r2], emp[r3])
fimalgoritimo
4)(?)
var
tabela1, tabela2: vetor [1..n] de inteiro
i, j, c, n : inteiro
inicio
// Seção de Comandos 
escreval ("Entre com o valor de n: ")
leia (n)
para i de 1 ate n faca
escreval ("Entre com os elementos da tabela")
leia (tabela1[i])
fimpara
para i de 1 ate n faca
tabela2 <- tabela1
fimpara
para i de 1 ate n faca
se (tabela2[i]>tabela2[j]) entao
c <- tabela2j]
tabela2[j] <- tabela2[i]
tabela2[i] <- c
fimse
fimpara
escreval (tabela1[i])
escreval (tabela2[j])
fimalgoritmo
5)
var
nmotores, m1, m2: vetor [1..12, 1..2] de inteiro
cusluc: vetor [1..2, 1..2] de inteiro
i, j : inteiro
cla1, cla2 : vetor [1..2] de inteiro
inicio
// Seção de Comandos
para i de 1 ate 12 faca
para j de 1 ate 1 faca
escreval ("Entre com a produção de M1 no mês ", i)
leia (nmotores[i,1])
fimpara
fimpara
para i de 1 ate 12 faca
para j de 2 ate 2 faca
escreval ("Entre com a produção de M2 no mês ", i)
leia (nmotores[i,2])
fimpara
fimpara
para i de 1 ate 1 faca
para j de 1 ate 2 faca
escreval ("Entre com os custos de M1 e M2, respectivamente")
leia (cusluc[1,j])
fimpara
fimpara
para i de 2 ate 2 faca
para j de 1 ate 2 faca
escreval ("Entre com os lucros de M1 e M2, respectivamente")
leia (cusluc[2,j])
fimpara
fimpara
para i de 1 ate 12 faca
m1[i,1] <- nmotores[i,1]*cusluc[1,1]
fimpara
para i de 1 ate 12 faca
m1[i,2] <- nmotores[i,1]*cusluc[2,1]
fimpara
para i de 1 ate 12 faca
para j de 1 ate 1 faca
escreval ("Custo de M1 no mês ", i)
escreval (m1[i,1])
escreval ("Lucro de M1 no mês ", i)
escreval (m1[i,2])
fimpara
fimpara
escreval("---------------------")
para i de 1 ate 12 faca
m2[i,1] <- nmotores[i,2]*cusluc[1,2]
fimpara
para i de 1 ate 12 faca
m2[i,2] <- nmotores[i,2]*cusluc[2,2]
fimpara
para i de 1 ate 12 faca
para j de 1 ate 1 faca
escreval ("Custo de M2 no mês ", i)
escreval (m2[i,1])
escreval ("Lucro de M2 no mês ", i)
escreval (m2[i,2])
fimpara
fimpara
//
para j <-1 ate 2 faca
cla1[j] <- 0
i <- 1
para i <- 1 ate 12 faca
cla1[j] <- cla1[j] + m1[i,j]
fimpara
fimpara
para j <-1 ate 2 faca
cla2[j] <- 0
i <- 1
para i <- 1 ate 12 faca
cla2[j] <- cla2[j] + m2[i,j]
fimpara
fimpara
escreval ("O custo anual de M1 foi de ", cla1[1])
escreval ("O lucro anual de M1 foi de ", cla1[2])
escreval ("O custo anual de M2 foi de ", cla2[1])
escreval ("O lucro anual de M2 foi de ", cla2[2])
fimalgoritmo
6)
var
isbn, qtdade: vetor [1..2] de inteiro
titulo, autor: vetor [1..2] de caractere
cod, i : inteiro
titul : caractere
inicio
// Seção de Comandos
para i de 1 ate 2 faca
escreval ("Entre com o título do livro: ")
leia (titulo[i])
escreval ("Entre com o autor do livro: ")
leia (autor[i])
escreval ("Entre com o ISBN: ")
leia (isbn[i])
escreval ("Entre com a quantidade de exemplares: ")
leia (qtdade[i])
fimpara
//
repita
escreval ("Entre com o código do usuário: ")
leia (cod)
escreval ("Entre com o título do livro desejado: ")
leia (titul)
para i de 1 ate 2 faca
se (titul=titulo[i]) entao
se (qtdade[i]>0) entao
qtdade[i] <- qtdade[i]-1
escreval ("Reserva: ", titul, " para ", cod)
senao
escreval ("Livro indisponivel")
fimse
fimse
fimpara
fimrepita
fimalgoritmo
7)
var
concentracao : vetor [1..5] de real
i, j, k: inteiro
maiorvalor, menorvalor : real
inicio
// Seção de Comandos
escreval ("Entre com a concentração de NO2, anotada de 1 em 1 segundo: ")
para i de 1 ate 5 faca
leia (concentracao[i])
fimpara
maiorvalor <- 0
menorvalor <- 9999
para i de 1 ate 5 faca
se (concentracao[i]<menorvalor) entao
menorvalor <- concentracao[i]
j <- i
fimse
se (concentracao[i]>maiorvalor) entao
maiorvalor <- concentracao[i]
k <- i
fimse
fimpara
escreval ("A maior concentração aparece no tempo ", k, " e a menor no tempo ", j)
fimalgoritmo
8)
var
salario : vetor [1..20] de inteiro
i, x, menorvalor : inteiro
inicio
// Seção de Comandos 
menorvalor <- 99999999
escreval ("Entre com os salários ")
para i de 1 ate 20 faca
leia (salario[i])
fimpara
x <- 0
para i de 1 ate 20 faca
se (salario[i]<menorvalor) entao
menorvalor <- salario[i]
fimse
fimpara
para i de 1 ate 20 faca
se (salario[i]=menorvalor) entao
x <- x+1
fimse
fimpara
escreval ("O menor salario é de ", menorvalor, " e ele aparece ", x, "vezes")
fimalgoritmo
9)
var
g, r: vetor[1..10] de caractere
i, j, x: inteiro
inicio
// Seção de Comandos
escreval ("Entre com o gabarito ")
para i <- 1 ate 10 faca
leia (g[i])
fimpara
escreval
("Entre com as respostas ")
para i <- 1 ate 40 faca
x <- 0
para j <- 1 ate 10 faca
leia(R[j])
se (r[j] = g[j]) entao
x <- x + 1
fimse
fimpara
se (x >= 6) entao
escreval ("Aprovado")
senao
escreval("Reprovado")
fimse
fimpara
10)
var
mat: vetor [1..4, 1..5] de inteiro
i, j, s1, s2, s3, s4, total: inteiro
inicio
// Seção de Comandos
para i de 1 ate 4 faca
para j de 1 ate 5 faca
aleatorio on
leia (mat[i,j])
aleatorio off
fimpara
fimpara
s1 <- 0
s2 <- 0
s3 <- 0
s4 <- 0
j <- 1
repita
s1 <- s1 + mat[1,j]
j <- j+1
se (j>5) entao
interrompa
fimse
fimrepita
j <- 1
repita
s2 <- s2 + mat[2,j]
j <- j+1
se (j>5) entao
interrompa
fimse
fimrepita
j <- 1
repita
s3 <- s3 + mat[3,j]
j <- j+1
se (j>5) entao
interrompa
fimse
fimrepita
j <- 1
repita
s4 <- s4 + mat[4,j]
j <- j+1
se (j>5) entao
interrompa
fimse
fimrepita
total <- s1+s2+s3+s4
escreval ("Soma da 1ª linha = ", s1)
escreval ("Soma da 2ª linha = ", s2)
escreval ("Soma da 3ª linha = ", s3)
escreval ("Soma da 4ª linha = ", s4)
escreval ("Soma total = ", total)
fimalgoritmo
12)
var
a, b, c: vetor [1..3,1..3] de inteiro
i, j: inteiro
inicio
// Seção de Comandos
escreval ("Entre com os valores da matriz A")
para i de 1 ate 3 faca
para j de 1 ate 3 faca
aleatorio on
leia (a[i,j])
aleatorio off
fimpara
fimpara
escreval ("Entre com os valores da matriz B")
para i de 1 ate 3 faca
para j de 1 ate 3 faca
aleatorio on
leia (b[i,j])
aleatorio off
fimpara
fimpara
//1ª linha
c[1,1] <- a[1,1]*b[1,1]+a[1,2]*b[2,1]+a[1,3]*b[3,1]
c[1,2] <- a[1,1]*b[1,2]+a[1,2]*b[2,2]+a[1,3]*b[3,2]
c[1,3] <- a[1,1]*b[1,3]+a[1,2]*b[2,3]+a[1,3]*b[3,3]
//2ª linha
c[2,1] <- a[2,1]*b[1,1]+a[2,2]*b[2,1]+a[2,3]*b[3,1]
c[2,2] <- a[2,1]*b[1,2]+a[2,2]*b[2,2]+a[2,3]*b[3,2]
c[2,3] <- a[2,1]*b[1,3]+a[2,2]*b[2,3]+a[2,3]*b[3,3]
c[3,1] <- a[3,1]*b[1,1]+a[3,2]*b[2,1]+a[3,3]*b[3,1]
//3ª linha
c[3,2] <- a[3,1]*b[1,2]+a[3,2]*b[2,2]+a[3,3]*b[3,2]
c[3,3] <- a[3,1]*b[1,3]+a[3,2]*b[2,3]+a[3,3]*b[3,3]
escreval ("Matriz C")
para i de 1 ate 3 faca
para j de 1 ate 3 faca
escreval (c[i,j])
fimpara
fimpara
fimalgoritmo
13)
var
a, at, c: vetor [1..4,1..4] de inteiro
b: vetor [1..3,1..3] de inteiro
db, i, j: inteiro
inicio
// Seção de Comandos
escreval ("Entre com a matriz A")
para i de 1 ate 4 faca
para j de 1 ate 4 faca
aleatorio on
leia (a[i,j])
aleatorio off
fimpara
fimpara
escreval ("Entre com a matriz B")
para i de 1 ate 3 faca
para j de 1 ate 3 faca
aleatorio on
leia (b[i,j])
aleatorio off
fimpara
fimpara
para i de 1 ate 4 faca
para j de 1 ate 4 faca
at[j,i] <- a[i,j]
fimpara
fimpara
para i de 1 ate 3 faca
para j de 1 ate 3 faca
db <- (b[1,1]*b[2,2]*b[3,3]+b[1,2]*b[2,3]*b[3,1]+b[1,3]*b[2,1]*b[3,2])-(b[1,3]*b[2,2]*b[3,1]+b[2,3]*b[3,2]*b[1,1]+b[3,3]*b[1,2]*b[2,1])
fimpara
fimpara
para i de 1 ate 4 faca
para j de 1 ate 4 faca
c[i,j] <- at[i,j]*db
fimpara
fimpara
escreval ("O resultado da multiplicação da matriz transposta de A ")
escreval ("pelo determinante da matriz B é ")
para i de 1 ate 4 faca
para j de 1 ate 4 faca
escreval (c[i,j])
fimpara
fimpara
fimalgoritmo
14)
var
kelvin, celcius: vetor [1..3,1..2] de real
i, j: inteiro
inicio
// Seção de Comandos
kelvin[1,1] <- -218.4
kelvin[1,2] <- -183
kelvin[2,1] <- 43
kelvin[2,2] <- 182
kelvin[3,1] <- -130
kelvin[3,2] <- 36.1
para i de 1 ate 3 faca
para j de 1 ate 2 faca
celcius[i,j] <- kelvin[i,j]+273
escreval (celcius[i,j])
fimpara
fimpara
15)
var
a, b, c: vetor [1..3,1..3] de inteiro
i, j, x: inteiro
inicio
// Seção de Comandos 
escreval ("Entre com os valores da matriz A")
para i de 1 ate 3 faca
para j de 1 ate 3 faca
aleatorio on
leia (a[i,j])
aleatorio off
fimpara
fimpara
escreval ("Entre com os valores da matriz B")
para i de 1 ate 3 faca
para j de 1 ate 3 faca
aleatorio on
leia (b[i,j])
aleatorio off
fimpara
fimpara
//1ª linha
c[1,1] <- a[1,1]*b[1,1]+a[1,2]*b[2,1]+a[1,3]*b[3,1]
c[1,2] <- a[1,1]*b[1,2]+a[1,2]*b[2,2]+a[1,3]*b[3,2]
c[1,3] <- a[1,1]*b[1,3]+a[1,2]*b[2,3]+a[1,3]*b[3,3]
//2ª linha
c[2,1] <- a[2,1]*b[1,1]+a[2,2]*b[2,1]+a[2,3]*b[3,1]
c[2,2] <- a[2,1]*b[1,2]+a[2,2]*b[2,2]+a[2,3]*b[3,2]
c[2,3] <- a[2,1]*b[1,3]+a[2,2]*b[2,3]+a[2,3]*b[3,3]
c[3,1] <- a[3,1]*b[1,1]+a[3,2]*b[2,1]+a[3,3]*b[3,1]
//3ª linha
c[3,2] <- a[3,1]*b[1,2]+a[3,2]*b[2,2]+a[3,3]*b[3,2]
c[3,3] <- a[3,1]*b[1,3]+a[3,2]*b[2,3]+a[3,3]*b[3,3]
escreval ("Matriz C")
para i de 1 ate 3 faca
para j de 1 ate 3 faca
escreval (c[i,j])
fimpara
fimpara
para i de 1 ate 3 faca
para j de 1 ate 3 faca
se (a[i,j]=b[j,i]) entao
x <- 1
fimse
fimpara
fimpara
se (x=1) entao
escreval ("A matriz C é identidade")
senao
escreval ("A matriz C não é identidade")
fimse
fimalgoritmo
16)
var
a: vetor [1..4,1..3] de inteiro
b: vetor [1..3,1..4] de inteiro
c: vetor [1..4,1..4] de inteiro
i, j: inteiro
inicio
// Seção de Comandos 
para i de 1 ate 4 faca
para j de 1 ate 3 faca
a[i,j] <- i*j
fimpara
fimpara
para i de 1 ate 3 faca
para j de 1 ate 4 faca
b[i,j] <- i*j
fimpara
fimpara
c[2,3] <- (a[2,1]*b[1,3])+(a[2,2]*b[2,3])+(a[2,3]*b[3,3])
escreval (c[2,3])
fimalgoritmo
17)
var
a, b: vetor [1..4,1..4] de inteiro
i, j, x: inteiro
inicio
// Seção de Comandos 
escreval ("Entre com a matriz A")
para i de 1 ate 4 faca
para j de 1 ate 4 faca
aleatorio on
leia (a[i,j])
aleatorio off
fimpara
fimpara
escreval ("Entre com a matriz B")
para i de 1 ate 4 faca
para j de 1 ate 4 faca
aleatorio on
leia (b[i,j])
aleatorio off
fimpara
fimpara
para i de 1 ate 4 faca
para j de 1 ate 4 faca
se (a[i,j]=b[j,i]) entao
x<-1
fimse
fimpara
fimpara
se (x=1) entao
escreval ("A matriz A é simétrica a B")
senao
escreval ("As matriz A não é simétrica a B")
fimse
fimalgoritmo

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Outros materiais