Buscar

logica.pdf

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 515 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 515 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 515 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

Questão 1/5 - Lógica de Programação e Algoritimos 
Para o código que contém as funções abaixo, qual seria o resultado de uma entrada de 
dados que atribui o valor “16” para a variável valor? 
 
 
r<-Raizq(valor) 
potencia<-exp(r, 3) 
escreval("O resultado da operação e: “, potencia) 
 A 4 
 B 12 
 C 48 
 D 64 
 E 68 
Questão 2/5 - Lógica de Programação e Algoritimos 
Analise o código do algoritmo abaixo e assinale a alternativa que relaciona todas as 
funções pré-definidas utilizadas? 
 
 
 qt_carc<-Compr(nome) 
 espaco<-Pos(" ",nome) 
 x<-Copia(nome,espaco+1,qt_carc) 
 retorne x 
 A Compr, Pos 
 B Pos, Copia 
 C Compr, Pos, Copia 
 D Compr, Pos 
 E Nome, Compr, Pos, Copia 
0:08:47 
Questão 3/5 - Lógica de Programação e Algoritimos 
Considerando o bloco de código de um algoritmo mostrado abaixo qual 
seria a alternativa adequada para substituí-lo? 
 
preco[1]<-150.00 
preco [2]<-250.00 
preco[3]<-10.00 
preco [4]<-40.00 
preco[5]<-120.00 
preco [6]<-500.00 
preco[7]<-12.00 
preco [8]<-13.00 
 A n<-8 
 para i de 1 ate n faca 
 leia(preco(i)) 
 fimpara 
 B n<-8 
 para i de 1 ate n faca 
 leia(preco[i]) 
 fimpara 
 C para i de 1 ate n faca 
 leia(preco(k)) 
fimpara 
 D para i de 1 ate n faca 
 leia(preco) 
fimpara 
 E para j de 1 ate n faca 
 leia(preco) 
fimpara 
0:09:04 
Questão 4/5 - Lógica de Programação e Algoritimos 
Avalie o bloco de código de um algoritmo mostrado abaixo, e selecione a 
alternativa adequada para substituí-lo. 
 
preco[1,1]<-1 
preco [1,2]<-2 
preco[1,3]<-3 
preco [1,4]<-4 
preco[2,1]<-23.00 
preco [2,2]<-500.00 
preco[2,3]<-12.00 
preco [2,4]<-13.00 
 A para i de 1 ate 2 faca 
 para j de 1 ate 4 faca 
 leia(preco[i,j]) 
 fimpara 
fimpara 
 B para i de 2 ate 1 faca 
 para j de 4 ate 1 faca 
 leia(preco(i,j)) 
 fimpara 
fimpara 
 C para i de 1 ate 2 faca 
 para j de 1 ate 4 faca 
 leia(preco[j,i]) 
 fimpara 
fimpara 
 D para i de 1 ate 2 faca 
 para j de 1 ate 4 faca 
 leia(preco[i]) 
 fimpara 
fimpara 
 E para i de 1 ate 2 faca 
 leia(preco[i]) 
 fimpara 
0:09:20 
Questão 5/5 - Lógica de Programação e Algoritimos 
No algoritmo abaixo quantas linhas com asteriscos serão mostradas na 
tela? 
 
 
algoritmo "Procedimento" 
var 
x:caracter 
 
procedimento linha 
var 
 
inicio 
 
 escreval("******************************************************") 
 escreval("") 
 
fimprocedimento 
 
 
inicio 
// Seção de Comandos 
 
 
escreval("***** Titulo *****") 
escreval("") 
 
linha 
leia(x) 
linha 
escreval(x) 
linha 
linha 
 
fimalgoritmo 
 A Duas 
 B Quatro 
 C Três 
 D Nenhuma 
 E Cinco 
 
APOL 03 – LOGICA DE PROGRAMACAO E ALGORITIMOS 
 
Questão 1/10 
Para a parte de programa abaixo, com m=3 e n=3, qual seria a saída? 
leia(m,n) 
para i de 1 ate m faca 
 para j de 1 ate n faca 
 se(j=1) entao 
 matriz[i,j]<-1 
 senao 
 matriz[i,j]<-0 
 fimse 
 fimpara 
fimpara 
 
 
 A 
1 0 0 
1 1 0 
0 1 1 
 
 
 B 
1 0 0 
1 0 0 
1 0 0 
 
 
 C 
1 1 1 
1 0 0 
1 0 0 
 
 
 D 1 1 1 
0 0 0 
0 0 0 
 
 
 
Questão 2/10 
Para o algoritmo abaixo, qual a melhor substituição para que o programa execute n 
vezes a repetição: 
algoritmo "prog2" 
var 
x, idade,crianca,preadole,adolescente,adulto: inteiro 
 
inicio 
// Seção de Comandos 
 
para x de 1 ate 10 faca 
 escreva("Digite uma idade: ") 
 leia(idade) 
 se idade<=11 entao 
 crianca<-crianca+1 
 fimse 
 
 se (idade>11) e (idade<=14) entao 
 preadole<-preadole+1 
 fimse 
 se (idade>14) e (idade<=17) entao 
 adolescente<-adolescente+1 
 fimse 
 se idade >= 18 entao 
 adulto<-adulto+1 
 fimse 
fimpara 
 escreval("*** Totais por faixa-etária ***") 
 escreval("Número de criancas: ",crianca) 
 escreval("Número de pre-adolescentes: ",preadole) 
 escreval("Número de adolescentes: ",adolescente) 
 escreval("Número de adultos: ",adulto) 
fimalgoritmo 
 
 A 
1. var 
x, idade,crianca,preadole,adolescente,adulto: inteiro 
 
inicio 
// Seção de Comandos 
escreval("Digite a quantidade de entradas:") 
leia(qt) 
para x de 1 ate qt faca 
 
 
 B 
1. var 
x, idade,crianca,preadole,adolescente,adulto,qt: inteiro 
 
inicio 
// Seção de Comandos 
escreval("Digite a quantidade de entradas:") 
leia(“qt”) 
para x de 1 ate qt faca 
 
 
 C 
1. var 
x, idade,crianca,preadole,adolescente,adulto,qt: inteiro 
 
inicio 
// Seção de Comandos 
escreval("Digite a quantidade de entradas:") 
para x de 1 ate qt faca 
 
 
 D 
1. var 
x, idade,crianca,preadole,adolescente,adulto,qt: inteiro 
 
inicio 
// Seção de Comandos 
escreval("Digite a quantidade de entradas:") 
leia(qt) 
para x de 1 ate qt faca 
 
 
Você acertou! 
 
Questão 3/10 
Para o algoritmo abaixo, como calcular os percentuais de cada idade-sexo (substituir o 
quadro)? 
algoritmo "prog4" 
var 
x, idade,qt,fem_maior, fem_menor,masc_maior, masc_menor: inteiro 
sexo:caracter 
 
inicio 
// Seção de Comandos 
escreval("Digite a quantidade de entradas:") 
leia(qt) 
enquanto x < qt faca 
 
 escreva("Digite uma idade: ") 
 leia(idade) 
 escreva("Digite o sexo (f/m): ") 
 leia(sexo) 
 
 se (idade<18) e (sexo="f") entao 
 fem_menor<-fem_menor+1 
 fimse 
 
 se (idade<18) e (sexo="m") entao 
 masc_menor<-masc_menor+1 
 fimse 
 
 se (idade>=18) e (sexo="f") entao 
 fem_maior<-fem_maior+1 
 fimse 
 
 se (idade>=18) e (sexo="m") entao 
 masc_maior<-masc_maior+1 
 fimse 
 
 
x<-x+1 
fimenquanto 
 
 escreval("*** Totais por faixa-etária e sexo ***") 
 escreval("Número de meninas: ",fem_menor) 
 escreval("Número de mulheres: ",fem_maior) 
 escreval("Número de meninos: ",masc_menor) 
 escreval("Número de homens: ",masc_maior) 
+----------------------------------------+ 
| | 
| | 
| | 
| | 
| | 
+----------------------------------------+ 
fimalgoritmo 
 A 
 escreval("% de meninas: ",fem_menor*10/qt," %") 
 escreval("% de mulheres: ",fem_maior*10/qt," %") 
 escreval("% de meninos: ",masc_menor*10/qt," %") 
 escreval("% de homens: ",masc_maior*10/qt," %") 
 B 
 escreval("% de meninas: ",fem_menor/qt," %") 
 escreval("% de mulheres: ",fem_maior/qt," %") 
 escreval("% de meninos: ",masc_menor/qt," %") 
 escreval("% de homens: ",masc_maior/qt," %") 
 C 
 escreval("% de meninas: ",fem_menor*100/x-qt," %") 
 escreval("% de mulheres: ",fem_maior*100/ x-qt," %") 
 escreval("% de meninos: ",masc_menor*100/ x-qt," %") 
 escreval("% de homens: ",masc_maior*100/ x-qt," %") 
 D 
 escreval("% de meninas: ",fem_menor*100/qt," %") 
 escreval("% de mulheres: ",fem_maior*100/qt," %") 
 escreval("% de meninos: ",masc_menor*100/qt," %")escreval("% de homens: ",masc_maior*100/qt," %") 
Você acertou! 
 
Questão 4/10 
Para um vetor v1 de tamanho 10, qual seria a lógica mais adequada para fazer a entrada, 
via teclado, de cada elemento? 
 
 
 
 A 
para i de 1 ate 10 faca 
 escreval("Digite um numero qualquer:") 
 leia(v1[1]) 
 fimpara 
 
 
 B 
para i de 1 ate 10 faca 
 escreval("Digite um numero qualquer:") 
 leia(v1[i]) 
 fimpara 
Você acertou! 
 C 
para i de 1 ate 10 faca 
 escreval("Digite um numero qualquer:") 
 leia(v1[10]) 
 fimpara 
 D 
para i de 1 ate 10 faca 
 escreval("Digite um numero qualquer:") 
 leia(v1) 
 fimpara 
 
Questão 5/10 
Para um vetor v1 de tamanho 50, qual seria a melhor lógica para identificação do menor 
e do maior elemento? 
 
 
 A 
 para i de 1 ate 10 faca 
 se (v1[i]>maior) entao 
 maior<-v1[i] 
 fimse 
 
 se (v1[i]<menor) entao 
 menor<-v1[i] 
 fimse 
 
 fimpara 
 B 
 maior<-v1[1] 
 menor<-v1[1] 
 
 para i de 1 ate 10 faca 
 se (v1[i]>maior) entao 
 maior<-v1[i] 
 fimse 
 
 fimpara 
 C 
 maior<-v1[1] 
 menor<-v1[1] 
 
 para i de 1 ate 50 faca 
 se (v1[i]>maior) entao 
 maior<-v1[i] 
 fimse 
 
 se (v1[i]<menor) entao 
 menor<-v1[i] 
 fimse 
 
 fimpara 
Você acertou! 
 D 
 maior<-v1[1] 
 menor<-v1[1] 
 
 se (v1[i]>maior) entao 
 maior<-v1[i] 
 fimse 
 
 se (v1[i]<menor) entao 
 menor<-v1[i] 
 fimse 
 
 
 
Questão 6/10 
Para o algoritmo abaixo, identifique qual a parte de código preencheria a parte faltante 
(substitui o quadro): 
algoritmo "prog1" 
var 
x, idade,crianca,preadole,adolescente,adulto: inteiro 
 
inicio 
// Seção de Comandos 
para x de 1 ate 10 faca 
 escreva("Digite uma idade: ") 
 leia(idade) 
 se idade<=11 entao 
 crianca<-crianca+1 
 fimse 
+----------------------------------------+ 
| | 
| | 
| | 
| | 
| | 
+----------------------------------------+ 
 se (idade>14) e (idade<=17) entao 
 adolescente<-adolescente+1 
 fimse 
 se idade >= 18 entao 
 adulto<-adulto+1 
 fimse 
fimpara 
 escreval("*** Totais por faixa-etária ***") 
 escreval("Número de criancas: ",crianca) 
 escreval("Número de pre-adolescentes: ",preadole) 
 escreval("Número de adolescentes: ",adolescente) 
 escreval("Número de adultos: ",adulto) 
fimalgoritmo 
 
 
 A 
se (idade>12) e (idade<=14) entao 
 preadole<-preadole+1 
 fimse 
 B 
se (idade>=11) e (idade<=14) entao 
 preadole<-preadole+1 
 fimse 
 C 
se (idade>11) e (idade<=14) entao 
 preadole<-preadole+1 
 fimse 
Você acertou! 
Slides e material das Aulas 03 e 04. 
 D 
se (idade>11) e (idade<14) entao 
 preadole<-preadole+1 
 fimse 
 
Questão 7/10 
Para o algoritmo abaixo, qual a melhor substituição para que o programa utilize o 
comando enquanto-faca no lugar do para-faca? 
 
algoritmo "prog3" 
var 
x, idade,crianca,preadole,adolescente,adulto,qt: inteiro 
 
inicio 
// Seção de Comandos 
 
Escreval(“Digite a quantidade de entradas:”) 
leia(qt) 
 
para x de 1 ate qt faca 
 escreva("Digite uma idade: ") 
 leia(idade) 
 se idade<=11 entao 
 crianca<-crianca+1 
 fimse 
 
 se (idade>11) e (idade<=14) entao 
 preadole<-preadole+1 
 fimse 
 se (idade>14) e (idade<=17) entao 
 adolescente<-adolescente+1 
 fimse 
 se idade >= 18 entao 
 adulto<-adulto+1 
 fimse 
fimpara 
 escreval("*** Totais por faixa-etária ***") 
 escreval("Número de criancas: ",crianca) 
 escreval("Número de pre-adolescentes: ",preadole) 
 escreval("Número de adolescentes: ",adolescente) 
 escreval("Número de adultos: ",adulto) 
fimalgoritmo 
 
 
 A 
enquanto x < qt faca 
. 
. 
. 
x<-x+1 
fimenquanto 
 
 
Você acertou! 
 B 
enquanto x < qt faca 
. 
. 
. 
qt<-qt+1 
fimenquanto 
 
 
 C 
enquanto x < qt faca 
. 
. 
. 
x<-x+1 
fimepara 
 D 
enquanto x = qt faca 
. 
. 
. 
x<-x+1 
fimenquanto 
 
Questão 8/10 
Para o algoritmo abaixo, como colocar a exibição das totalizações (substituir o quadro)? 
 
algoritmo "prog4" 
var 
x, idade,qt,fem_maior, fem_menor,masc_maior, masc_menor: inteiro 
sexo:caracter 
 
inicio 
// Seção de Comandos 
escreval("Digite a quantidade de entradas:") 
leia(qt) 
enquanto x < qt faca 
 
 escreva("Digite uma idade: ") 
 leia(idade) 
 escreva("Digite o sexo (f/m): ") 
 leia(sexo) 
 
 se (idade<18) e (sexo="f") entao 
 fem_menor<-fem_menor+1 
 fimse 
 
 se (idade<18) e (sexo="m") entao 
 masc_menor<-masc_menor+1 
 fimse 
 
 se (idade>=18) e (sexo="f") entao 
 fem_maior<-fem_maior+1 
 fimse 
 
 se (idade>=18) e (sexo="m") entao 
 masc_maior<-masc_maior+1 
 fimse 
 
 
x<-x+1 
fimenquanto 
+----------------------------------------+ 
| | 
| | 
| | 
| | 
| | 
+----------------------------------------+ 
 
fimalgoritmo 
 A 
 escreval("*** Totais por faixa-etária e sexo ***") 
 escreval("Número de meninas: ",femmenor) 
 escreval("Número de mulheres: ",femmaior) 
 escreval("Número de meninos: ",mascmenor) 
 escreval("Número de homens: ",mascmaior) 
 
 
 B 
 escreval("*** Totais por faixa-etária e sexo ***") 
 escreval("Número de meninas: ",fem_menor) 
 escreval("Número de mulheres: ",fem_maior) 
 escreval("Número de meninos: ",masc_menor) 
 escreval("Número de homens: ",masc_maior) 
 
 
Você acertou! 
 C 
 escreval("*** Totais por faixa-etária e sexo ***") 
 escreval("Número de meninas: ",fem_menor) 
 escreval("Número de mulheres: ",fem_maior) 
 escreval("Número de mulheres: ",fem_menor) 
 escreval("Número de meninos: ",masc_menor) 
 
 
 D 
 escreval("*** Totais por faixa-etária e sexo ***") 
 escreval("Totais: ",fem_menor,fem_maior,masc_menor,masc_maior)0 
 
Questão 9/10 
Para a parte de programa abaixo, com m=3 e n=3, qual seria a saída? 
leia(m,n) 
para i de 1 ate m faca 
 para j de 1 ate n faca 
 se(i=j) entao 
 matriz[i,j]<-1 
 senao 
 matriz[i,j]<-0 
 fimse 
 fimpara 
fimpara 
 A 
1 0 0 
0 1 0 
0 0 1 
 B 
1 0 0 
1 0 0 
1 0 0C 
1 1 1 
1 0 0 
1 0 0 
 
 
 D 
1 1 1 
0 0 0 
0 0 0 
 
Questão 10/10 
Para um vetor v1 de tamanho 50, qual seria a lógica mais adequada para mostrar o 
valor dos elementos na tela? 
 
 
 A 
para i de 1 ate 50 faca 
 leia("v",i,": ",v1[i]) 
 fimpara 
 B para i de 1 ate 50 faca 
 leia (v1) 
 fimpara 
 C 
para i de 1 ate n faca 
 escreval("v",i,": ",v1) 
 fimpara 
 D 
para i de 1 ate 50 faca 
 escreval(v1[i]) 
 fimpara 
Você acertou! 
 
 
APOL 4 
 
 
 
Questão 1/10 
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("") 
fimpara 
fimalgoritmo 
 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 
 
Questão 2/10 
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 
 
Questão 3/10 
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 
 
Questão 4/10 
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 
 
Questão 5/10 
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. 
 
Questão 6/10 
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 
 
Questão 7/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 facaescreval(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) 
 
Questão 8/10 
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 
 
Questão 9/10 
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 
1. 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 
 
Questão 10/10 
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 
 
 
Questão 1/5 
Aproximando-nos da maneira pela qual o computador manipula as informações, os 
tipos primitivos básicos utilizados para construção de programas serão: 
 
I - Numéricos (Inteiro, Real) 
II - Caracter 
III - Objetos 
IV - Lógicos 
 
Considerando as respostas anteriores, qual o conjunto de Verdadeiros (V) e Falsos (F) 
corresponde à resposta correta? 
 A 
V,V,F,V 
 
 
Você acertou! 
 
Slide 05 da Aula 03. 
 
 
 
 B V,V,F,F 
 C V,F,F,V 
 D F,F,F,V 
 E V,F,F,F 
 Questão 2/5 
Para o algoritmo abaixo, identifique a ordem das principais etapas da construção do 
algoritmo: 
 
Qual a resposta correta para este algoritmo? 
 A 1-Entrada, 2-Saída, 3-Processamento 
 B 
1-Entrada, 2-Processamento, 3-Saída 
Você acertou! 
Slides e Vídeo-Aula 03. 
 C 1-Declaração de variáveis, 2-Entrada e Processamento, 3-Saída 
 D 1-Declaração de variáveis e Entrada, 2-Processamento, 3-Saída 
 E 1-Processamento, 2-Saída, 3-Entrada 
 Questão 3/5 
Quando iniciamos nosso algoritmo, precisamos definir nossas variáveis. Quais 
exemplos de nomes de variáveis abaixo estão corretos de acordo com as regras de 
definição de variáveis? 
 
I - 123x : inteiro 
II - nome, endereco : caracter 
III - peso, dolar : real 
IV - resposta : logicoQuais afirmativas corresponde ao conjunto de Verdadeiros(V) e 
Falsos(F) para a regra de construção e definição de variáveis? 
 A 
F,V,V,V 
Você acertou! 
Não podemos iniciar o nome de variáveis com números, logo, a variável 123x 
está definida de forma incorreta. 
 B F,V,V,F 
 C V,V,V,V 
 D F,V,F,F 
 E F,V,F,V 
 Questão 4/5 
Para o algoritmo abaixo, identifique nas alternativas a parte de código que, inserida na 
linha faltante, efetuaria o cálculo correto: 
Algoritmo expoente 
algoritmo "expon" 
// Função : Calcular um numero elevado a outro 
// Autor : Profa. Maristela. 
// Data : 12/03/2015 
// Seção de Declarações 
var 
 result, base, expo: real 
 
inicio 
// Seção de Comandos 
 escreval("Digite um valor para a base : ") 
 leia(base) 
 escreval("Digite um valor para o expoente : ") 
 leia(expo) 
 
 ____________________________ 
 
 escreval("") 
 escreva(base, " elevado a ",expo, " vale ", result) 
 
fimalgoritmo 
 A result<-base***expo 
 B result<-^base*expo 
 C 
result<-base^expo 
Você acertou! 
Slides e vídeoaula 03. 
 D result<-base*(expo)^2 
 E result<-base/(expo)^2 
 Questão 5/5 
Para o algoritmo abaixo, identifique qual a parte de código preencheria a lacuna em 
aberto: 
 
 
 
 A 
se (n1=n2) e (n1>n3) e (n2>n3) entao 
 escreva (" n1>n2>n3 ", n1,">", n2,">", n3)
 fimse 
 se (n1>n3) e (n1>n2) e (n3>n2) entao 
 escreva (" n1>n3>n2 ", n1,">", n3,">", n2) 
 fimse 
 B 
se (n1>n2) e (n1>n3) e (n2>n3) entao 
 escreva (" n1>n2>n3 ", n1,">", n2,">", n3)
 fimse 
 se (n1>n3) e (n1>n2) e (n3>n2) entao 
 escreva (" n1>n3>n2 ", n1,">", n3,">", n2) 
 fimse 
Você acertou! 
Slides e Vídeoaula 04 
 C 
se (n1>n2) e (n1=n3)e (n2<>n3) entao 
 escreva (" n1>n2>n3 ", n1,">", n2,">", n3)
 fimse 
 se (n1>n3) e (n1>n2) e (n3>n2) entao 
 escreva (" n1>n3>n2 ", n1,">", n3,">", n2) 
 fimse 
 D 
se (n1>n2) e (n1<n3) e (n2>n3) entao 
 escreva (" n1>n2>n3 ", n1,">", n2,">", n3)
 fimse 
 se (n1>n3) e (n1<n2) e (n3>n2) entao 
 escreva (" n1>n3>n2 ", n1,">", n3,">", n2) 
 fimse 
 E 
se (n1>n2) e (n2>n3) entao 
 escreva (" n1>n2>n3 ", n1,">", n2,">", n3)
 fimse 
 se (n1>n3) e (n1<n2) e (n3>n2) entao 
 escreva (" n1>n3>n2 ", n1,">", n2,">", n2) 
 fimse 
 
Questão 1/5 
O algoritmo a seguir faz o cálculo da área de um retângulo. 
 
01 algoritmo "Retangulo" 
02 // Seção de Declarações 
03 var 
04 base, altura, area: real 
 
05 inicio 
06 // Seção de Comandos 
07 escreval("Digite o valor para a base: ") 
08 leia(base) 
09 escreval("Digite o valor para a altura: ") 
10 leia(base) 
 
11 area<-base*altura 
12 escreval("Area do retângulo=", altura) 
 
13 fimalgoritmo 
 
Porém, há dois erros. Quais seriam os erros? 
 A Na linha 10 deveria ser: leia(altura). 
Na linha 12 deveria ser: escreval("Area do retângulo=", area) 
 B Na linha 08 deveria ser: leia(altura). 
Na linha 12 deveria ser: escreval("Area do retângulo=", area) 
 C Na linha 11 deveria ser área=base*altura. 
Na linha 12 deveria ser: escreval("Area do retângulo=", area) 
 D Na linha 04 deveria ser: real: base, altura, area 
Na linha 12 deveria ser: escreval("Area do retângulo=", area) 
 E Na linha 10 deveria ser: leia(area). 
Na linha 13 deveria ser: escreval("Area do retângulo=", area) 
Questão 2/5 
O algoritmo a seguir resolve uma equação de segundo grau. 
 
 
01 algoritmo "eqSegundoGrau" 
02 // Função : Resolver uma equação de segundo grau 
03 // Autor : 
04 // Seção de Declarações 
05 var 
 06 a,x,c, delta : inteiro 
 07 x1,x2 : real 
 
08 inicio 
09// Seção de Comandos 
 10 escreva("Digite um valor para a:") 
 11 leia(a) 
 12 escreva("Digite um valor para b:") 
 13 leia(b) 
 14 escreva("Digite um valor para c:") 
 15 leia(c) 
 
 16 se (a=0) entao 
 17 escreva("Impossível de realizar operação") 
 18 senao 
 
 19 delta<-((b*b)-4*(a*c)) 
 20 se (delta>=0) entao 
 21 x1<-( (-b+ RaizQ(delta)) /2*a) 
 22 x2<-( (-b- RaizQ(delta)) /2*a) 
 23 escreva("x1=",x1) 
 24 escreva("x2=",x1) 
 25 senao 
 26 escreva("Equação não tem raízes, delta<0") 
 27 fimse 
 
 28 fimse 
 
29 fimalgoritmo 
Porém, há dois erros. Quais seriam os erros? 
 
Observação: Lembrando que RaizQ é uma função pré-definida no VisuALG e está 
correto o seu uso. 
 A As linhas 25 e 26 estão erradas. Não deveria aparecer tal mensagem. 
Na linha 19 deveria ser: b<-((b*3)-4*(a*c)) 
 B Na linha 06 deveria ser: a,b,c, delta : inteiro 
Na linha 24 deveria ser: escreva("x2=",x2) 
 C Na linha 04 deveria ser: inteiro: a,b,c, delta 
Na linha 19 deveria ser: delta<-((b*2)-4*(a*c)) 
 D Na linha 04 deveria ser: inteiro: a,b,c, delta 
Está faltando um fimse na linha 25 
 E Na linha 10 deveria ser: leia(area). 
Está faltando um fimse na linha 25 
Questão 3/5 
Para o algoritmo abaixo, identifique qual a parte de código preencheria a 
parte faltante (substitui o quadro): 
 
 
algoritmo "prog1" 
var 
x, idade,crianca,preadole,adolescente,adulto: inteiro 
 
inicio 
// Seção de Comandos 
para x de 1 ate 10 faca 
 escreva("Digite uma idade: ") 
 leia(idade) 
 se idade<=11 entao 
 crianca<-crianca+1 
 fimse 
 
+----------------------------------------+ 
| | 
| | 
| | 
| | 
| | 
+----------------------------------------+ 
 se (idade>14) e (idade<=17) entao 
 adolescente<-adolescente+1 
 fimse 
 se idade >= 18 entao 
 adulto<-adulto+1 
 fimse 
fimpara 
 escreval("*** Totais por faixa-etária ***") 
 escreval("Número de criancas: ",crianca) 
 escreval("Número de pre-adolescentes: ",preadole) 
 escreval("Número de adolescentes: ",adolescente) 
 escreval("Número de adultos: ",adulto) 
fimalgoritmo 
 A se (idade>12) e (idade<=14) entao 
 preadole<-preadole+1 
 fimse 
 B se (idade>=11) e (idade<=14) entao 
 preadole<-preadole+1 
 fimse 
 C se (idade>11) e (idade<=14) entao 
 preadole<-preadole+1 
 fimse 
 D se (idade>11) e (idade<14) entao 
 preadole<-preadole+1 
 fimse 
 E se (idade>11) e (idade<24) entao 
 preadole<-preadole+1 
 fimse 
Questão 4/5 
A estrutura de repetição é utilizada quando se sabe o número de vezes em 
que um trecho do algoritmo deve ser repetido. 
Uma das estruturas de repetição utiliza um número definido de 
repetições.Qual seria a melhor estrutura para uma repetição com número 
definido de repetições? 
 A PARA <variável> de ate [passo ] faca <seqüência-de-comandos> 
fimpara 
 B PARA <variável> de ate [passo ] faca <seqüência-de-comandos> 
fimse 
 C PARAENQUANTO <variável> de ate [passo ] faca <seqüência-de-comandos> 
fimpara 
 D SEENQUANTO para <variável> de ate [passo ] faca <seqüência-de-comandos> 
fimse 
 E DE <variável> de ate [passo ] faca <seqüência-de-comandos> 
fimpara 
Questão 5/5 
Na lógica de programação temos várias estruturas: sequência, seleção e 
repetição. 
Numa seleção, possuímos algumas variações, como a seleção composta 
por exemplo.Qual seria a estrutura correta para seleção composta? 
 A se <condição> entao Comandos 
 senao Comandos 
fimse 
 B caso <condição> entao Comandos 
 senao Comandos 
fimse 
 C se <condição> entao Comandos 
fimse 
 senao Comandos 
fimse 
 D se <condição> entao Comandos 
fimse 
se <condição> 
 entao Comandos 
fimse 
 E se <condição> entao Comandos 
fimcondicao 
se <condição> 
 entao Comandos 
fimcondicao 
1A 2B 3C 4A 5A 
 
Questão 1/5 - Lógica de Programação e Algoritimos 
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 
Nota: 20.0 
 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 
 E 
1 2 3 
3 4 5 
5 6 7 
 Questão 2/5 - Lógica de Programação e Algoritimos 
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çãodo 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 
Nota: 20.0 
 A 
var 
 i,n,posicao : inteiro 
 valor:real 
 v: vetor [1..50] de real 
Você acertou! 
 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 
 E 
var 
 y,x: inteiro 
 valor:real 
 v1: vetor [1..50] de real
 Questão 3/5 - Lógica de Programação e Algoritimos 
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 
Nota: 20.0 
 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 
Você acertou! 
 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 
 E 
x<-0 
j<-0 
para i de 1 ate n faca 
 se (v[i]>0) entao 
 vp[k]<-v[x] 
 senao 
 vn[j]<-v[i] 
 fimse 
 
 fimpara 
 Questão 4/5 - Lógica de Programação e Algoritimos 
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 
Nota: 20.0 
 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 "v", definindo a quantidade de elementos de cada um 
destes vetores. 
Você acertou! 
 B As variáveis k e j são utilizadas para acumular a soma dos valores positivos e negativos do vetor "v".
 C As variáveis k e j são utilizadas para separar os valores dos números positivos e negativos do vetor "v".
 D As variáveis k e j são utilizadas como contéudos dos vetores "vp" - valores positivos e "vn" - valores negativos.
 E As variáveis k e j são utilizadas como contéudos dos vetores "vp" - valores positivos e "vn" - valores ímpares.
 Questão 5/5 - Lógica de Programação e Algoritimos 
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("") 
fimpara 
 
fimalgoritmo 
Nota: 20.0 
 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 
Você acertou! 
 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 
 E 
1 2 3 4 5 
2 4 5 6 7 
3 5 6 7 8 
4 6 7 8 9 
15 17 18 19 20 
 
16/04/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/55295/novo/1 1/19
APOL 4
PROTOCOLO: 201603101260111712CD7JOSÉ CARLOS CANTARINI FILHO - RU: 1260111 Nota: 100
Disciplina(s):
Lógica de Programação e Algoritmos
Data de início: 10/03/2016 12:54
Prazo máximo entrega: - 
Data de entrega: 10/03/2016 13:17
Questão 1/10
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("")
16/04/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/55295/novo/1 2/19
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
Questão 2/10
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
Você acertou!
16/04/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/55295/novo/1 3/19
      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
16/04/2016 AVAUNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/55295/novo/1 4/19
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
Você acertou!
16/04/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/55295/novo/1 5/19
5 
 
1
2
3
4
5
 
100
3
 
1
2
3
4
5
100
100
100
Questão 3/10
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
 
16/04/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/55295/novo/1 6/19
   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.
Questão 4/10
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
Você acertou!
16/04/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/55295/novo/1 7/19
 
  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
16/04/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/55295/novo/1 8/19
 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
Você acertou!
16/04/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/55295/novo/1 9/19
1. 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
Questão 5/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 
16/04/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/55295/novo/1 10/19
   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
16/04/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/55295/novo/1 11/19
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
Você acertou!
16/04/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/55295/novo/1 12/19
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)
Questão 6/10
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
16/04/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/55295/novo/1 13/19
  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
