Buscar

Lógica de Programação e Algoritmos Apol 4

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 3, do total de 25 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 6, do total de 25 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 9, do total de 25 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Prévia do material em texto

1) Para o algoritmo abaixo, explique a necessidade de se utilizar as variáveis k e j:
algoritmo "vetores"
var
 i,j,k,n : inteiro
 v: vetor [1..50] de real
 vp: vetor [1..50] de real
 vn: vetor [1..50] de real
 aux: real
inicio
//seção de comandos
 escreval("Digite o número de elementos do vetor:")
 leia(n)
 para i de 1 ate n faca
 escreval("Digite um numero qualquer:")
 leia(v[i])
 fimpara
 
 limpatela
 
 k<-0
 j<-0
 para i de 1 ate n faca
 se (v[i]>0) entao
 k<-k+1
 vp[k]<-v[i]
 senao
 j<-j+1
 vn[j]<-v[i]
 fimse
 
 fimpara
 
 escreval("Positivos:")
 para i de 1 ate k faca
 escreval(vp[i])
 fimpara
 
 escreval("Negativos:")
 para i de 1 ate j faca
 escreval(vn[i])
 fimpara
fimalgoritmo
	A	As variáveis k e j são utilizadas para que os vetores "vp" e "vn" tenham suas posições preenchidas, respectivamente, com os valores positivos e negativos do vetor "n", definindo a quantidade de elementos de cada um destes vetores.
	B	As variáveis k e j são utilizadas para acumular a soma dos valores positivos e negativos do vetor "n".
	C	As variáveis k e j são utilizadas para separar os valores dos números positivos e negativos do vetor "n".
	D	As variáveis k e j são utilizadas como contéudos dos vetores "vp" - valores positivos e "vn" - valores negativos.
2) Para o algoritmo abaixo, qual a melhor declaração de variáveis?
algoritmo "vetores"
inicio
//seção de comandos
 
 escreval("Digite o número de elementos do vetor:")
 leia(n)
 para i de 1 ate n faca
 escreval("Digite um numero qualquer:")
 leia(v[i])
 fimpara
 
 escreval("Digite um valor qualquer para inserir no vetor:")
 leia(valor)
 escreval("Digite a posição do vetor")
 leia(posicao)
 
 para i de n ate 2 passo -1 faca
 se (i>=posicao) entao
 v[i+1]<-v[i]
 fimse
 se (posicao=i) entao
 v[i]<-valor
 fimse
 
 fimpara
 
 para i de 1 ate n+1 faca
 escreval(v[i])
 fimpara
fimalgoritmo
	A	var
 i,n,posicao : inteiro
 valor:real
 v: vetor [1..50] de real
	B	var
 i,posicao : inteiro
 valor:real
 v: vetor [1..50] de real
	C	var
 i,n,posicao : inteiro
 v: vetor [1..50] de real
	D	var
 i,n: inteiro
 valor:real
 v: vetor [1..50] de real
3) Para o algoritmo abaixo, qual deveria ser a saída para uma matriz 2X3?
algoritmo "matriz"
 
var
 
 matriz:vetor[1..10,1..10] de inteiro
 i,j,m,n:inteiro
 
inicio
 
escreval("***** Entrada de Dados *****")
escreval("")
escreva("Digite o numero de linhas e o numero de colunas para matriz:")
leia(m,n)
para i de 1 ate m faca
 para j de 1 ate n faca
 escreva("Digite um valor para linha:",i," coluna:",j,":")
 matriz[i,j]<-j+1
 fimpara
fimpara
 
limpatela
 
escreval("***** Resultados da matriz *****")
para i de 1 ate m faca
 para j de 1 ate n faca
 escreva(matriz[i,j])
 fimpara
 escreval("")
fimpara
 
fimalgoritmo
	A	2 1 3
2 1 3
	B	1 2 3
1 2 3
	C	2 3 4
2 3 4
	D	2 2 2
2 2 2
4) Para o algoritmo abaixo, identifique qual a parte de código preencheria a lacuna em aberto. O algoritmo faz a distribuição dos números em outros dois vetores, um vetor só com o zero e os números positivos e outro só com números negativos:
algoritmo "vetores"
var
 
 i,j,k,n : inteiro
 v: vetor [1..50] de real
 vp: vetor [1..50] de real
 vn: vetor [1..50] de real
 
 aux: real
 
inicio
//seção de comandos
 escreval("Digite o número de elementos do vetor:")
 leia(n)
 para i de 1 ate n faca
 escreval("Digite um numero qualquer:")
 leia(v[i])
 fimpara
 limpatela
+-------------------------------------------------------------------------------------------------------------------------------+
+-------------------------------------------------------------------------------------------------------------------------------+
 escreval("Positivos:")
 para i de 1 ate k faca
 escreval(vp[i])
 fimpara
 
 escreval("Negativos:")
 para i de 1 ate j faca
 escreval(vn[i])
 fimpara
