CURSO de CIÊNCIA DA COMPUTAÇÃO - Gabarito



Documentos relacionados
CURSO de CIÊNCIA DA COMPUTAÇÃO - Gabarito

CURSO de CIÊNCIAS ECONÔMICAS - Gabarito

CURSO de CIÊNCIA DA COMPUTAÇÃO Niterói - Gabarito

CURSO de CIÊNCIA DA COMPUTAÇÃO (Niterói) - Gabarito

CURSO de ENGENHARIA (CIVIL, ELÉTRICA, MECÂNICA, PETRÓLEO, DE PRODUÇÃO e TELECOMUNICAÇÕES) NITERÓI - Gabarito

CURSO de COMUNICAÇÃO SOCIAL JORNALISMO - Gabarito

CURSO de QUÍMICA - Gabarito

CURSO de COMUNICAÇÃO SOCIAL JORNALISMO - Gabarito

CURSO de COMUNICAÇÃO SOCIAL PUBLICIDADE E PROPAGANDA Gabarito

CURSO de CIÊNCIA DA COMPUTAÇÃO NITERÓI - Gabarito

CONCEITOS BÁSICOS PARA A CONSTRUÇÃO DE ALGORITMOS PARA COMPUTADORES. Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com

CURSO de CIÊNCIAS CONTÁBEIS - Gabarito

PROGRAD / COSEAC Ciência da Computação Niterói - Gabarito

CURSO de ENGENHARIA (CIVIL, ELÉTRICA, MECÂNICA, DE PRODUÇÃO e TELECOMUNICAÇÕES) NITERÓI e RIO DAS OSTRAS - Gabarito

Unidade 5: Sistemas de Representação

A declaração de uma variável vel define o seu tipo. O tipo do dado define como ele será: Armazenado na memória. Manipulado pela ULA.

AGUARDE O AVISO PARA INICIAR SUA PROVA

Variáveis e Comandos de Atribuição

b) Quantos bits são necessários para o registrador de instruções?

Universidade Federal de São João Del Rei - UFSJ

1) Digitar o código-fonte no editor do compilador Turbo Pascal para windows, exatamente como apresentado a seguir:

Representação de Algoritmos - Linguagens de Programação

CURSO de MEDICINA VETERINÁRIA - Gabarito

Algoritmos Estruturas Seqüenciais. José Gustavo de Souza Paiva

Lista 1 para a P2. Operações com subespaços

UNIVERSIDADE FEDERAL FLUMINENSE TRANSFERÊNCIA 2 o semestre letivo de 2005 e 1 o semestre letivo de 2006 CURSO de ARQUITETURA E URBANISMO

TRANSFERÊNCIA FACULTATIVA, REINGRESSO E MUDANÇA DE CURSO

Métodos Numéricos. Turma CI-202-X. Josiney de Souza.

Primeiro roteiro de exercícios no Scilab Cálculo Numérico

CURSO de CIÊNCIA DA COMPUTAÇÃO RIO DAS OSTRAS - Gabarito

Algoritmos e Estruturas de Dados I 01/2013. Estruturas Condicionais e de Repetição (parte 2) Pedro O.S. Vaz de Melo

Edital N.º 11/PROAD/SGP/2015 e complementares

Linguagem de Programação JAVA. Técnico em Informática Professora Michelle Nery

E/S CPU. Memória (Instruções e dados) 2 PARADIGMA IMPERATIVO. Instruções e dados. Resultados das operações. Unidade lógica e aritmética

Programação Estruturada. Programação Estruturada. Idéias Básicas da Programação Estruturada

Conceitos básicos da linguagem C

CURSO de MATEMÁTICA (Niterói) - Gabarito

MC102 Algoritmos e programação de computadores Aula 3: Variáveis

TRANSFERÊNCIA FACULTATIVA, REINGRESSO E MUDANÇA DE CURSO

Principais códigos utilizados. Codificação. Código binário puro. Codificação binária. Codificação Binária. Código Binário puro e suas variantes

Filas. A ordem de saída corresponde diretamente à ordem de entrada dos elementos. Fila de caixa bancário

1. Estrutura de seleção. Seleção: algumas etapas (passos) do algoritmo são executadas dependendo do resultado de uma condição

INTRODUÇÃO À LINGUAGEM C++

Comandos de repetição while