33 3
D 1 1 1 
3 3 3
5 5 5
Questão 7/10
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
Você acertou!
16/04/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/55295/novo/1 14/19
  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
Questão 8/10
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
 
Você acertou!
16/04/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/55295/novo/1 15/19
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
Você acertou!
16/04/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/55295/novo/1 16/19
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 
Questão 9/10
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
 
16/04/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/55295/novo/1 17/19
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 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
Questão 10/10
Para o algoritmo abaixo, qual a melhor declaração de variáveis? 
algoritmo "vetores"
inicio
Você acertou!
Conforme apresentado no material e videoaulas .

16/04/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/55295/novo/1 18/19
//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
Você acertou!
16/04/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/55295/novo/1 19/19
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
01/06/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/64038/novo/1 1/19
APOL 4
PROTOCOLO: 20160509128495285CF7BDIEGO DANTAS ANDRADE - RU: 1284952 Nota: 90
Disciplina(s):
Lógica de Programação e Algoritmos
Data de início: 09/05/2016 13:20
Prazo máximo entrega: - 
Data de entrega: 17/05/2016 04:00
Questão 1/10
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("")
01/06/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/64038/novo/1 2/19
fimpara
 
fimalgoritmo
A 2 3 
2 3
B 2 1 
2 1
C 2 0 
2 0
D 4 2 
4 2
Questão 2/10
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
01/06/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/64038/novo/1 3/19
      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
