Buscar

Curso Livre Algoritmo

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

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 6, do total de 15 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

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 9, do total de 15 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

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

1.
	A sequência de passos para a solução de um problema pode ser prevista por um algoritmo. Neste sentido, a lógica de programação auxilia na solução prevendo estes passos necessários para chegar-se ao objetivo. Esta sequência de passos, possui um início e um fim, pois o problema possui uma solução, que é resolvida no último passo. Partindo desse pressuposto, classifique V para as sentenças verdadeiras e F para falsas.
 
(    ) Em algoritmos, instruções são um conjunto de regras para realização de algo.
(    ) Na solução de um problema, é ideal tratar uma instrução de forma isolada.
(    ) Ao elaborar as instruções de maneira lógica e concisa temos um algoritmo.
(    ) Um algoritmo possui uma sequência finita de passos.
 
 
Agora, assinale a alternativa que apresenta a sequência CORRETA:
	A)
	F – V – V – F.
	B)
	V – F – V – V.(CORRETA)
	C)
	V – F – V – F.
	D)
	V – V – V – V.
	2.
	Para que uma pessoa adquira o raciocínio lógico na computação, é necessário que ela pratique vários exercícios, isto é, desenvolva, por exemplo, vários algoritmos para diferentes soluções. Neste sentido, quanto mais um desenvolvedor de software criar algoritmos que solucionem diferentes problemas, mais raciocínio lógico ele adquirirá.
 
Referente ao raciocínio lógico, assinale a alternativa CORRETA:
	A)
	O raciocínio lógico é desenvolvido apenas para a solução de cálculos matemáticos.
	B)
	Permite que o trabalho de um profissional de TI seja mais rápido e eficaz.(CORRETA)
	C)
	O raciocínio lógico não é desenvolvido através de exercícios.
	D)
	Um profissional de TI que já tenha desenvolvido vários algoritmos diferentes possui a mesma dificuldade de um iniciante para solucionar um problema. 
	3.
	Para o aprendizado na área de desenvolvimento de software é necessário exercitar algoritmos, o que facilita o desenvolvimento da lógica de programação. Algoritmos servem para resolver qualquer problema de qualquer área, não somente computacionais, isso porque a estrutura de um algoritmo e sequencial, isto é, os passos de um algoritmo são sequenciais, o que pode ser aplicado em outras áreas.
 
Referente a algoritmos, assinale a alternativa CORRETA:
	A)
	Quando programado em um computador possui 4 passos: início, entrada, processamento e saída.
	B)
	Quando programado em um computador possui 5 passos: início, entrada, processamento, saída e fim.
	C)
	Quando programado em um computador possui 3 passos: entrada, processamento e saída.(CORRETA)
	D)
	Quando programado em um computador possui dois passos: entrada e saída.
 
	4.
	Algoritmo serve para sequenciar as instruções, finitas, para a solução de um problema. Por exemplo, um algoritmo que solucione como se vestir, o qual pode especificar que seja vestido primeiro as meias e os sapatos antes de usar a calça. Outro algoritmo pode designar que a calça seja vestida antes das meias e dos sapatos. Como se pode observar, os dois algoritmos levam ao mesmo objetivo, embora a execução do primeiro seja mais trabalhosa que o segundo.
 
Referente a algoritmos e programas, assinale a alternativa CORRETA:
	A)
	Algoritmos se transformam em programas depois que são executados. 
 
	B)
	Algoritmos e programas são sinônimos dentro do contexto da computação.
	C)
	Algoritmos nunca se transformarão em programas.
	D)
	Algoritmos são transformados em programas após serem convertidos em uma linguagem de programação.(CORRETA)
	5.
	Um algoritmo não representa exclusivamente um programa de computador, mas sim os passos necessários para a realização de uma tarefa. A sua implementação pode ser desenvolvida por um computador ou mesmo em um papel por um ser humano. Um mesmo problema pode ser solucionado por diferentes algoritmos com diferentes instruções.
 
