Buscar

1a LISTA DE EXERCÍCIOS

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ê também pode ser Premium ajudando estudantes

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ê também pode ser Premium ajudando estudantes

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ê também pode ser Premium ajudando estudantes
Você viu 3, do total de 3 páginas

Prévia do material em texto

PROGRAMAÇÃO 1 
1a. LISTA DE EXERCÍCIOS — Prof. Ricardo 
 
 
1) Sobre linguagens de programação, responda: 
a) Que linguagem de programação tem dominado a computação científica nos 
últimos 60 anos? 
R: A linguagem de programação mais usada na computação científica últimos 60 
anos é a Fortran. 
 
b) Que linguagem de programação tem dominado as aplicações de negócios nos 
últimos 60 anos? 
R: A linguagem de programação que tem dominado as aplicações de negocios 
últimos 60 anos é a COBOL. 
 
c) Que linguagem de programação tem dominado as aplicações a inteligência 
artificial nos últimos 60 anos? 
R: A linguagem de programação que tem dominado as aplicações a inteligência 
artificial nos últimos 60 anos é a Lisp. 
 
————————————————————————————————————————
——— 
 
2) Qual é o nome da categoria de linguagens de programação cuja estrutura é 
ditada pela arquitetura de computadores von Neumann? 
R: São as linguagens imperativas, elas são paradigma de programação que 
descreve a computação como ações, enunciados ou comandos que mudam o 
estado (variáveis) de um programa. 
————————————————————————————————————————
——— 
 
3) Quais são as vantagens de implementar uma linguagem com um interpretador puro? 
R: As correções são feitas de forma rápida e não se perde tempo de compilação já 
que a linguagem implementada seria lida e executada simultaneamente. 
————————————————————————————————————————
——— 
 
4) Quais são os três métodos gerais de implementar uma linguagem de programação? 
R: Compilação, interpretaçãopura e Métodos Híbridos. 
————————————————————————————————————————
——— 
 
5) O que é um apelido? 
R: É um identificador utilizados quando se é possivel ter um ou mais nomes 
definidos para acessar a mesma célula de memória. 
————————————————————————————————————————
——— 
 
6) Após o projeto e a implementação de uma linguagem, quais são os quatro 
tipos de vinculações que podem ocorrer em um programa? 
R: Os quatros tipos são: Vinculação de nomes, Vinculação de tipos, 
Vinculação de valores e Vinculações estáticas e dinâmicas. 
————————————————————————————————————————
——— 
 
7) O que é um ancestral estático de um subprograma? O que é um ancestral dinâmico 
de um subprograma? 
R: Ancestral Estático de um subprograma: Método para vincular nomes a 
variáveis não-locais, os ancestrais estáticos são todos os subprogramas até se 
chegar a declaração. 
Ancestral Dinamico de um subprograma: Seqüência de chamada de 
subprogramas, não em suas relações espaciais (temporal versus espacial). Assim 
o escopo pode ser determinado apenas em tempo de execução quando a procura 
por declarações locais falha, as declarações do pai-dinâmico (procedimento de 
chamada) são pesquisadas desta forma, sucessivamente e caso nenhuma 
declaração for encontrada em qualquer ancestral dinâmico haverá um erro em 
tempo de execução. 
————————————————————————————————————————
——— 
 
8) Algumas linguagens de programação não têm tipos. Quais são as vantagens e 
desvantagens óbvias da ausência de tipos em uma linguagem? 
R: Apesar de praticamente todas as linguagens de programação usar variáveis para 
gerenciar dados , um punhado são typeless , o que significa que eles não exigem 
que 
você especifique o texto , números, datas ou outros tipos de dados , juntamente 
com o nome da variável . No entanto, enquanto isso faz com que as línguas não-
tipificados mais fácil de aprender, também faz manutenção e depuração de 
programas mais difícil. Digitado e Variáveis typeless, em uma linguagem 
tradicional, digitado, um programador cria variáveis , especificando um nome e o 
tipo de dados a variável detém. Por exemplo, em COBOL, uma variável para 
armazenar um nome de 
cliente poderia ser chamado de " CUST -NAME . " COBOL especifica o tipo de 
dados com a cláusula "PICTURE" , e um tipo de dados de texto alfabética é um "X " 
toda a especificação pode ler, " 05 CUST-NAME PICTURE X (30)" para anular 30 
caracteres de armazenamento para o campo. Outros tipos de dados incluem 
inteiros, datas e números com pontos flutuantes decimais. Uma variável typeless , 
pelo contrário, tem apenas um nome. 
Mais fácil de aprender. Um estudante pegando sua primeira linguagem de 
programação pode encontrar um typeless alguém como TCL mais fácil para 
resolver do que uma linguagem digitada tradicional, como Java. Ela não tem que 
gastar tempo aprendendo as diferenças entre os diferentes tipos de dados , a 
linguagem gerencia automaticamente os 
tipos de dados internamente , e funções como " expr " também determinar o que o 
programa faz com variáveis. 
Falta de clareza 
lendo programa de outra pessoa Alguém pode ter dificuldade em entender uma 
linguagem typeless . Porque as variáveis não são definidos com um tipo , o uso de 
variáveis de texto e aritmética se torna mais ambíguo e potencialmente confuso. 
Um programador pode reduzir isso um pouco , incluindo comentários bem escritos 
para o código que descrevem como ele usa as variáveis para realizar uma tarefa . 
Melhores escolhas para nomes de variáveis também fazer a diferença ; " . 
Aniversário " nomes vagos, como "x ", " cust1 " ou " d" transmitir menos 
significado do que " customer_name ", " total_sales " e alterações mais rápidos. 
Sem a necessidade de definir e redefinir os tipos , os programadores podem fazer 
alterações ao código existente em menos tempo. Você pode atualizar um módulo 
ou função , sem ter que alterar as definições das variáveis ou outro código que 
utiliza as mesmas variáveis. Em geral , as línguas não-tipificados têm tempos de 
viagem mais rápido e volta entre alterar o código e ver a mudança. Esta é uma 
vantagem para programas utilitários simples escritas em tempo real para resolver 
problemas imediatos , bem como projetos maiores voltados para tarefas de longo 
prazo. Erros em tempo de execução < p > Embora a criação de variáveis com tipos 
de dados é mais trabalho , ele tem a vantagem de melhor confiabilidade. Os tipos 
de dados impor regras que a língua usa para sinalizar possíveis erros . Em uma 
linguagem digitada , por exemplo , você não pode multiplicar-se uma seqüência de 
texto por outro , a linguagem lhe dá um erro de sintaxe, forçá-lo a corrigir o erro. 
Em uma linguagem typeless , pode equivocadamente atribuir texto a variáveis 
destinados a números, fazendo com que o programa em execução a falhar.

Continue navegando