Baixe o app para aproveitar ainda mais
Prévia do material em texto
UNIVERSIDADE FEDERAL DO PIAUÍ – UFPI UNIVERSIDADE ABERTA DO PIAUÍ – UAPI BACHARELADO EM SISTEMAS DE INFORMAÇÃO PROFESSOR: JUAN MORYSSON VIANA MARCIAN DISCIPLINA: LINGUAGENS DE PROGRAMAÇÃO ALUNO: REGINALDO SILVA SANTOS TRABALHO AVALIATIVO - REOFERTA 1- Quais os principais atributos das variáveis nos programas codificados nas diversas linguagens de programação? São 6 (seis) os atributos principais das variáveis: o nome, o valor, o tipo, o endereço, o escopo e o tempo de vida. 2- Qual o papel da vinculação nas variáveis dos programas de computador? A vinculação é uma associação entre um atributo e a variável, devendo ser destacado o momento em que esta associação é realizada, ou seja, o momento e m que acontece o “casamento” entre a variável e cada atributo. 3- Que importância tem as regras de escopo na execução dos programas? É importante, pois é a faixa do programa onde a variável pode ser referenciada. 4- Quais tipos de dados representam as estruturas, as uniões e os vetores em C? Compostos. 5- Que tipos de dados a linguagem Java apresenta? O Java possui dois tipos de dados que são divididos em por valor (tipos primitivos) e por referência (tipos por referência). Os tipos primitivos são boolean, byte, char, short, int, long, float e double. O Java fornece dois tipos primitivos para armazenar números de ponto flutuante na memória, o tipo float e double. 6- Que tipos de dados as matrizes bi-dimensionais representam? Matrizes, ou arrays bidimensionais, são estruturas de dados que organizam informações de um mesmo tipo e com um mesmo nome. Em uma matriz são utilizados dois índices, que correspondem a linhas e colunas. Na linguagem de programação c, uma matriz é considerada um vetor de vetores. 7- Que são valor-l e valor-r das variáveis? Uma variável tem dois valores. Ex: a = a + 1, ou seja, valor-r (right): valor armazenado, valor-l (left): endereço associado 8- Que é um apelido no contexto das linguagens de programação? É o endereço de memória a ela associado. 9- Que são as variáveis estáticas, no contexto das linguagens de programação? São variáveis vinculadas a células de memória antes da execução, permanecendo na mesma célula de memória durante toda a execução 10- Que são as variáveis dinâmicas na pilha, no contexto das linguagens de programação? São vinculações são criadas quando suas sentenças de declaração são efetuadas, mas o tipo é estaticamente vinculado. Ex.: em Java, as declarações de variáveis que aparecem no início de um método são elaboradas quando o método é chamado e as variáveis definidas por essas declarações são liberadas quando o método completa sua execução São alocadas a partir da pilha de tempo de execução. 11- Que são as variáveis dinâmicas no heap explícitas, no contexto das linguagens de programação? São células (abstratas) de memória alocadas e desalocadas pelo programador durante a execução do programa. A heap mantém uma coleção de células alocadas dinamicamente (altamente desorganizada) 12- Que são as variáveis dinâmicas no heap implícitas, no contexto das linguagens de programação? São variáveis dinâmicas do monte implícitas são vinculadas ao armazenamento no monte (heap) apenas quando são atribuídos valores a elas. 13- Que é coerção de tipos? É o tipo compatível, é um tipo que é legal para um operando, ou é permitido, segundo as regras da linguagem. Pode ser que haja a conversão automática para garantir a Compatibilidade. 14- Quais os tipos de iteração utilizados pelas Linguagens de Programação? Qual é a mais genérica? Nas linguagens de programação, chama-se iteração o ato de repetir o mesmo comando em um código. Para fazer a iteração, existem diversas sintaxes e elas variam de linguagem a linguagem. As iterações existentes são: For e while. A iteração mais genérica é a while, pois apenas recebe uma condição para repetir o comando até mesmo indefinidamente. Isso contrasta com o for que itera em um intervalo específico determinado por uma quantidade pré-definida. 15- Qual a diferença entre o comando for de Java e de C++? O C++ é uma linguagem de nível médio, ou seja, possui comandos simples das linguagens de alto nível e comandos complexos das linguagens de baixo nível. É, também, multi- paradigma, pois suporta mais de um estilo de programação, e é considerada uma linguagem de uso geral. for – utilizado quando se sabe o numero de vezes que um bloco de instruções deve ser executado. Faz uso de uma variável para controlar os loops. A estrutura de repetição for é geralmente empregada quando se sabe o número de vezes que o conjunto de instruções, pertencentes ao bloco, deve ser repetido. Deste modo, é executado o bloco de instruções até que a condição de parada determinada no início do for seja satisfeita. 16- Quais os principais métodos de passagem de parâmetros utilizados pelas linguagens de programação em seus subprogramas? C Passagem por valor. A passagem por referência é atingida por meio do uso de ponteiros como parâmetros C++ Inclui o tipo referência para passagem por referência Java Todos os parâmetros têm passagem por valor. Parâmetros objetos têm passagem por referência Fortran 95 Parâmetros podem ser declarados para serem dos modos de entrada, de saída ou de entrada e saída C# Método padrão: passagem por valor. Passagem por referência é especificada precedendo um parâmetro formal e seu real correspondente com ref. PHP: similar a C#. 17- Qual a diferença entre um procedimento e uma função nas linguagens de programação? Na maioria dos contextos, a função retorna um valor, e o procedimento não. Na verdade, isso depende muito do contexto. Idealmente, procedimentos executariam tarefas passo a passo, e funções simplesmente fariam processamento de dados e devolveriam um retorno (resultado), sem gerar efeitos colaterais, mas em linguagens imperativas essa coisa do efeito colateral fica meio relativizada. No fundo tanto os dois citados na pergunta quanto métodos funcionam da mesma forma e concretamente a implementação é essencialmente a mesma. Conceitualmente um procedimento difere da função pela ausência de um retorno de valor. Então um procedimento é um algoritmo que será executado, enquanto que a função é um algoritmo que será executado e produzirá um resultado final concreto que poderá ser usado por outro algoritmo. 18- O que são as corrotinas e quais as suas diferenças com relação aos subprogramas? Uma corrotina é um tipo especial de subprograma em que não existe a reação mestre-escravo entre o chamador e o chamado. O modelo de controle de corrotinas, frequentemente é chamado de modelo de controle simétrico. Este modelo de controle foi implementado pela primeira vez em Simula 67. Ao contrário dos subprogramas comuns, as corrotinas têm vários pontos de entrada que são controlados pelas próprias corrotinas, e têm meios de manter sua história entre as ativações. As execuções das corrotinas. 19- Qual a diferença entre sobrecarga e polimorfismo? Existem dois tipos de polimorfismo que são conhecidos como sobrecarga (overload) e sobreposição (override). A sobrecarga (overload) consiste em permitir, dentro da mesma classe, mais de um método com o mesmo nome. Entretanto, eles necessariamente devem possuir argumentos diferentes para funcionar.
Compartilhar