Aula 2 Sistemas de Numeração (Revisão)

CURSO de ADMINISTRAÇÃO (Itaperuna, Macaé, Niterói) - Gabarito

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES SISTEMAS DE NUMERAÇÃO: REPRESENTAÇÃO EM PONTO FLUTUANTE. Prof. Dr. Daniel Caetano

Notas de Aula de Algoritmos e Programação de Computadores

PROGRAMAÇÃO II 3. FILA DINÂMICA

Identificação das variáveis de entrada; resultados/variáveis de saída e método ou solução. (procedimentos e funções)

Capítulo SETE Números em Ponto Fixo e Ponto Flutuante

VIII. VARIÁVEIS. Tabela I ARQUITETURA DA MEMÓRIA. 0x0000 0x34 0x0001 0xB0 0x0002 0x23. 0xFFFF 0x00

REPRESENTAÇÃO DE DADOS EM SISTEMAS DE COMPUTAÇÃO AULA 03 Arquitetura de Computadores Gil Eduardo de Andrade

Introdução. A Informação e sua Representação (Parte II) Universidade Federal de Campina Grande. Unidade Acadêmica de Sistemas e Computação

ITA º DIA MATEMÁTICA BERNOULLI COLÉGIO E PRÉ-VESTIBULAR

CURSO de MATEMÁTICA (Niterói) - Gabarito

- Aulas 57, 58, 59 e 60 - Técnicas de programação. Funções

JavaScript (ou JScript)

MANIPULAÇÃO DE STRINGS

Informática de Gestão 1º ano / 1º semestre Ano letivo: 2014/2015. Visual Basic VBA

Variáveis, Expressões, Atribuição, Matrizes, Comandos de Desvio

Programação: Tipos, Variáveis e Expressões

Faculdade de Computação

Memória Flash. PdP. Autor: Tiago Lone Nível: Básico Criação: 11/12/2005 Última versão: 18/12/2006. Pesquisa e Desenvolvimento de Produtos

Considere uma máquina que utiliza uma palavra de 10 bits. Suponha o seguinte padrão de bits:

Manipulação de Arquivos em Pascal

UNIVERSIDADE FEDERAL FLUMINENSE

Algoritmos e Programação

- PROVA OBJETIVA - Câmpus Santos Dumont - Edital 005/2014

Capítulo 8. CICLOS. Tabela 8.1 Programa8a.f90.

Trabalho de laboratório Avaliação semestral Exame final MÉDIA PONDERADA CONCEITO

Análise de Arredondamento em Ponto Flutuante

PROVA DISCURSIVA - PROFISSIONAL BÁSICO (FORMAÇÃO DE ANÁLISE DE SISTEMAS - DESENVOLVIMENTO) 2 a FASE

Curso:... Prova de Sistemas de Informação para Bibliotecas (21105) Nome:... Nº de Estudante:... B. I. nº... Assinatura do Vigilante:...

Canguru sem fronteiras 2007

Sistema de Memórias de Computadores

WDM_1256.SYS DRIVER DA CAD12/56 PARA WINDOWS 98

Regras Métodos Identificadores Variáveis Constantes Tipos de dados Comandos de atribuição Operadores aritméticos, relacionais e lógicos

A TI-89 / TI-92 Plus permite também comparar ou manipular números binários bit a bit.

- UNIVERSIDADE DO VALE DO RIO DOS SINOS CIÊNCIAS EXATAS E TECNOLÓGICAS Curso: Informática / Ciência da Computação

Notas sobre a Fórmula de Taylor e o estudo de extremos

Prova de Admissão para o Mestrado em Matemática IME-USP

LÓGICA DE PROGRAMAÇÃO. Vitor Valerio de Souza Campos

Especialista em C&T Produção e Inovação em Saúde Pública. Prova Discursiva INSTRUÇÕES

Linguagem de Programação I

Linguagem C: variáveis, operadores, entrada/saída. Prof. Críston Algoritmos e Programação

Paralelismo a Nível de Instrução

Programação Engenharia Informática (11543) 1º ano, 1º semestre Tecnologias e Sistemas de Informação (6619) 1º ano, 1º semestre

Linguagem C. Programação Estruturada. Fundamentos da Linguagem. Prof. Luis Nícolas de Amorim Trigo

Aula 2 - Cálculo Numérico

