Buscar

Prova - Lógica de Programação (comentada)

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

Prévia do material em texto

1) Realize o teste de mesa com o algoritmo abaixo e assinale a alternativa que 
contém o valor final da variável num. 
 
X <- 10 //nesse algoritmo x é a contagem, portanto x começa como 10 
Num <- 0 //num é o resultado da soma dele mesmo com x mas começa como 0 
Enquanto (x>=1) faca 
Num<-num+x 
x <- x – 1 //sempre subtrair x por –1, pois nesse algoritmo o 1 é fixo. 
fimenquanto 
escreval(num) 
 
Teste de mesa: 
0<-0+10 = 10 (0 + 10 = 10, portanto num passa a ser 10) 
10 <- 10 – 1 = 9 (agora começa a contagem regressiva até que x seja maior ou 
igual a 1) 
10<-10+9 = 19 
9<- 9 – 1 = 8 
E assim sucessivamente... 
54<-54+1 = 55 
1<-1 – 1 = 0 (0 é menor e não é igual a 1, então acaba aqui.) 
 
(A) erro. 
(B) 10. 
(C) 50. 
(D) 55. 
(E) 45. 
 
 
 
 
 
 
 
2) Faça um algoritmo para ler e somar dois vetores inteiros de 15 posições. 
Ao final imprimir um vetor com o resultado da soma dos dois vetores lidos. 
 
Separe as variáveis da pergunta 
Os três vetores, VETOR 1, VETOR 2 e VETOR 3 – chamaremos de V1, V2 e 
V3 e o i (para a soma). 
Por que V3 se a questão pede dois vetores? 
Se analisar bem o vetor V1 ou V2 não vão imprimir corretamente o resultado da 
soma, pois eles estão armazenando os valores lidos. 
 
Var //na prova não precisa colocar, mas é sempre bom caso esqueça de algo... 
V1,V2,V3: Vetor[1..15] de inteiro 
i: inteiro // se colocar junto com os vetores o contador vira um vetor 
Inicio 
Para i de 1 ate 15 faca //esse primeiro „para‟ você deixa para ler os vetores 
Leia (V1[i]) // cada vetor vai receber 15 números 
Leia (V2[i]) // o contador i sempre em colchete 
Fimpara // lembre-se sempre de fechar o Para 
Para i de 1 ate 15 faca // nesse segundo „para‟ vamos fazer a operação pedida 
V3[i]<- V1[i]+V2[i] // o V3 vai receber a soma dos vetores V1 e V2 ou seja se o 
V1[na posição 1] estiver com 15 e o V2 [na posição 1] com 10 vai ser 
armazenado o resultado 15+10=25 no V3[na posição1] 
Escreval (“Resultado”,V3[i]) //aqui vai imprimir o resultado 
Fimpara 
Fimalgoritmo 
 
 
 
 
 
 
 
 
3) Faça um algoritmo que leia os valores de uma matriz de ordem 15x15 de 
inteiros. Após isso calcule e imprima a média dos valores de sua diagonal 
principal (onde a linha é igual a coluna). 
 
Var 
matriz: vetor[1..15,1..15] de inteiro 
L,C,soma:inteiro //o contador esta como L de linha e C de coluna, a soma é um 
dos requisitos para achar a média 
media: real //media „real‟ por causa dos números quebrados do resultado. 
 
Inicio 
Soma<-0 //indica que soma é começa como 0. 
Para L de 1 ate 15 faca //primeiro „para‟ vai percorrer a linha 
 Para C de 1 ate 15 faca //segundo „para‟ vai percorrer a coluna 
Leia (matriz[L,C]) //vai receber 15 números para L(linha) e também C(coluna). 
Fimpara 
Fimpara //abriu 2 Para feche com 2 Fimpara 
Para L de 1 ate 15 faca 
 Para C de 1 ate 15 faca 
Se L = C entao //ou seja, se o contador da linha for igual ao da coluna ele é 
uma diagonal principal então, soma. 
soma<-soma+matriz[L,C] //primeiro somar todos os números da diagonal 
principal 
Fimse 
Fimpara 
Fimpara 
media<-soma/15 //A média da diagonal principal é a soma de todos os 
números dessa diagonal, dividido pela quantidade de números da diagonal 
principal, exemplo matriz[linha1,coluna1] , matriz[linha2,coluna,2]. 
Escreval(“Media:”,media) //Imprimir a média 
Fimalgoritmo 
4) Faça um algoritmo para ler e somar duas matrizes de inteiros. Ao final 
imprimir a matriz com o resultado da soma. 
 
Var 
M1,M2,M3:Vetor[1..5,1..5] de inteiro //A pergunta não tem o valor da matriz 
então posso colocar qualquer numero. 
L,C:inteiro //Contadores L= linha, C=coluna 
 
Inicio 
Para L de 1 ate 5 faca 
 Para C de 1 ate 5 faca 
Leia (M1[L,C]) //receber numero da Linha e Coluna Matriz1 
Leia (M2[L,C]) //receber numero da Linha e Coluna Matriz2 
Fimpara 
Fimpara 
Para L de 1 ate 5 faca 
Para C de 1 ate 5 faca 
M3[L,C]<- M1[L,C]+M2[L,C] //Armazenar a soma das matrizes em outra matriz 
Escreval("Resultado da M1[L,C] + M2[L,C]",M3[L,C]) //Exemplo Matriz1[1,1] = 
10 + Matriz2[1,1] = 20 portanto Matriz3[1,1] = 30. Quando imprimir uma matriz 
com outra, deve estar dentro do Para. 
Fimpara 
Fimpara 
Fimalgoritmo 
 
 
 
 
 
 
 
 
 
 
5) Faça um algoritmo que receba dois números e ao final mostre a soma, 
subtração, multiplicação e a divisão dos números lidos. 
 
Opção1 
Var 
n1,n2:real //variável está em „real‟ por causa do resultado da multiplicação e 
divisão com números quebrados. 
 
Inicio 
Leia(n1) 
Leia(n2) 
Escreval(“Soma:”,n1+n2) 
Escreval(“Subtração:”,n1-n2) 
Escreval(“Multiplicação:”,n1*n2) 
Escreval(“Divisão:”,n1/n2) 
Fimalgoritmo 
 
Opção2 
Var 
n1,n2,Divi,Multi,Soma,Sub:real 
 
Inicio 
Leia(n1) 
Leia(n2) 
Soma<- n1+n2 
Sub<- n1-n2 
Multi<- n1*n2 
Divi<- n1/n2 
Escreval (“Soma:”, Soma) 
Escreval (“Subtração:”, Sub) 
Escreval (“Multiplicação:”, Multi) 
Escreval (“Divisão:”, Divi) 
Fimalgoritmo

Materiais relacionados

Perguntas relacionadas

Materiais recentes

Perguntas Recentes