Referente ao passo saída de um algoritmo, assinale a alternativa CORRETA:
	A)
	A saída ocorre em dispositivos de saída, como teclado ou mouse por exemplo.
	B)
	Dados oriundos da saída de um algoritmo não podem ser a entrada de outro algoritmo.
	C)
	A saída ocorre em dispositivos de saída, como impressora e fax por exemplo.(CORRETA)
	D)
	A saída ocorre em dispositivos de entrada, como teclado ou mouse por exemplo. 
 
	6.
	Em algoritmos, assim como em linguagens de programação reais, os operadores lógicos e relacionais são utilizados para combinar variáveis e constantes, que são utilizadas para fornecer um valor como resposta.
 
Referente a operadores lógicos, assinale a alternativa CORRETA:
	A)
	O operador de disjunção analisa dois valores lógicos, e retorna valor verdadeiro quando ambos valores analisados forem verdadeiros.
 
 
	B)
	Para a expressão “A” que possui inicialmente valor “V” e outra expressão “B” cujo valor inicial seja “F”, aplicando-se a conjunção, o resultado será “V”.
	C)
	O operador de conjunção analisa dois valores lógicos, e retorna valor verdadeiro quando ao menos um dos dois valores lógicos analisados for verdadeiro.
 
	D)
	São baseados por tabelas verdade que apresentam resultados booleanos.(CORRETA)
	7.
	Assim como em várias linguagens de programação, em pseudocódigos também se utilizam constantes frequentemente quando se tem algum valor matemático predefinido. Uma constante também é uma área de memória em que se armazenam informações.
 
Referente a constantes, assinale a alternativa CORRETA:
	A)
	Uma constante do tipo real pode receber o valor de uma vaiável do tipo inteiro em tempo de execução.
	B)
	Uma constante possui o seu valor predefinido, mas este pode ser alterado em tempo de execução.
	C)
	A única diferença entre variáveis e constantes é a predefinição de valor que a constante possui além de seu valor não poder ser alterado.(CORRETA)
	D)
	Em algoritmos não se utilizam constantes.
	8.
	Os comandos de atribuição permitem atribuir um valor para uma variável, porém o valor a ser atribuído deve ser compatível com o tipo de dado definido para esta variável. O símbolo de atribuição pode ser diferente, dependendo da linguagem de programação.
 
Considerando a variável “valor” do tipo inteiro, qual das alternativas possui a atribuição de valor em pseudocódigo CORRETA?
	A)
	valor ← 45.2.
 
 
	B)
	valor == 1000.
 
	C)
	valor ← 1250.(CORRETA)
	D)
	valor == 45.2.
	9.
	O processamento de dados realizado por um computador é executado pela manipulação de números, os quais a máquina compreende. Em linguagens de programação, os dados são agrupados em tipos, de acordo com o comportamento que eles possuem diante da operação a ser realizada com eles.
 
Referente a tipos de dados, assinale a alternativa CORRETA:
	A)
	Uma variável do tipo inteiro pode receber um valor de uma variável do tipo real.
	B)
	Real é o tipo de dado caracterizado por números inteiros positivos ou negativos.
	C)
	Inteiro, real, caractere e booleano são tipos de dados primitivos. (CORRETA)
	D)
	Inteiro é o tipo de dado caracterizado por números decimais.
	10.
	Em algoritmos, assim como em linguagens de programação, a criação e utilização de variáveis é quase que inevitável. Uma variável pode ser útil para várias necessidades diferentes, como um cálculo, receber o valor informado por um usuário, entre muitas outras utilidades.
 
Referente a variáveis, assinale a alternativa CORRETA:
	A)
	Uma variável não pode ter seu valor alterado em tempo de execução.
	B)
	Uma variável pode ter seu valor alterado em tempo de execução.(CORRETA)
	C)
	Uma variável do tipo inteiro pode receber valor de uma variável do tipo real.
	D)
	Uma variável possui o seu valor predefinido e não pode ser alterado em tempo de execução.
 
	11.
	A tomada de decisão encadeada ocorre quando são utilizadas tomadas de decisões simples ou compostas uma dentro da outra. Neste sentido, uma decisão depende da outra para ser executada, pois as condições mais internas somente serão acessadas se as externas forem executadas.
 