O BANCO DO DESENVOLVIMENTO PROVA DISCURSIVA LEIA ATENTAMENTE AS INSTRUÇÕES ABAIXO.

Autor: Tiago Lone Nível: Básico Criação: 19/12/2005 Última versão: 18/12/2006. PdP. Pesquisa e Desenvolvimento de Produtos

Instruções para a Prova de MATEMÁTICA APLICADA:

O BANCO DO DESENVOLVIMENTO PROVA DISCURSIVA PROFISSIONAL BÁSICO - ADMINISTRAÇÃO LEIA ATENTAMENTE AS INSTRUÇÕES ABAIXO.

Computação II Orientação a Objetos

Introdução a Computação

Capítulo 2. VARIÁVEIS DO TIPO INTEIRO

1 Funções básicas de implementação de arquivos

Testando e Comparando Valores

CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES

Transcrição:

UNIVERSIDADE FEDERAL FLUMINENSE TRANSFERÊNCIA 2 o semestre letivo de 2005 e 1 o semestre letivo de 2006 CURSO de CIÊNCIA DA COMPUTAÇÃO - Gabarito Verifique se este caderno contém : INSTRUÇÕES AO CANDIDATO PROVA DE REDAÇÃO enunciadas duas propostas; PROVA DE CONHECIMENTOS ESPECÍFICOS - enunciadas questões discursivas totalizando dez pontos. Se este caderno não contiver integralmente o descrito no item anterior, notifique imediatamente ao fiscal. No espaço reservado à identificação do candidato, além de assinar, preencha o campo respectivo com seu nome. Não é permitido fazer uso de instrumentos auxiliares para o cálculo e o desenho, portar material que sirva para consulta nem equipamento destinado à comunicação. Na avaliação do desenvolvimento das questões será considerado somente o que estiver escrito a caneta, com tinta azul ou preta, nos espaços apropriados. O tempo disponível para realizar estas provas é de quatro horas. Ao terminar, entregue ao fiscal este caderno devidamente assinado. Tanto a falta de assinatura quanto a assinatura fora do local apropriado poderá invalidar sua prova. Certifique-se de ter assinado a lista de presença. Colabore com o fiscal, caso este o convide a comprovar sua identidade por impressão digital. Você deverá permanecer no local de realização das provas por, no mínimo, noventa minutos. AGUARDE O AVISO PARA O INÍCIO DA PROVA RESERVADO À IDENTIFICAÇÃO DO CANDIDATO RESERVADO AOS AVALIADORES REDAÇÃO rubrica: C. ESPECÍFICOS rubrica: 1

Prova de Conhecimentos Específicos 1 a QUESTÃO: (1,0 ponto) Representação binária Considere o seguinte conjunto de bits: 11010111, em uma máquina que possui o tamanho da palavra igual a 8 bits. a) Indique o valor, em decimal, que está sendo representado para cada um dos casos abaixo (pode deixar as contas indicadas): a.1) o padrão de bits representa um inteiro sem sinal; a.2) o padrão de bits representa um inteiro com sinal utilizando a representação sinal e magnitude; a.3) o padrão de bits representa um inteiro com sinal utilizando a representação complemento a 2; a.4) o padrão de bits representa um inteiro com sinal utilizando a representação excesso de 127. b) Para representar números em ponto flutuante no formato (+/- 1, M) 2 x 2 E, esta máquina utiliza a seguinte representação: 1 bit 3 bits 4 bits S E M O primeiro bit indica o sinal do número (0 para números positivos, 1 para números negativos), os três bits seguintes representam o expoente representado em sinal e magnitude e os quatro bits seguintes contêm os bits da parte fracionária da mantissa. b.1) Indique o valor que o conjunto de bits acima representa, caso consideremos que ele represente um número em ponto flutuante. b.2) Converta 2,7 para esta representação em ponto flutuante. a.1) 2 7 +2 6 +2 4 +2 2 +2 1 +2 0 = 128+64+16+4+2+1 = 215 a.2) (2 6 +2 4 +2 2 +2 1 +2 0 ) = 87 a.3) 2 7 +2 6 +2 4 +2 2 +2 1 +2 0 = 128+64+16+4+2+1 = 41 a.4) 215 127= + 88 2

