4
Introdução à Lógica e Programação
UFABC
4
Introdução à Lógica e Programação
UFABC
6
Introdução à Lógica e Programação
UFABC
5
Introdução à Lógica e Programação
UFABC
25
Introdução à Lógica e Programação
UFABC
23
Introdução à Lógica e Programação
UFABC
56
Introdução à Lógica e Programação
UFABC
36
Introdução à Lógica e Programação
UFABC
44
Introdução à Lógica e Programação
UFABC
5
Introdução à Lógica e Programação
UFABC
Texto de pré-visualização
Universidade Federal do ABC Bacharelado em Ciˆencia e TecHum e Licenciaturas Disciplina Processamento da Informacao Prof Maria das Gracas Marietto VALERIO BATISTA Ass Estudante Luana Gomes da Silva IDRA 11201723119 363 20220817 183351 Instrucoes a Essa Prova tem pontuacao maxima de 100 pontos 4 exercıcios 25 pontos cada b Vocˆe pode editar mudar salvar e avaliar o codigo de um certo exercıcio da Prova quantas vezes desejar porem a pontuacao que lhe sera atribuıda correspondera a pontuacao da ultima versao de seu codigo que vocˆe salvou e avaliou dentro do prazo c Importante os arquivos de cada questao devem ser nomeados EXATAMENTE assim Q1 Q2 onde e a extensao da linguagem de programacao escolhida d Desenvolva cada questao instrucao por instrucao com a sua logica de programacao sem utilizar bibliotecas prontas e Submeta as respostas no Moodle na atividade Prova 2 f O prazo de entrega dessa Prova e 2008 as 19h Questoes Dissertativas v80 1969 1 Escreva um programa que dado um vetor X de n numeros inteiros e o numero inteiro k 13 determine todos os pares de X em posicoes distintas cuja soma e igual a k Ou seja o programa deve verificar para cada elemento i de X se sua soma com cada elemento seguinte satisfaz Xi Xj k Assim seu programa deve a Ler o valor de n que representa o tamanho do vetor X b Ler n valores inteiros e armazenalos em X c Imprimir as posicoes i j e os respectivos conteudos que satisfazem a Xi Xj k conforme exemplo de saıda de dados exibido adiante O programa deve ainda imprimir quantos elementos multiplos de 5 existem no vetor X conforme exemplo de saıda de dados exibido adiante Exemplo de Entrada de Dados 15 6 1 9 9 3 5 2 2 2 4 7 4 1 6 4 Exemplo de Saıda de Dados para a entrada de dados acima Note que o primeiro par i j sao os ındices do vetor e o segundo par a b sao os conteudos do vetor Lista dos elementos cuja soma 13 010 67 29 94 211 94 214 94 39 94 MCTest gerador e corretor de exames disponıvel para professores wwwufabcedubr 311 94 314 94 1013 76 Multiplos de 5 1 1971 2 Joao e Maria jogam o seguinte jogo em um tabuleiro de xadrez de tamanho n por n Em cada casa do tabuleiro Joao coloca alguns graos de milho Maria entao deve adivinhar se ha mais graos de milho nas casas pretas ou nas casas brancas Faca um programa que ajuda Maria o seu programa deve ler n um inteiro par de 2 a 18 Em seguida vocˆe deve ler uma matriz A de tamanho n por n onde Aij e o numero de graos de milho na posicao i j do tabuleiro A sua resposta deve ser impressa em uma unica linha contendo trˆes numeros separados por espacos em brancos o numero de graos em casas brancas o numero de graos em casas pretas e um numero r onde r 0 se o numero de graos em casas brancas for maior que o numero em casas pretas r 1 se o numero de graos em casas pretas e maior e r 2 se ha empate Neste tabuleiro a 1a casa 1a linha e 1a coluna de matriz sempre e branca Nao faca validacao de dados e nao imprima nenhuma mensagem ao usuario apenas imprima a resposta no seguinte modelo 2 este e o valor de n 1 3 2 5 Resposta 6 5 0 6 graos em casas brancas 5 em casas pretas r 0 Entrada de Dados 6 0 2 3 1 5 8 3 4 3 6 4 9 8 6 5 2 8 3 9 8 7 9 9 3 8 1 1 8 3 2 9 0 6 1 9 5 Saıda 18 18 2 1970 3 Um torneio classificatorio de vˆolei de praia e disputado no sistema todoscontratodos cada equipe enfrenta uma vez todos os possıveis adversarios por 6 equipes Ou seja no total ha 5 rodadas de jogos cada time joga com 5 equipes Uma equipe se classifica para a fase seguinte se vencer pelo menos 47 de suas partidas Os resultados dos jogos sao representados por uma matriz de inteiros em que cada linha da matriz representa uma equipe e cada coluna representa uma rodada do torneio Considere que em cada celula da matriz tem o dıgito 4 representando VITORIA e o dıgito 0 representando DERROTA Pedese a Definir valores constantes N 6 e M 5 Na hora de fazer os testes vocˆe pode mudar esse N para valores menores de modo a minimizar a digitacao b Definir uma matriz de N M de inteiros para representar os 6 times e 5 rodadas e armazenar os resultados c Criar uma funcao FLeMatriz para ler os elementos da matriz Nao e necessario que ela faca validacao de dados d Considerar que o dıgito 4 representa vitoria e 0 representa derrota ATENC AO utilize exatamente esses dois dıgitos para representar vitoria e derrota e Escrever uma funcao denominada FResultado que deve mostrar na tela para cada uma das N equipes se ela foi classificada ou eliminada no formato exemplificado abaixo note que a palavra final e classificada ou eliminada Seu programa deve continuar funcionando para matriz com N 100 e M 99 ou N 1000 e M 999 f DICA Implementar metodo de leitura de matriz na linguagem de programacao desejada Por exemplo para Python considerar o metodo FLeMatriz def FLeMatriz m lerlinha input while lerlinha enquanto linha nao for vazia mappendinti for i in lerlinhasplit if i lerlinha input return m Entrada de Dados 0 4 0 0 0 0 0 0 0 0 4 0 0 4 4 0 0 4 4 4 0 0 0 0 4 0 4 4 0 4 Saıda Equipe 0 com 1 vitorias e 20 de aproveitamento eliminada Equipe 1 com 0 vitorias e 0 de aproveitamento eliminada Equipe 2 com 3 vitorias e 60 de aproveitamento classificada Equipe 3 com 3 vitorias e 60 de aproveitamento classificada Equipe 4 com 1 vitorias e 20 de aproveitamento eliminada Equipe 5 com 3 vitorias e 60 de aproveitamento classificada 1972 4 Dizemos que uma sequˆencia de n numeros inteiros com n par e balanceada para mais se as seguintes somas formam uma sequˆencia crescente a soma do maior elemento com o menor elemento a soma do segundo maior elemento com o segundo menor elemento a soma do terceiro maior elemento com o terceiro menor elemento e assim por diante Veja um exemplo 2 12 3 6 16 15 e uma sequˆencia balanceada pois 16 2 15 3 12 6 Faca uma funcaometodo chamadao Balanceamento que recebe como parˆametros um vetor V de inteiros e um inteiro n veja modelo de cabecalho abaixo Sua funcaometodo devera verificar se V corresponde ou nao a uma sequˆencia balanceada sendo que elae devera retornar o valor 1 se for balanceado e o valor 0 caso contrario DICA Implementar um metodo para ler um vetor de inteiros apresentado em uma unica linha na Entrada de Dados sem quebra de linha e separados com um espaco Para Python e possıvel implementar com apenas um comando input utilizando esse codigo vet inti for i in inputsplit if i Entrada de Dados 9 9 8 7 6 6 2 1 1 1 4 5 7 7 7 8 9 9 Saıda 1
4
Introdução à Lógica e Programação
UFABC
4
Introdução à Lógica e Programação
UFABC
6
Introdução à Lógica e Programação
UFABC
5
Introdução à Lógica e Programação
UFABC
25
Introdução à Lógica e Programação
UFABC
23
Introdução à Lógica e Programação
UFABC
56
Introdução à Lógica e Programação
UFABC
36
Introdução à Lógica e Programação
UFABC
44
Introdução à Lógica e Programação
UFABC
5
Introdução à Lógica e Programação
UFABC
Texto de pré-visualização
Universidade Federal do ABC Bacharelado em Ciˆencia e TecHum e Licenciaturas Disciplina Processamento da Informacao Prof Maria das Gracas Marietto VALERIO BATISTA Ass Estudante Luana Gomes da Silva IDRA 11201723119 363 20220817 183351 Instrucoes a Essa Prova tem pontuacao maxima de 100 pontos 4 exercıcios 25 pontos cada b Vocˆe pode editar mudar salvar e avaliar o codigo de um certo exercıcio da Prova quantas vezes desejar porem a pontuacao que lhe sera atribuıda correspondera a pontuacao da ultima versao de seu codigo que vocˆe salvou e avaliou dentro do prazo c Importante os arquivos de cada questao devem ser nomeados EXATAMENTE assim Q1 Q2 onde e a extensao da linguagem de programacao escolhida d Desenvolva cada questao instrucao por instrucao com a sua logica de programacao sem utilizar bibliotecas prontas e Submeta as respostas no Moodle na atividade Prova 2 f O prazo de entrega dessa Prova e 2008 as 19h Questoes Dissertativas v80 1969 1 Escreva um programa que dado um vetor X de n numeros inteiros e o numero inteiro k 13 determine todos os pares de X em posicoes distintas cuja soma e igual a k Ou seja o programa deve verificar para cada elemento i de X se sua soma com cada elemento seguinte satisfaz Xi Xj k Assim seu programa deve a Ler o valor de n que representa o tamanho do vetor X b Ler n valores inteiros e armazenalos em X c Imprimir as posicoes i j e os respectivos conteudos que satisfazem a Xi Xj k conforme exemplo de saıda de dados exibido adiante O programa deve ainda imprimir quantos elementos multiplos de 5 existem no vetor X conforme exemplo de saıda de dados exibido adiante Exemplo de Entrada de Dados 15 6 1 9 9 3 5 2 2 2 4 7 4 1 6 4 Exemplo de Saıda de Dados para a entrada de dados acima Note que o primeiro par i j sao os ındices do vetor e o segundo par a b sao os conteudos do vetor Lista dos elementos cuja soma 13 010 67 29 94 211 94 214 94 39 94 MCTest gerador e corretor de exames disponıvel para professores wwwufabcedubr 311 94 314 94 1013 76 Multiplos de 5 1 1971 2 Joao e Maria jogam o seguinte jogo em um tabuleiro de xadrez de tamanho n por n Em cada casa do tabuleiro Joao coloca alguns graos de milho Maria entao deve adivinhar se ha mais graos de milho nas casas pretas ou nas casas brancas Faca um programa que ajuda Maria o seu programa deve ler n um inteiro par de 2 a 18 Em seguida vocˆe deve ler uma matriz A de tamanho n por n onde Aij e o numero de graos de milho na posicao i j do tabuleiro A sua resposta deve ser impressa em uma unica linha contendo trˆes numeros separados por espacos em brancos o numero de graos em casas brancas o numero de graos em casas pretas e um numero r onde r 0 se o numero de graos em casas brancas for maior que o numero em casas pretas r 1 se o numero de graos em casas pretas e maior e r 2 se ha empate Neste tabuleiro a 1a casa 1a linha e 1a coluna de matriz sempre e branca Nao faca validacao de dados e nao imprima nenhuma mensagem ao usuario apenas imprima a resposta no seguinte modelo 2 este e o valor de n 1 3 2 5 Resposta 6 5 0 6 graos em casas brancas 5 em casas pretas r 0 Entrada de Dados 6 0 2 3 1 5 8 3 4 3 6 4 9 8 6 5 2 8 3 9 8 7 9 9 3 8 1 1 8 3 2 9 0 6 1 9 5 Saıda 18 18 2 1970 3 Um torneio classificatorio de vˆolei de praia e disputado no sistema todoscontratodos cada equipe enfrenta uma vez todos os possıveis adversarios por 6 equipes Ou seja no total ha 5 rodadas de jogos cada time joga com 5 equipes Uma equipe se classifica para a fase seguinte se vencer pelo menos 47 de suas partidas Os resultados dos jogos sao representados por uma matriz de inteiros em que cada linha da matriz representa uma equipe e cada coluna representa uma rodada do torneio Considere que em cada celula da matriz tem o dıgito 4 representando VITORIA e o dıgito 0 representando DERROTA Pedese a Definir valores constantes N 6 e M 5 Na hora de fazer os testes vocˆe pode mudar esse N para valores menores de modo a minimizar a digitacao b Definir uma matriz de N M de inteiros para representar os 6 times e 5 rodadas e armazenar os resultados c Criar uma funcao FLeMatriz para ler os elementos da matriz Nao e necessario que ela faca validacao de dados d Considerar que o dıgito 4 representa vitoria e 0 representa derrota ATENC AO utilize exatamente esses dois dıgitos para representar vitoria e derrota e Escrever uma funcao denominada FResultado que deve mostrar na tela para cada uma das N equipes se ela foi classificada ou eliminada no formato exemplificado abaixo note que a palavra final e classificada ou eliminada Seu programa deve continuar funcionando para matriz com N 100 e M 99 ou N 1000 e M 999 f DICA Implementar metodo de leitura de matriz na linguagem de programacao desejada Por exemplo para Python considerar o metodo FLeMatriz def FLeMatriz m lerlinha input while lerlinha enquanto linha nao for vazia mappendinti for i in lerlinhasplit if i lerlinha input return m Entrada de Dados 0 4 0 0 0 0 0 0 0 0 4 0 0 4 4 0 0 4 4 4 0 0 0 0 4 0 4 4 0 4 Saıda Equipe 0 com 1 vitorias e 20 de aproveitamento eliminada Equipe 1 com 0 vitorias e 0 de aproveitamento eliminada Equipe 2 com 3 vitorias e 60 de aproveitamento classificada Equipe 3 com 3 vitorias e 60 de aproveitamento classificada Equipe 4 com 1 vitorias e 20 de aproveitamento eliminada Equipe 5 com 3 vitorias e 60 de aproveitamento classificada 1972 4 Dizemos que uma sequˆencia de n numeros inteiros com n par e balanceada para mais se as seguintes somas formam uma sequˆencia crescente a soma do maior elemento com o menor elemento a soma do segundo maior elemento com o segundo menor elemento a soma do terceiro maior elemento com o terceiro menor elemento e assim por diante Veja um exemplo 2 12 3 6 16 15 e uma sequˆencia balanceada pois 16 2 15 3 12 6 Faca uma funcaometodo chamadao Balanceamento que recebe como parˆametros um vetor V de inteiros e um inteiro n veja modelo de cabecalho abaixo Sua funcaometodo devera verificar se V corresponde ou nao a uma sequˆencia balanceada sendo que elae devera retornar o valor 1 se for balanceado e o valor 0 caso contrario DICA Implementar um metodo para ler um vetor de inteiros apresentado em uma unica linha na Entrada de Dados sem quebra de linha e separados com um espaco Para Python e possıvel implementar com apenas um comando input utilizando esse codigo vet inti for i in inputsplit if i Entrada de Dados 9 9 8 7 6 6 2 1 1 1 4 5 7 7 7 8 9 9 Saıda 1