fimalgoritmo
	A	 para i de 1 ate n faca
 se (v[i]>1) entao
 k<-k+1
 vp[k]<-v[i]
 senao
 j<-j+1
 vn[j]<-v[i]
 fimse
 fimpara
	B	 k<-0
 j<-0
 para i de 1 ate n faca
 se (v[i]>=0) entao
 k<-k+1
 vp[k]<-v[i]
 senao
 j<-j+1
 vn[j]<-v[i]
 fimse
 fimpara
	C	para i de 1 ate n faca
 se (v[i]>0) entao
 k<-k+1
 vp[i]<-v[i]
 senao
 j<-j+1
 vn[i]<-v[i]
 fimse 
fimpara
	D	
k<-0
j<-0
para i de 1 ate n faca
 se (v[i]>0) entao
 vp[k]<-v[i]
 senao
 vn[j]<-v[i]
 fimse
 fimpara
5) Para o algoritmo abaixo, qual deveria ser a saída para uma matriz 2X2?
algoritmo "matriz"
 
var
 
 matriz:vetor[1..10,1..10] de inteiro
 i,j,m,n:inteiro
 
inicio
 
escreval("***** Entrada de Dados *****")
escreval("")
escreva("Digite o numero de linhas e o numero de colunas para matriz:")
leia(m,n)
para i de 1 ate m faca
 para j de 1 ate n faca
 escreva("Digite um valor para linha:",i," coluna:",j,":")
 matriz[i,j]<-j+1
 fimpara
fimpara
 
limpatela
 
escreval("***** Resultados da matriz *****")
para i de 1 ate m faca
 para j de 1 ate n faca
 escreva(matriz[i,j])
 fimpara
 escreval("")
fimpara
 
fimalgoritmo
	A	2 3
2 3
	B	2 1
2 1
	C	2 0
2 0
	D	4 2
4 2
6) Para o algoritmo abaixo, quais as saídas que representam a execução correta?
algoritmo "vetores"
var
 i,n,posicao : inteiro
 valor:real
 v: vetor [1..50] de real
 aux: real
 inicio
//seção de comandos
 escreval("Digite o número de elementos do vetor:")
 leia(n)
 para i de 1 ate n faca
 escreval("Digite um numero qualquer:")
 leia(v[i])
 fimpara
 escreval("Digite um valor qualquer para inserir no vetor:")
 leia(valor)
 escreval("Digite a posição do vetor")
 leia(posicao)
 para i de n ate 2 passo -1 faca
 se (i>=posicao) entao
 v[i+1]<-v[i]
 fimse
 se (posicao=i) entao
 v[i]<-valor
 fimse
 fimpara
 para i de 1 ate n+1 faca
 escreval(v[i])
 fimpara
 fimalgoritmo
	A	5
 
1
2
3
4
5
 
100
3
 
1
2
100
3
3
4
5
	B	5
 
1
2
3
4
5
 
100
3
 
1
2
100
3
4
5
	C	5
 
1
2
3
4
5
 
100
3
 
1
2
3
100
4
5
	D	5
 
1
2
3
4
5
 
100
3
 
1
2
3
4
5
100
100
100
7) Para o algoritmo abaixo, qual deveria ser o resultado exibido para uma matriz 3X3?
algoritmo "matriz"
 
var
 
 matriz:vetor[1..10,1..10] de inteiro
 i,j,m,n:inteiro
 
inicio
 
escreval("***** Entrada de Dados *****")
escreval("")
escreva("Digite o numero de linhas e o numero de colunas para matriz:")
leia(m,n)
para i de 1 ate m faca
 para j de 1 ate n faca
 escreva("Digite um valor para linha:",i," coluna:",j,":")
 matriz[i,j]<-i+1
 fimpara
fimpara
 
limpatela
 
escreval("***** Resultados da matriz *****")
para i de 1 ate m faca
 para j de 1 ate n faca
 escreva(matriz[i,j])
 fimpara
 escreval("")
fimpara
 
fimalgoritmo
	A	1 1 1
2 2 2
3 3 3
	B	2 2 2
3 3 3
4 4 4
	C	2 2 2
2 2 2
3 3 3
	D	1 1 1
3 3 3
5 5 5
8) Para o algoritmo abaixo, qual deveria ser a saída para uma matriz 5X5?
algoritmo "matriz"
 
var
 
 matriz:vetor[1..10,1..10] de inteiro
 i,j,m,n:inteiro
 
inicio
 
escreval("***** Entrada de Dados *****")
escreval("")
escreva("Digite o numero de linhas e o numero de colunas para matriz:")
leia(m,n)
para i de 1 ate m faca
 para j de 1 ate n faca
 escreva("Digite um valor para linha:",i," coluna:",j,":")
 matriz[i,j]<-j+i
 fimpara
fimpara
 
limpatela
 
escreval("***** Resultados da matriz *****")
para i de 1 ate m faca
 para j de 1 ate n faca
 escreva(matriz[i,j])
 fimpara
 escreval("")