Neste contexto, assinale a alternativa CORRETA que tenha os passos de uma tomada de decisão encadeada:
	A)
	Se o retorno lógico da condição 1 for verdadeiro, então o fluxo chega à condição 2, que caso este retorno tambémseja verdadeiro, é executada a instrução subordinada a esta condição, e caso contrário, o programa volta ao fluxo normal.(CORRETA)
	B)
	Se o retorno lógico da condição 2 for verdadeiro, então o fluxo chega à condição 1, que caso este retorno também seja verdadeiro, é executada a instrução subordinada a esta condição, e caso contrário, o programa volta ao fluxo normal.
 
 
 
	C)
	Se o retorno lógico da condição 1 for verdadeiro, então o fluxo chega à condição 1, que caso este retorno também seja verdadeiro, é executada a instrução subordinada a esta condição, e caso contrário, o programa volta ao fluxo normal.
 
 
	D)
	Se o retorno lógico da condição 2 for verdadeiro, então é executada a instrução subordinada a esta condição, e caso contrário, o programa volta ao fluxo normal.
	12.
	O desvio condicional simples serve para realizar o desvio do fluxo de um programa, fazendo com que uma instrução seja ou não executada.
 
Neste sentido, analise o fluxograma sendo apresentado a seguir, e então assinale a alternativa que descreve o fluxo de maneira CORRETA:
	
	A)
	Enquanto a variável “a” for igual a variável “b” o looping continua executando.
	B)
	Se a condição for verdadeira, é apresentada a mensagem e o fluxo do programa segue para o final, senão o fluxo segue diretamente para o final. (CORRETA)
	C)
	Enquanto a condição for verdadeira, o fluxo do programa segue para o fim.
 
	D)
	Enquanto a variável “a” for igual a variável “b” a apresentação da mensagem é repetida.
	13.
	Comandos condicionais servem para desviar o fluxo da execução de um programa. Em muitos casos, os comandos condicionais simples e compostos são utilizados em conjunto, para determinar o fluxo de determinada execução.
 
Referente a estruturas condicionais, assinale a alternativa CORRETA:
	A)
	O desvio condicional simples é utilizado para realizar laço de repetição.
 
	B)
	O desvio condicional simples é utilizado para determinar a quantidade de vezes que uma mesma instrução será executada.
 
	C)
	O desvio condicional simples pode ser utilizado para executar ou não uma determinada instrução. (CORRETA)
	D)
	O desvio condicional simples pode ser utilizado para executar uma instrução, e se sua expressão retornar valor falso, outra instrução sempre será executada.
	14.
	Os desvios condicionais auxiliam no caminho do fluxo dos dados de um programa, permitindo que uma instrução seja executada ou ignorada. Os desvios condicionais podem ser simples ou compostos.
 
Referente a tomadas de decisões sequenciais, assinale a alternativa CORRETA?
	A)
	Existem apenas tomadas de decisões simples uma dentro da outra.
 
 
	B)
	Existem apenas tomadas de decisões compostas uma dentro da outra.
	C)
	Existem tomadas de decisões simples ou compostas uma após a outra.(CORRETA)
	D)
	Existem tomadas de decisões simples ou compostas uma dentro da outra.
	15.
	As tomadas de decisões são muito importantes para direcionar o fluxo dos dados de um programa em execução. As tomadas de decisões compostas ocorrem nos casos em que existe uma instrução a ser executada para a condição verdadeira e outra para quando o resultado da condição for falso.
 
Analise o fluxograma a seguir, e então assinale a alternativa CORRETA:
	
	A)
	Quando executada a condição 1, se esta for verdadeira será executada a instrução subordinada a ela, e caso a condição 1 for falsa, é executada a condição 2; quando terminada a execução da condição 1, o fluxo é enviado para o final.
	B)
	Quando executada a condição 1, se esta for verdadeira será executada a instrução subordinada a ela, e caso a condição 1 for falsa, é executada a condição 2; quando terminada a execução da condição 1, é executada a condição 2, que se for verdadeira, executa a instrução subordinada a esta, e caso for falsa o fluxo é enviado para o final.(CORRETA)
	C)
	