01/06/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/64038/novo/1 4/19
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
Você acertou!
01/06/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/64038/novo/1 5/19
5 
 
1
2
3
4
5
 
100
3
 
1
2
3
4
5
100
100
100
Questão 3/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
01/06/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/64038/novo/1 6/19
   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
01/06/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/64038/novo/1 7/19
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) 
Você acertou!
01/06/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/64038/novo/1 8/19
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)
Questão 4/10
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)
   
01/06/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/64038/novo/1 9/19
   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
Questão 5/10
Para o algoritmo abaixo, qual deveria ser o resultado exibido para uma matriz 3X3? 
algoritmo "matriz"
 
Você acertou!
01/06/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/64038/novo/1 10/19
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
Você acertou!
01/06/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/64038/novo/1 11/19
2 2 2 
2 2 2
3 3 3
D 1 1 1 
3 3 3
5 5 5
Questão 6/10
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
01/06/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/64038/novo/1 12/19
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
Questão 7/10
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])
Você acertou!
01/06/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/64038/novo/1 13/19
   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:")
01/06/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/64038/novo/1 14/19
   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.
Questão 8/10
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
Você acertou!
01/06/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/64038/novo/1 15/19
 
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 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
Questão 9/10
Para o algoritmo abaixo, qual é o código mais adequado a incluir para calcular a quantidade de números ímpares? 
Você acertou!
Conforme apresentado no material e videoaulas .

01/06/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/64038/novo/1 16/19
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
01/06/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/64038/novo/1 17/19
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 
Questão 10/10
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)
Você acertou!
01/06/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/64038/novo/1 18/19
   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
01/06/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/64038/novo/1 19/19
   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 1. 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
Você acertou!
10/07/2015 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/25231/novo/1 1/19
APOL 4
PROTOCOLO: 201506271129878307E93BRUNO LUIZ HENRIQUE - RU: 1129878 Nota: 100
Disciplina(s):
Lógica de Programação e Algoritmos
Data de início: 27/06/2015 22:21
Prazo máximo entrega: - 
Data de entrega: 29/06/2015 21:16
Questão 1/10
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
+-----------------------------------------------------------------------------------------------------------------------
--------+
+-----------------------------------------------------------------------------------------------------------------------
--------+
10/07/2015 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/25231/novo/1 2/19
   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
Você acertou!
°
10/07/2015 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/25231/novo/1 3/19
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 1. 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
Questão 2/10
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:")
10/07/2015 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/25231/novo/1 4/19
     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

Outros materiais