b.1) bit de sinal = 1, número negativo expoente = 101 em sinal e magnitude = 1 parte fracionária da mantissa = 0111 N = ( 1,0111) 2 x 2 1 = ( 0,10111) 2 = 0,71875 b.2) 2,7 = + (10,101) 2 = +(1,0101) 2 x 2 +1 Logo teremos: Bit de sinal = 0 Bits para Expoente = 001 Bits para Mantissa = 0101 Representação: 00010101 3

2 a QUESTÃO: (1,0 ponto) Organização de máquina Considere uma máquina que possa endereçar 128K bytes de memória física, sendo que cada endereço referencia uma célula de 1 byte. Ela possui um registrador RI que armazena as instruções e um registrador CI que armazena o endereço da instrução a ser executada. Além destes dois registradores, o processador possui 8 registradores para armazenar operandos. As instruções são todas de mesmo tamanho (3 bytes), manipulam dois operandos e possuem três campos: o primeiro contém o código de operação, o segundo indica o registrador onde se encontra um operando e o seguinte identifica o endereço de memória do outro operando. Indique: a) o tamanho mínimo do CI em bits; b) o tamanho mínimo do RI em bits; c) o tamanho da memória em bits; d) o número máximo de instruções que esta máquina pode possuir. a) Se a máquina pode endereçar 128K bytes e cada endereço referencia um byte, o número de bits necessários para o endereço é log 2 (128 x 2 10 ) = log 2 (2 7 x 2 10 ) = log 2 (2 17 ) = 17. Logo o tamanho mínimo de CI é igual a 17 bits. b) Se a máquina possui instruções de 3 bytes, o tamanho mínimo do RI é 24 bits. c) 128K bytes = 128K x 8 bits = 2 20 bits = 1 M bits d) Como esta máquina possui instruções de 24 bits com três campos, sendo o segundo campo utilizado para indicar um registrador (3 bits), o terceiro para indicar o endereço de memória do operando (17 bits), sobram 4 bits para o primeiro campo, que indica o código de operação. Com 4 bits, podemos ter no máximo 16 instruções. 4

3 a QUESTÃO: (1,0 ponto) Execução de programas Explique como funcionam os processos de compilação e ligação. O processo de compilação consiste na análise de um programa escrito em linguagem de alto nível (programa fonte) e sua posterior tradução para um programa equivalente em linguagem binária de máquina (código objeto). A análise do programa fonte pode ser dividida em três partes: léxica, sintática e semântica. Após esta tripla análise, é gerado um código intermediário, sendo construídas várias estruturas que auxiliam na realização da segunda fase que consiste na efetiva criação do código binário de máquina. O processo de ligação consiste em examinar todo o código objeto gerado após a compilação e procurar as referências às rotinas externas ao programa não resolvidas em bibliotecas do sistema ou em outros módulos objetos. Caso a rotina seja encontrada, ela é inserida no código objeto gerando um código executável. Caso contrário, gera-se uma mensagem de erro. 5

4 a QUESTÃO: (2,0 pontos) Faça um programa Pascal para ler um arquivo texto, escolhido pelo usuário, que contenha apenas números reais. Escreva no vídeo: o menor número, o maior número e a média de todos os números do arquivo lido. Caso o arquivo esteja vazio, escreva arquivo sem números. Exemplo de Arquivo de Entrada Saída Correspondente 13 57 Menor Número: -23.00-23 5 67 Maior Número: 67.00 3 Média: 22.22 13 26 39 5 8-354 12 1236 55 5 7 program quest_1(input{teclado}, output {vídeo}, Arq{e}); uses crt; {ou wincrt se BPW} var Arq:text; Nome: string; Num, maior, menor, soma: real; quantos: longint; write(output, 'Qual o nome do arquivo: '); readln(input, Nome); assign(arq, Nome); reset(arq); quantos:= 0; Soma:= 0; while not eof(arq) do read(arq, Num); if quantos=0 then Maior:= Num; Menor:= Num end else if Num>Maior then Maior:= Num else Menor Número: -354.00 Maior Número: 1236.00 Média: 121.75 6

If Num<Menor then Menor:= Num; soma:= soma + Num; inc(quantos); if quantos=0 then writeln(output, 'Arquivo sem números') else writeln(output, 'Menor Número: ', Menor:10:2); writeln(output, 'Maior Número: ', Maior:10:2); writeln(output, 'Média: ', soma/quantos:17:2); close(arq); readkey; end. 7