Quando executada a condição 1, se esta for verdadeira será executada a instrução subordinada a ela, e caso a condição 1 for falsa, é executada a condição 2; quando terminada a execução da condição 1, é executada a condição 2, que então o fluxo é enviado para o final. 
 
	D)
	Quando executada a condição 1, se esta for verdadeira será executada a instrução subordinada a condição 2, e caso a condição.1 for falsa, é executada a condição 2; quando terminada a execução da condição 1, é executada a condição 2, que se for verdadeira, executa a instrução subordinada a esta, e caso for falsa o fluxo é enviado para o final.
	16.
	Os vetores são estruturas de dados unidimensionais que facilitam o trabalho do desenvolvimento de software quando é necessária a criação de várias variáveis do mesmo tipo. Neste contexto, o armazenamento dos dados nestas estruturas é realizado através de um número, chamado índice, que apresenta a posição do dado na lista.
 
Referente à sintaxe para adquirir um valor de um vetor, assinale a alternativa CORRETA:
	A)
	Vetor[i, j].
 
	B)
	[i, j]Vetor.
 
	C)
	Vetor[i].(CORRETA)
	D)
	[i]Vetor.
	17.
	Em muitos casos, a utilização de variáveis normais gera uma carga de trabalho para a programação. Neste sentido, pode-se optar por utilizar as estruturas de dados homogêneas.
 
Referente a estruturas de dados homogêneas, assinale a alternativa CORRETA:
	A)
	São estruturas de dados de tipos diferentes.
 
 
	B)
	São estruturas de dados do mesmo tipo. (CORRETA)
	C)
	São estruturas que armazenam dados do tipo caractere.
 
	D)
	São estruturas de armazenamento de da
	18.
	Os vetores, ou matrizes de uma dimensão, são considerados estruturas de dados que são referenciados por apenas um nome no código-fonte do programa e necessitam de um único índice para que seus elementos sejam acessados ou atualizados.
 
Referente a vetores, assinale a alternativa CORRETA:
	A)
	São estruturas de dados unidimensionais, também conhecidos por arrays.(CORRETA)
	B)
	São estruturas de dados bidimensionais, também conhecidos por matrizes bidimensionais. 
 
	C)
	São estruturas de dados unidimensionais, também conhecidos por matrizes de duas dimensões.
 
	D)
	São estruturas de dados bidimensionais, também conhecidos por arrays.
	19.
	Matrizes bidimensionais permitem que os dados sejam armazenados nas linhas e colunas de sua estrutura, como se fosse uma tabela de banco de dados. Para resolver o problema: implementar um algoritmo que armazene os dados de até quatro contatos, no qual devem ser solicitados ao usuário o nome, e-mail, endereço e telefone para cada contato a ser armazenado.
 
Neste contexto, assinale a alternativa que apresenta a declaração CORRETA da matriz a ser utilizada para solução do problema.
	A)
	matriz : vetor[0..4, 1..5] de caractere.
 
	B)
	matriz : vetor[0..3, 0..3] de caractere.(CORRETA)
	C)
	matriz : vetor[1..4, 0..4] de caractere.
 
	D)
	matriz : vetor[1..4, 1..5] de caractere.
 
	20.
	 Matrizes bidimensionais podem ser descritas como arranjos ordenados, que, ao contrário dos vetores, podem ter n dimensões. Uma matriz que possui apenas duas dimensões é chamada bidimensional, que nada mais é que um dado ser armazenado em uma determinada linha e coluna. Funciona de forma parecida que um vetor, com a diferença de que existem dois índices para acessar um dado de sua estrutura.
 
Neste contexto, analise a matriz sendo apresentada na figura abaixo, e então assinale a alternativa que apresenta a declaração CORRETA da matriz:
	
	A)
	matriz : vetor[1..6, 1..5] de caractere.
	B)
	matriz : vetor[1..6, 1..6] de caractere.
 
	C)
	matriz : vetor[1..5, 1..5] de caractere.
 
 
	D)
	matriz : vetor[0..5, 0..5] de caractere.(CORRETA)
	21.
	Para facilitar o desenvolvimento de software, pode-se dividir um problema grande em um menor, mais específico. Esta metodologia é conhecida de “dividir para conquistar”, e chamada de modularização de código. Neste sentido, divide-se o código-fonte em pequenos blocos que fazem uma ação específica.
 