fimparafimalgoritmo
	A	2 3 4 5 6 
4 5 6 7 8
5 6 7 8 9
6 7 8 9 10
7 8 9 10 11
	B	2 3 4 5 6 
3 4 5 6 7
4 5 6 7 8
5 6 7 8 9
6 7 8 9 10
	C	1 3 4 5 6 
2 5 6 7 8
3 6 7 8 9
4 7 8 9 10
5 8 9 10 11
	D	1 2 3 4 5 
2 4 5 6 7
3 5 6 7 8
4 6 7 8 9
5 7 8 9 10
9) Para o algoritmo abaixo, qual é o código mais adequado a incluir para calcular a quantidade de números ímpares?
algoritmo "matriz_par"
var
 
 m:vetor[1..3,1..3] de inteiro
 resto, qtpar,i,j:inteiro
 
inicio
 
qtpar <-0
 
escreval("***** Entrada de Dados *****")
escreval("")
para i de 1 ate 3 faca
 para j de 1 ate 3 faca
 escreva("Digite um valor para linha:",i," coluna:",j,":")
 leia(m[i,j])
 resto<-m[i,j] mod 2
 se(resto=0) entao
 qtpar<-qtpar+1
 fimse
 fimpara
fimpara
 
limpatela
 
escreval("***** Resultados da matriz *****")
para i de 1 ate 3 faca
 para j de 1 ate 3 faca
 resto<-m[i,j] mod 2
 se(resto=0) entao
 escreval("Linha:",i," Coluna:",j," Numero=",m[i,j])
 fimse
 fimpara
fimpara
escreval("Quantidade de numeros pares: ", qtpar)
 
 
 
fimalgoritmo
	A	resto<-m[i,j] mod 2
se(resto<>0) entao
 qtimpar<-qtimpar+1
fimse
	B	resto<-m[i,j] mod 2
se(resto<>0) entao
 qtimpar<-qtimpar+m[i,j]
fimse
	C	resto<-m[i,j] mod 2
se(resto=~0) entao
 qtimpar<-qtimpar+1
fimse
	D	resto<-m[i,j] mod 2
se(resto=0) entao
 qtimpar<-qtimpar+1
fimse
10) Para o algoritmo abaixo, qual melhor código a ser inserido antes do final do algoritmo para SOMAR os números positivos e os números negativos e apresentar as respectivas somas?
algoritmo "vetores"
var
 i,j,k,n : inteiro
 v: vetor [1..50] de real
 vp: vetor [1..50] de real
 vn: vetor [1..50] de real
 aux: real
inicio
//seção de comandos
 
 escreval("Digite o número de elementos do vetor:")
 leia(n)
 para i de 1 ate n faca
 escreval("Digite um numero qualquer:")
 leia(v[i])
 fimpara
 limpatela
 k<-0
 j<-0
 para i de 1 ate n faca
 se (v[i]>0) entao
 k<-k+1
 vp[k]<-v[i]
 senao
 j<-j+1
 vn[j]<-v[i]
 fimse
 fimpara
 escreval("Positivos:")
 para i de 1 ate j faca
 escreval(vp[i])
 fimpara
 
 escreval("Negativos:")
 para i de 1 ate k faca
 escreval(vn[i])
 fimpara
fimalgoritmo
	A	positivos<-0
 negativos<-0
 escreval("Positivos:")
 para i de 1 ate j faca
 escreval(vp[i])
 positivos<-positivos+1
 fimpara
 
 escreval("Negativos:")
 para i de 1 ate k faca
 escreval(vn[i])
 negativos<-negativos+1
 fimpara
 
 escreval(“Total de Positivos:”,positivos)
 escreval(“Total de Negativos:,negativos)
	B	positivos<-0
 negativos<-0
 escreval("Positivos:")
 para i de 1 ate j faca
 escreval(vp[i])
 positivos<-positivos+vp[i]
 fimpara
 
 escreval("Negativos:")
 para i de 1 ate k faca
 escreval(vn[i])
 negativos<-negativos+vn[i]
 fimpara
 
 escreval(“Soma Positivos:”,positivos)
 escreval(“Soma Negativos:",negativos)
	C	 positivos<-0
 negativos<-0
 escreval("Positivos:")
 para i de 1 ate j faca
 escreval(vp[i])
 fimpara
 
 escreval("Negativos:")
 para i de 1 ate k faca
 escreval(vn[i])
 fimpara
 
 escreval(“Total de Positivos:”,positivos)
 escreval(“Total de Negativos:,negativos)
	D	escreval("Positivos:")
 para i de 1 ate j faca
 escreval(vp[j])
 positivos<-positivos+vp[i]
 fimpara
 
 escreval("Negativos:")
 para i de 1 ate k faca
 escreval(vn[k])
 negativos<-negativos+vn[i]
 fimpara
 
 escreval(“Total de Positivos:”,positivos)
 escreval(“Total de Negativos:,negativos)

Outros materiais