5 a QUESTÃO: (2,0 pontos) Faça um programa Pascal para ler um arquivo texto, contendo uma palavra por linha, e escreva o dicionário das palavras encontradas; isto é, a lista de palavras sem repetições. Suponha que o dicionário jamais tenha mais que duzentas palavras de trinta caracteres. Exemplo de Arquivo de Entrada Saída Correspondente O O que que será será vive que suspirando será que vive suspirando O tempo perguntou pro tempo quanto tempo o tempo tem O tempo perguntou pro quanto o tem program quest_2(input{teclado}, output {vídeo}, Arq{e}); uses crt; {ou wincrt se BPW} const C_Tam_Dicionario = 200; C_Tam_Palavra = 30; type T_Dominio = 1..C_Tam_Dicionario; T_Palavra = string[c_tam_palavra]; T_Vetor = array[t_dominio] of T_Palavra; T_Dicionario = record Usados: 0..C_Tam_Dicionario; Dic: T_Vetor; procedure insere(var Dicion{e/s}: T_Dicionario; P{e}: T_Palavra); function pertence(alfa{e}: T_Dicionario; Beta{e}: T_Palavra):boolean; var ind: integer; 8

ind:= 0; while (ind<=alfa.usados) and (Alfa.Dic[Ind]<>Beta) do inc(ind); pertence:= (ind<=alfa.usados); if Dicion.usados<C_Tam_Dicionario then if not pertence(dicion, P) then with Dicion do inc(usados); Dic[usados]:= P var Arq:text; Nome: string; Palavra: T_Palavra; D: T_Dicionario; Indice: Integer; write(output, 'Qual o nome do arquivo: '); readln(input, Nome); assign(arq, Nome); reset(arq); D.usados:= 0; while not eof(arq) do readln(arq, Palavra); insere(d, Palavra); close(arq); for indice:= 1 to D.usados do writeln(output, D.Dic[Indice]); readkey; end. 9

6 a QUESTÃO: (1,5 ponto) x 2 π 2 Seja f(x) = 3x+ 2 sen t dt,x 1 4. Determine os coeficientes α, β e γ do polinômio p(x) = α(x 1) 2 + β(x 1) + γ para que p(1) = f(1), p (1) = f (1) e p (1) = f"(1) π. Cálculos e respostas: Como p(1) = γ e f(1) = 3, devemos ter γ = 3. Como p (x) = 2 α (x 1) + β para todo x f (x) = 3 + 2 sen 2 π x 2 para todo x, então f (1) = 3 + 2 4, então p (1) = β. Por outro lado como 2 2 Como p (x) = 2 α para todo x, então p (1) = 2α. π 2 Por outro lado f (x) = 2πx sen x 4 cos π 2 x para todo x. 4 Logo f (1) = 2π. 2 2. 2 2 f"(1) =π. Daí, como p (1) = π 2 = 4. Logo β = 4., temos 2α = π = 1, isto é, π α = 2 1. 10

7 a QUESTÃO: (1,5 ponto) As funções reais f(x, y, z) e g(x, y) são diferenciáveis e para todo (x, y) no domínio de g, f(x, y, g(x, y)) = 0. f f f Suponha que g(1,1) = 3, ( 1,1,3) = 2, ( 1,1,3) = 5 e ( 1,1,3) = 10. Determine x y z a equação do plano tangente ao gráfico de g no ponto (1,1,3). Cálculos e resposta: Como z = g(x, y) é uma função diferenciável definida implicitamente pela equação f(x, y, g(x, y)) = 0, para todo (x, y) Dom(g), com f diferenciável, o gráfico de g está contido no conjunto de nível zero, na superfície de nível zero f(x, y, z) = 0 Assim f(1, 1, 3) = (2, 5, 10) 0 é um vetor normal ao gráfico de g no ponto (1, 1, 3). Daí a equação do plano tangente em (1, 1, 3) é: f(1, 1, 3). (x 1, y 1, z 3) = 0 (2, 5, 10). (x 1, y 1, z 3) = 0 2 (x 1) + 5(y 1) + 10(z 3) = 0 2x + 5y + 10z 2 5 30 = 0 2x + 5y + 10z 37 = 0 11