Referente a modularização, assinale a alternativa CORRETA:
	A)
	Ao se modularizar um código, abstrai-se um algoritmo, isto é, divide-o em partes menores. (CORRETA)B)
	Ao se modularizar um código, cria-se apenas procedimentos no código.
 
	C)
	Ao se modularizar um código, desenvolve-se funções com várias funcionalidades.
 
	D)
	Ao se modularizar um código, cria-se apenas funções no código.
	22.
	A modularização de código-fonte surgiu devido a problemas com a época conhecida por crise de software, na qual os códigos-fonte eram muito confusos, mal estruturados, não seguiam uma metodologia de qualidade, ocasionando altos custos, prazos ultrapassados e dificuldades e muito trabalho na manutenção destes programas.
 
Referente a modularidade, assinale a alternativa CORRETA:
	A)
	Uma função pode ser entendida como uma sub-rotina que não retorna uma resposta para a unidade mestre.
	B)
	Um procedimento pode ser descrito como sinônimo de função, pois ambos são sub-rotinas e realizam a mesma funcionalidade.
 
	C)
	Um procedimento pode ser entendido como uma sub-rotina que não retorna uma resposta.(CORRETA)
	D)
	Um procedimento pode ser descrito como uma sub-rotina que retorna uma resposta para a sua unidade mestre.
	23.
	Dividir um código-fonte em módulos pode ser descrito por dividi-lo em blocos de código que podem efetuar operações computacionais de entrada, processamento e saída. Utilizando-se esta metodologia de dividir um problema complexo em módulos, está se tratando os problemas de forma isolada.
 
Referente a modularização de código, assinale a alternativa CORRETA:
	A)
	Cada módulo deve possuir mais de um ponto de entrada; a unidade mestre permanece suspensa enquanto a unidade escrava executa suas instruções.
 
 
	B)
	Cada módulo deve possuir um ponto de entrada; a unidade mestre continua executando seu fluxo enquanto a unidade escrava executa suas instruções.
 
	C)
	Cada módulo deve possuir mais de um ponto de entrada; a unidade mestre continua executando seu fluxo enquanto a unidade escrava executa suas instruções.
	D)
	Cada módulo deve possuir um ponto de entrada; a unidade mestre permanece suspensa enquanto a unidade escrava executa suas instruções.(CORRETA)
	24.
	O desenvolvimento de software é uma tarefa complexa, pois existem vários fatores que contribuem para isso. As diversas regras necessárias para a implementação em um código-fonte por exemplo, que o torna complexo de se desenvolver e para uma futura manutenção.
 
Esta questão pode ser amenizada utilizada os princípios da modularidade. Referente a modularidade, assinale a alternativa CORRETA:
	A)
	É a divisão de um código-fonte em partes maiores e mais específicas.
	B)
	É a  divisão de um código-fonte em partes menores mais específicas. (CORRETA)
	C)
	É a divisão de um código-fonte em partes maiores e menos específicas.
	D)
	É a divisão de um código-fonte em partes menores e menos específicas.
	25.
	A modularização de código-fonte facilita o trabalho de programação de software, além de fazer com que o programa tenha uma qualidade melhor, inclusive mais assertividade nos prazos e custos de um projeto. Os procedimentos são sub-rotinas, assim como funções, com a diferença de que funções retornam umas resposta para sua unidade mestre.
 
Neste contexto, analise código-fonte modularizado a seguir, e então assinale a alternativa CORRETA:
	
	A)
	O código-fonte apresenta a utilização de uma função que realiza o cálculo de soma de dois números informados pelo usuário.(CORRETA)
	B)
	O código-fonte não funciona em um compilador devido a ter passagem de parâmetros, que são apenas utilizadas em procedimentos.
 
	C)
	O código-fonte não funciona em um compilador devido a ter passagem de parâmetros, e a existência de variáveis globais, o que causa conflito.
	D)
	O código-fonte apresenta a utilização de um procedimento que realiza o cálculo de soma de dois números informados pelo usuário.

Continue navegando