Buscar

Log Program

Prévia do material em texto

Log. Program
		Levando em consideração a Arquitetura de Computadores baseado em John Von Neumann, qual a área responsável por ler dados dos dispositivos de entrada
	
	
	
	Processador
	
	
	Acumulador
	
	
	Memória
	
	
	Unidade de Controle
	
	
	Unidade Lógico Aritmética
	
Explicação: Segundo John Von Neumann a Unidade de Controle é responsável por: -> Controlar as ações realizadas pelo computador, comandando todos os demais componentes de sua arquitetura -> Ler dados ou instruções da memória ou dos dispositivos de entrada -> Decodificar as instruções -> Alimentar a ULA com as entradas corretas de acordo com as instruções -> Enviar os resultados à memória ou aos dispositivos de saída
	
	
	
	 
		
	
		2.
		Quando declaramos uma variável em C++, essa variável ficará em uma memória de trabalho do processador. Assinale a alternativa contrarrespondente.
	
	
	
	DISCO RÍGIDO
	
	
	ROM
	
	
	RAM
	
	
	CACHE
	
	
	REGISTRADOR
	
	
	
	 
		
	
		3.
		Marque a alternativa correta. Componente dentro do processador que realiza as operações lógicas e matemáticas?
	
	
	
	Unidade lógica aritmética
	
	
	Disco rígido.
	
	
	Registrador de dados de memória.
	
	
	Memória principal.
	
	
	Registrador de memória.
	
	
	
	 
		
	
		4.
		O que melhor define o conceito de PROGRAMAÇÃO ?
	
	
	
	Escrever uma lista de ações que serão executados por um equipamento.
	
	
	Realizar a extração de requisitos a partir de um problema apresentado.
	
	
	Ato de escrever textos e documentos.
	
	
	Montar um computador, conhecendo todos os seus componentes de hardware.
	
	
	Utilizar um equipamento automatizado para realizar uma determinada tarefa.
	
	
	
	 
		
	
		5.
		(ESAF - 2010 - SUSEP - Analista Técnico - Prova 2 - Tecnologia da Informação) Segundo o conceito da Máquina de Von Neumann para os programas de computador (ou instruções)
	
	
	
	os dados ficam armazenados na memória, não havendo armazenamento de instruções.
	
	
	instruções e dados são armazenados na mesma memória.
	
	
	instruções e dados são armazenados em memórias distintas.
	
	
	instruções e dados não são armazenados, com vistas à otimização do uso da memória.
	
	
	apenas instruções ficam armazenadas.
	
	
	
	 
		
	
		6.
		Von Neumann sugeriu uma forma de organizar o computador por meio de elementos. Assinale a alternativa que representa alguns destes elementos:
	
	
	
	Memória / Placa de vídeo
	
	
	Barramento / Unidade de controle
	
	
	Unidade lógica e aritmética / Dispositivo de atribuição
	
	
	Disco rígido / Unidade de controle
	
	
	Unidade de controle / Dispositivos de entrada e saída
	
	
	
	 
		
	
		7.
		O computador só entende linguagem de 0's e 1's. Nesse sentido, é importante conhecer como fazer a conversão de um número da base decimal para um número na base binária. O número 10101111b, se escrito na base decimal, equivale a:
	
	
	
	84
	
	
	175
	
	
	105
	
	
	122
	
	
	120
	
	Gabarito
Coment.
	
	
	Gabarito
Coment.
	
	
	Gabarito
Coment.
	
	
	
	 
		
	
		8.
		Segundo a Arquitetura de Von Neumann, quais os elementos básicos que compõe a estrutura de um computador?
	
	
	
	Unidade Lógica e Aritmética, Dispositivos de Entrada e Saída
	
	
	Teclado, Monitor e CPU
	
	
	Unidade Lógica e Aritmética, Dispositivos de Entrada e Saída
	
	
	Memória, Unidade de Controle, Unidade Lógica e Aritmética
	
	
	Memória, Unidade de Controle, Unidade Lógica e Aritmética, Dispositivos de Entrada e Saída
	
	
 
		
	
		1.
		Para a expressão "valor <- 1.2 * deposito", identifique qual é o melhor tipo de dado a ser relacionado a estas variáveis. Assinale a alternativa correta.
	
	
	
	Caractere
	
	
	Inteiro
	
	
	Real
	
	
	Lógico
	
	
	Long
	
	
	
	 
		
	
		2.
		Em programação utilizam-se variáveis para armazenar valores e também para dar nome a uma determinada área de memória do computador onde os dados ficam armazenados. Determine qual das alternativas abaixo apresenta todos os nomes de variáveis VÁLIDOS em uma linguagem de programação.
	
	
	
	Funcionario, salario100, b
	
	
	salario100, 1ª
	
	
	salario-medio, b, Funcionario
	
	
	Funcionario, salario100, salario-medio
	
	
	1a , b
	
	
	
	 
		
	
		3.
		"Trata-se de uma posição (endereço) na memória do computador, a qual é reservada para armazenar os dados que o programa vai manipular. Esta posição precisa ter um nome e um tipo de dado associado ao que ela armazena". Esta descrição faz referência a qual das opções abaixo:
	
	
	
	Função
	
	
	Variável
	
	
	Constante
	
	
	Repetição
	
	
	Biblioteca
	
	
	
	 
		
	
		4.
		No Sistema Binário, por ser um sistema posicional assim como o Sistema Decimal, cada posição tem um valor. Assinale a opção onde estão presentes os valores das cinco primeiras posições, começando pela de maior valor(esquerda) e indo para a de menor valor(direita).
	
	
	
	8 / 6 / 4 / 2 / 0
	
	
	10 / 8 / 6 / 4 / 2
	
	
	16 / 8 / 4 / 2 / 1  
	
	
	32 / 16 / 8 / 4 / 2
	
	
	10000 / 1000 / 100 / 10 / 1
	
	
	
	 
		
	
		5.
		Existe um registrador que é ponto de concentração de tudo que é armazenado na, ou copiado da, Memória Principal. Assinale a opção onde está presente esse registrador.
	
	
	
	RDM
	
	
	RI
	
	
	REM
	
	
	CC
	
	
	PC
	
	
	
	 
		
	
		6.
		Podemos construir um algoritmo, usando várias linguagens. Assinale a opção CORRETA que representa uma linguagem mais próxima de uma linguagem de alto nível, mas que faz uso da língua nativa e cuja sintaxe fica mais próxima da linguagem de preferência do professor/ autor.
	
	
	
	Pseudolinguagem
	
	
	Linguagem de marcação
	
	
	Linguagem gráfica
	
	
	Linguagem natural
	
	
	Linguagem computacional
	
	
	
	 
		
	
		7.
		O comando que exibe na tela o conteúdo de variável, constante ou resultado de operação é:
	
	
	
	Leia
	
	
	Escolha
	
	
	Para
	
	
	Imprima
	
	
	se 
	
	
	
	 
		
	
		8.
		Na prova de Lógica de Programação, na questão dissertativa, era pedido para se construir um algoritmo de nome prova que exibisse a palavra Engenheiro(a) na primeira linha e a expressão EAD-ESTACIO, começando na segunda zona da terceira linha. Abaixo estão as respostas de cinco alunos. Só uma atende às exigências do enunciado. Assinale a opção CORRETA.
	
	
	
	prog  prova  imprima "Engenheiro(a)\n\n\n\tEAD-ESTACIO"; fimprog
	
	
	prog  prova  imprima "Engenheiro(a)\n\n\tEAD-ESTACIO"; fimprog
	
	
	prog  teste  imprima "Engenheiro(a)\n\n\tEAD-ESTACIO"; fimprog
	
	
	prog  teste  imprima "Engenheiro(a)\t\n\n\nEAD-ESTACIO"; fimprog
	
	
	prog  prova  imprima "Engenheiro(a)\t\n\nEAD-ESTACIO"; fimprog
		
	
		1.
		Um aluno de Lógica de Programação digitou o programa abaixo, clicou no botão de "Compilar e Executar". Qual será a saída apresentada na tela? Justifique sua resposta.
#include
using namespace std;
int main() {
   int num1 = 20, num2 = 8, num3;
   num3 = num1 - num2;
   num2 = num2 / 2;
   num1 =  num3 % num2;
   cout << "\n\n O valor de num1 é: " << num1;
}
	
	
	
	O valor de num1 é 1
	
	
	O valor de num1 é 4
	
	
	O valor de num1 é 3
	
	
	O valor de num1 é 0
	
	
	O valor de num1 é 2
	
Explicação:
Veja-se o código do programa com os comentários ao lado das linhas de comando:
#include
using namespace std;
int main() {
   int num1 = 20, num2 = 8, num3; ---> as variáveis num1, num2 e num3 são de claradas do tipo inteiro, sendo que num1 recebeu 20 e num2 recebeu 8
   num3 = num1 - num2; ---> num3 recebe o resultado da operação num1 - num2, isto é, 20-8=16
   num2 = num2 / 2; ---> num2 recebe o resultado da operação num2/2, isto é, 8/2=4
   num1 =  num3 % num2; ---> num1 recebe o resultado do resto da divisão de num3 por num2, isto é, o resto da divisão e 16 por 4, que é igual a 0 (zero)
   cout << "\n\n O valor de num1 é: " << num1; ---> o comando "cout" exibe os dados: "O Valor de num1 é: 0"}
Portanto, a resposa certa é: "O Valor de num1 é: 0"
	
	
	
	 
		
	
		2.
		Em C++ para a expressão aritmética X = 20 % 2 + 3*2 , qual o valor de X ?
	
	
	
	9
	
	
	6,4
	
	
	7
	
	
	6
	
	
	6,8
	
	
	
	 
		
	
		3.
		Para elaboração de um programa em C++ o comando responsável pela entrada de dados é:
	
	
	
	cin>
	
	
	cout<<
	
	
	cin<<
	
	
	cin>>
	
	
	cout>>
	
Explicação:
As streams cin e cout tratam do principal meio de entrada (cin>>) e saída (cout<<) do C++.
	
	
	
	 
		
	
		4.
		O comando em C++ responsável pela saída de dados é:
	
	
	
	cout>>
	
	
	system("pause");
	
	
	cin>>
	
	
	cin<<
	
	
	cout<<
		
	Gabarito
Coment.
	
		
	Gabarito
Coment.
	
		
	Gabarito
Coment.
	
	
	
	 
		
	
		5.
		Analise o trecho de código abaixo e diga o valor das variáveis X, Y e Z após a sequência de operações do trecho:
	
	
	
	X = -33   Y = 11   Z = 11
	
	
	X =  11   Y = 11   Z = 11
	
	
	X = -11   Y = 11   Z = 11
	
	
	X = -33   Y = 10   Z = 10
	
	
	X = 33   Y = 11   Z = 10
	
	
	
	 
		
	
		6.
		Estava estudando no material de apoio e encontrei o fluxograma abaixo. Supondo que foram digitados os números 7 e 8, qual é a saída?
	
	
	
	7 + 8 /2
	
	
	n1 + n2/2
	
	
	11
	
	
	7 + 4
	
	
	7.5
	
	
	
	 
		
	
		7.
		Em qual das alternativas abaixo existem apenas operadores aritméticos separados por vírgula?
	
	
	
	&&, ||, !
	
	
	>=, %, ==
	
	
	+, - , %
	
	
	!, !=, +
	
	
	&&, ||, %
	
	
	
	 
		
	
		8.
		Uma variável do tipo "float" armazena valores do tipo?
	
	
	
	Real
	
		
	
	
		1.
		Em relação à lógica de programação, considere os pseudocódigos:
 
	
	
	
	Ambos os algoritmos abordam o mesmo problema e chegam ao mesmo resultado.
	
	
	O resultado da solução apresentada por Alg2 é maior do que a de Alg1.
	
	
	O resultado da solução apresentada por Alg2 é menor do que a de Alg1.
	
	
	Somente Alg1 tem consistência em sua representação e chega a um resultado.
	
	
	Somente Alg2 tem consistência em sua representação e chega a um resultado.
	
	
	
	 
		
	
		2.
		O comando que permite que o usuário digite um dado, interagindo com o algoritmo é:
	
	
	
	Enquanto
	
	
	Escrever
	
	
	Escolha
	
	
	se 
	
	
	Ler
		
	Gabarito
Coment.
	
	
	
	 
		
	
		3.
		As funções existem para decompor um problema em partes menores, simplificando e organizando o programa como um todo. Tendo em vista o que foi exposto, assinale a opção que apresenta uma afirmativa ERRADA em relação aos conceitos de funções.
	
	
	
	As variáveis declaradas no corpo de uma função são chamadas variáveis locais.
	
	
	Além do valor de uma variável é possível passar para uma função a referência ou o endereço da variável.
	
	
	O comando return encerra a execução de uma função e pode retornar vários valores para a função chamadora. 
	
	
	Todas as funções apresentam no seu cabeçalho um par de parênteses após o nome da funçao.
	
	
	O protótipo de uma função informa ao compilador o tipo de retorno, o nome e a lista de parâmetros da função.
		
	Gabarito
Coment.
	
	
	
	 
		
	
		4.
		O protótipo de uma função:
	
	
	
	deve preceder a definição da função e toda chamada a ela;
	
	
	pode ser suprimido se a função for definida antes das chamadas;
	
	
	Pode ser escrito em qualquer lugar do programa;
	
	
	é uma instrução que pertence ao corpo da função que chama;
	
	
	NDA
	
	
	
	 
		
	
		5.
		Um aluno da Engenharia gostaria de definir uma função que retornasse a soma dos termos de uma PA Finita
Consultou seus apontamentos e encontrou a fórmula ideal para achar para usar em sua função.
Observe o corpo da função e escolha a opção que corresponde ao cabeçalho dessa função.
	
	
	
	int somaPA( int a1, an, n)
	
	
	int somaPA( int a1, int an, int n);
	
	
	int somaPA( a1, an, n)
	
	
	int somaPA( int a1, an, n);
	
	
	int somaPA( int a1, int an, int n)
		
	Gabarito
Coment.
	
		
	Gabarito
Coment.
	
		
	Gabarito
Coment.
	
	
	
	 
		
	
		6.
		Observe as afirmativas abaixo e assinale a resposta CORRETA
I Duas vantagens para se usar funções: Dividir o programa em partes menores e reusá-las em vários programas.
II Não é obrigado usar o tipo para cada parâmetro no cabeçalho da função se todos forem do mesmo tipo. Somente um é suficiente.
III No protótipo de uma função, podemos usar somente os tipos dos parâmetros, isto é, não precisamos incluir os nomes dos parâmetros.
IV Toda variável declarada dentro da função main() é denominada variável Global.
V Podemos ter nomes de variáveis iguais declaradas em funções diferentes.
	
	
	
	II , IV  e V  são verdadeiras
	
	
	I ,  IV  e  V  são verdadeiras
	
	
	I , III  e  V  são verdadeiras
	
	
	II  , III   e IV  são verdadeiras
	
	
	I , II  e  V  são verdadeiras
		
	Gabarito
Coment.
	
		
	Gabarito
Coment.
	
		
	Gabarito
Coment.
	
	
	
	 
		
	
		7.
		Na lista de exercícios que foi liberada pela professora de Lógica, na questão X, estava presente o algoritmo codificado em Portugol abaixo. No enunciado da questão, era solicitado que fosse feito o acompanhamento da execução do algoritmo no Teste de Mesa e digitada a seguinte data: 111518. Assinale a opção CORRETA para a saída desse algoritmo.
inicio
inteiro data
escrever "Digite a data no formato mmddaa: "
ler data
escrever data % 100, " / "
escrever data / 10000, " / "
escrever (data / 100) %100, "\n"
fim
	
	
	
	11  /  18  /  15
	
	
	15  /  11 /  18
	
	
	18  /  15  /  11
	
	
	18  /  11 /  15
	
	
	11  /  15  /  18
	
	
	
	
	
	
	
	
	
	
	
 
		
	
		1.
		As variáveis A=3.5, B=8, C='x' e D="falso", analise as expressões abaixo e marque a opção que corresponde a ordem correta dos resultados lógicos.
I. (A < B) || (C = = '8') && (D != "verdadeiro")
II. (3*A > B) && (B%2 = = 0.16) && (B-A < 5)
III. (A*B > 25) || (D = = falso) || (C != 'x')
	
	
	
	F / F / V
	
	
	V / F / F
	
	
	V / F / V
	
	
	F / V / F
	
	
	V / V / V
		
	Gabarito
Coment.
	
		
	Gabarito
Coment.
	
	
	
	 
		
	
		2.
		Marque a opção que corresponde a saída de dados do algoritmo abaixo, considerando que os valores informados para x, y e z são 6, 4 e 2, respectivamente.
algoritmo valores
    var x, y, z: inteiro
     inicio
         leia x, y, z
         se (x <= y) e (z > x+y) entao
             y= x + z
             z= x * 2
          senao
            y= x - z
            z= x * 4
        fimse
       escreva x + y + z
   fim
	
	
	
	34
	
	
	35
	
	
	24
	
	
	40
	
	
	36
	
	
	
	 
		
	
		3.
		Entre os operadores lógicos utilizados em C, qual simbolo utilizado para o operador OU?
	
	
	
	>>
	
	
	||
	
	
	//
	
	
	<>
	
	
	\\
	
	
	
	 
		
	
		4.
		Marque a alternativa que representa o resultado do programa abaixo, considerando n="Joao" e an=1990.
#include
main(){
    int an, id;
    char n[10];
    
    printf("Informe um nome: ");
    scanf("%s",&n);
    
    printf("Informe o ano de nascimento: ");
    scanf("%d",&an);
    
    id=2016-an;
    
    if(id>=18)
      printf("%s, voce pode votar em 2016, pois tem %d anos\n",n,id);
    else
      printf("%s, voce nao pode votar em 2016, pois tem %d anos\n",n,id);
    system("pause");
}
	
	
	
	Joao voce pode votar em 2016, pois tem 27 anos
	
	
	Joao nao voce pode votar em 2016, pois tem 16 anos
	
	
	Joao voce pode votar em 2016, pois tem 26 anos
	
	
	Joao voce nao pode votar em 2016, pois tem 26 anos
	
	
	
	 
		
	
		5.
		Analise a seguinte afirmação: "Específicas para dados que contenham letras e/ou números. Pode em determinados momentos conter somente dados numéricos ou somente literais. Se usado somente para armazenamento de números, não poderá ser utilizada para operações matemáticas." Qual tipo de variável se refere o texto acima?
	
	
	
	Caracteres
	
	
	Lógicas
	
	
	NuméricasAlfanuméricas
	
	
	Ponteiros
	
	
	
	 
		
	
		6.
		Selecione a opção que apresenta todos os operadores relacionais da linguagem C++.
	
	
	
	>     <    =>    =<    =    <>
	
	
	>    <    >=    <=    =    !=
	
	
	>    <    =>    =<    ==   <>
	
	
	>     <    >=    <=     =    <>
	
	
	>    <   >=    <=    ==   !=
		
	Gabarito
Coment.
	
	
	
	 
		
	
		7.
		O operador lógico "ou" é útil em tipos de análise para verificar se todos os valores são verdadeiros, o que, consequentemente, acarretará em todos os resultados serem também verdadeiros.
	
	
	
	Somente quando utilizada com o operador "ou";
	
	
	Depende da aplicação;
	
	
	Somente quando utilizada com o operador "e";
	
	
	Não, a afirmação é falsa;
	
	
	Sim, a afirmação é verdadeira;
	
	
	
	 
		
	
		8.
		Marque a alternativa correta. Em um programa em C++ para dizer se um numero é positivo ou negativo. A estrutura adequada seria?
	
	
	
	do while
	
	
	for.
	
	
	If else if.
	
	
	while
	
	
	if else.
	
	
	
		1.
		Observe o programa abaixo e, supondo que, quando foi perguntado o valor do número, digitou-se 17.
Em qual opção está presente o número que será exibido ao final?
	
	
	
	32
	
	
	19
	
	
	34
	
	
	17
	
	
	15
		
	Gabarito
Coment.
	
		
	Gabarito
Coment.
	
	
	
	 
		
	
		2.
		Um professor pediu em um chat para que os alunos da turma de Lógica de Programação interpretassem um código que se encontrava no caderno de exercícios e, para cada aluno, enviou quatro números para que pudessem acompanhar duas vezes no teste de mesa.
João que sempre estava presente nos fóruns e chat recebeu os seguintes números: 31 e 11 / 28 e 5.
Observe o código abaixo e assinale a opção onde estão presentes as mensagens que João recebeu na mesma ordem dos números digitados que se encontram acima.
 
	
	
	
	Estado muito critico, pois maximo e minimo alterados / Tudo normal
	
	
	Valor maximo muito alterado / Valor minimo muito alterado
	
	
	Valor maximo muito alterado / Tudo normal
	
	
	Não exibe nada porque estão faltando as chaves dos ifs
	
	
	Estado muito critico, pois maximo e minimo alterados / Valor minimo muito alterado
		
	Gabarito
Coment.
	
		
	Gabarito
Coment.
	
		
	Gabarito
Coment.
	
	
	
	 
		
	
		3.
		Para que uma estrutura if...else  if ... possa ser substituída pela estrutura switch(...)  na linguagem C++, precisamos ficar atento a algumas "regras". Leia as afirmativas abaixo e escolha a resposta que contempla a essas "regras"
I  - Qualquer tipo de variável poderá estar presente nas expressões relacionais dos ifs
II - Só o operador de igualdade poderá estar presente em todas expressões relacionais dos ifs
III - Qualquer operador relacional poderá estar presente nas expressões relacionais dos ifs
IV - A mesma variável tem que estar presente em todas expressões relacionais dos ifs
V - A variável presente em todas expressões relacionais dos ifs tem que ser enumerável
	
	
	
	I, III, e IV estão corretas
	
	
	I, III e V estão corretas
	
	
	II, IV e V estão erradas
	
	
	I, II e IV estão corretas
	
	
	II, IV e V estão corretas
		
	Gabarito
Coment.
	
		
	Gabarito
Coment.
	
	
	
	 
		
	
		4.
		Com base nas estruturas de Algoritmos, quais são as estrutura de Decisão?
	
	
	
	PARA...DE...ATE...FACA ENQUANTO...FACA
	
	
	ESCOLHA... CASO SE...ENTAO...SENAO
	
	
	REPITA... ATE ESCOLHA...CASO
	
	
	SE...ENTAO...SENAO DECIDE...ATE...
	
	
	ENQUANTO... FACA SE... ENTAO... SENAO
		
	Gabarito
Coment.
	
		
	Gabarito
Coment.
	
		
	Gabarito
Coment.
	
	
	
	 
		
	
		5.
		Em relação às estruturas de controle, considere abaixo o trecho inicial do algoritmo que exibe o conceito de um aluno, dada a sua nota. Levando-se em conta somente notas inteiras, o critério para conceitos é: notas menor que 3, conceito E; notas de 3 a 5, conceito D; notas 6 e 7, conceito C; notas 8 e 9, conceito B; nota 10, conceito A.
fimalgoritmo
Continuando a construção do algoritmo acima, a estrutura de controle SE-ENTAO-SENAO-FIMSE será utilizada:
	
	
	
	3 vezes.
	
	
	7 vezes.
	
	
	4 vezes.
	
	
	6 vezes.
	
	
	5 vezes.
		
	Gabarito
Coment.
	
	
	
	 
		
	
		6.
		Observe o programa abaixo com muita atenção e suponha que você digitou nessa ordem: 1.62, 1.78, 1.69. Selecione a opção cujo conteúdo é igual ao que será exibido na tela.
#include
using namespace std;
int main()
{
    float alt1, alt2, alt3;
    cin  >>  alt1  >>  alt2   >>   alt3;
    if(alt1 < alt2 && alt1 < alt3)
        cout << "alt2" << "\t" << "alt3" << endl;
    else if( alt2 < alt3)
              cout << "alt1" << "\t" << "alt3" << endl;
            else
                cout << "alt1" << "\t" << "alt2" << endl;
    system("pause" );
}
	
	
	
	1.78     1.69 //na 1a zona e na 2a zona, respectivamente
	
	
	1.78     1.69 //na 1a zona e na 2a zona, respectivamente
	
	
	alt2      alt3 //na 1a zona e na 2a zona, respectivamente
	
	
	1.62     1.69 //na 1a zona e na 2a zona, respectivamente
	
	
	alt1      alt3 //na 1a zona e na 2a zona, respectivamente
	
 
		
	
		1.
		Pode-se dizer do comando ´para´:
	
	
	
	Sempre varia o contador de 1 em 1.
	
	
	Usa numeros reais como contador.
	
	
	Os valores inicial e final devem ser números fixos.
	
	
	Usa uma condição semelhante ao comando ´se´ para repetir.
	
	
	É uma estrutura de repetição estática com contador incorporado.
	
	
	
	 
		
	
		2.
		Simule o código escrito em pseudo código abaixo:
1. algoritmo "questao"
2. var
3. i, num, soma: inteiro
4. inicio
5. soma=0
6. para i de 8 ate 0 passo - 2 faca
7.    num := i + 1
8.    soma := soma + num
9. fimpara
10. Escreva (soma)
11.fimalgoritmo
Após a execução deste algoritmo qual o valor de saída na variável soma?
 
	
	
	
	0
	
	
	8
	
	
	20
	
	
	45
	
	
	25
	
	
	
	 
		
	
		3.
		Um aluno de Lógica de Programação após estudar a estrutura de repetição for resolveu fazer algumas experiências para tentar repetir um bloco dez vezes.
Abaixo podemos ver os cinco trechos testados por ele.
Assinale a opção que apresenta aqueles que repetiram dez vezes.
	
	
	
	I e IV
	
	
	I, II e V
	
	
	II e V
	
	
	II, III e IV
	
	
	I, IV e V
		
	Gabarito
Coment.
	
		
	Gabarito
Coment.
	
		
	Gabarito
Coment.
	
	
	
	 
		
	
		4.
		Marque a alternativa correspondente ao resultado do trecho de código abaixo: 
VAR
cont, r: inteiro;
INICIO
para cont de 1 até 10 faça 
     r = cont % 3;
     if (r =0 && cont >= 5) então     
        escreva(cont);         
    fimse 
fimpara
FIM
	
	
	
	Exibe os números 3, 6 e 9.
	
	
	Exibe os números 6 e 9.
	
	
	Exibe os números 7 e 8.
	
	
	Exibe os números 4,5,7,8,10.
	
	
	Exibe os números 5,7,8,10.
	
Explicação: Considerando que a contagem vai de 1 a 10 e que só serão exibidos os múltiplos de 3 (r=0) maiores ou iguais a 5 (cont >= 5), serão exibidos somente os números 6 e 9.
	
	
	
	 
		
	
		5.
		O presidente da construtora Sempre Verde precisou, em um determinado momento, reajustar o salário dos funcionários e, como ele sabia programar porque tinha se dedicado muito à disciplina de Lógica de Programação, criou uma função com o seguinte protótipo:
float calcSalario(float salario, float percentual);
 
Baseado nesse protótipo é CORRETO afirmar que a função:
	
	
	
	Retornará dois valores para a função chamadora
	
	
	Não retorna nenhum valor para a função chamadora
	
	
	Recebe dois valores passados por referência
	
	
	Retornará o salário somado ao percentual
	
	
	Recebe dois valores, salário e o percentual, passados por valor
		
	Gabarito
Coment.
	
	
	
	 
		
	
		6.
		Leia atentamente o código:
#include
#include
using namespace std;
int main (){
   int i,x;
   x=5;
   for(i=1;i<=x;i++)
   cout<<i<<" e="" ";
    system("pause");
}</i<<">
A parte do programa controlada pela estrutura de repetição será executada:
	
	
	
	3 vezes1 vez
	
	
	"i" vezes.
	
	
	nenhuma vez.
	
	
	5 vezes
	
	
	
	 
		
	
		7.
		Assinale a opção que identifica a estrutura da linguagem C++ que apresenta as características abaixo:
- Usada quando o número de repetições for desconhecido;
- Executa o bloco, um ou mais comandos entre uma par de chaves, pelo menos uma vez;
- Controlada por um teste ao final;
	
	
	
	for
	
	
	switch
	
	
	if
	
	
	while
	
	
	do...while
		
	Gabarito
Coment.
	
		
	Gabarito
Coment.
	
	
	
	 
		
	
		8.
		O algoritmo abaixo foi construído para gerar a série: 100 99 98 ... 3 2 1.
Entretanto, ele apresenta um erro que não é sinalizado durante a interpretação.
Selecione a opção que aponta o erro.
                                  
	
	
	
	A variável x não foi inicializada
	
	
	Não pode ser usado x++. Tem que trocar para x<-x + 1
	
	
	O teste x >= 1 está errado
	
	
	Teria que colocar \t dentro das aspas na linha onde está o comando imprima.
	
	
	Tem que trocar x++ por x--
	
	
	
		1.
		Os aparelhos de ar-condicionado modernos - também conhecidos como Split - muito mais do que apenas máquinas termodinâmicas são também pequenos computadores que possuem algoritmos que controlam o seu funcionamento. Atualmente, esses aparelhos são configurados por meio de um controle remoto, onde se é programada uma temperatura desejada e assim, o equipamento resfria o ambiente até que a temperatura seja atingida. Considere que exista um equipamento de ar condicionado que tenha sido programado utilizando a linguagem C/C++. Nesse ar-condicionado, existe uma variável real chamada "temp_atual" que armazena a temperatura do ambiente medida por um sensor térmico, e também, uma outra variável real chamada "temp_programada" que armazena a temperatura desejada. Sabendo que todo o processo de resfriamento do aparelho é controlado por uma estrutura de repetição, qual das alternativas a seguir, melhor se adequa para o trecho do código em que se controla a repetição da máquina de resfriamento do aparelho enquanto for necessário?
	
	
	
	While (temp_programada <= temp_atual)
	
	
	For (temp_atual=25; temp_atual>temp_programada;temp_atual=temp_atual+1)
	
	
	While (temp_atual > temp_programada)
	
	
	While (temp_programada == temp_atual)
	
	
	For (temp_atual=25; temp_atual>temp_programada;temp_atual=temp_atual-1)
	
	
	
	 
		
	
		2.
		A estrutura while apresenta certas características e/ou exigências para que possa ser executada sem problemas e quando não está simulando nenhuma outra estrutura de repetição, podemos afirmar que:
I É uma estrutura usada quando o número de repetições for desconhecido.
II Controla a repetição com um teste (condição) ao final.
III Não é indicada para trechos de proteção na entrada de dados.
IV O usuário não pode decidir quando interrompe a repetição.
V Uma leitura, ou atribuição, para variável testada na condição deverá ser feita antes da estrutura e outra, ao final do bloco da estrutura.
Assinale a opção que relaciona as afirmativas corretas.
	
	
	
	As afirmativas III e IV
	
	
	As afirmativas I, II e III
	
	
	As afirmativas II, IV e V
	
	
	As afirmativas II, IV e V
	
	
	Afirmativas I e V
		
	Gabarito
Coment.
	
	
	
	 
		
	
		3.
		Considere o programa em C++ abaixo. Ao executá-lo, assinale abaixo a quantidade de números que serão lidos.
	
	
	
	5 números
	
	
	11 números
	
	
	2 números
	
	
	9 números
	
	
	10 números
	
	
	
	 
		
	
		4.
		O professor de Algoritmos pediu aos alunos para construírem  um programa, codificado na linguagem C++,  que exibisse os algarismos de um número, começando pelo algarismo da casa das unidades simples até o algarismo mais significativo.
Assinale a opção que apresenta o trecho capaz de exibir o que foi pedido, considerando apenas os valores maiores do que zero.
	
	
	
	int num, digito;
cout << "Numero: " ;
cin >> num;
while (num > 0)
{
num = num / 10;
digito = num % 10 ;
cout << digito << "\t" ;
}
	
	
	int num;
cout << "Numero: ";
cin >> num;
while (num > 0)
{
cout << num % 10 << "\t" ;
num = num / 10;
}
	
	
	int num;
cout << "Numero: " ;
cin >> num;
while (num > 0)
{ num = num div 10;
cout << num % 10 << "\t" ;
}
	
	
	int num, digito;
cout << "Numero: " ;
cin >> num;
while (num > 0)
{
digito = num mod 10;
cout << digito << "\t" ;
num = num div 10;
}
	
	
	int num;
cout << "Numero: ";
cin >> num;
if (num > 0)
{
cout << num % 10 << "\t" ;
}
else
num = num / 10;
	
	
	
	 
		
	
		5.
		Analise o algoritmo abaixo:
Algoritmo "repetidores"
var
cont:inteiro
cont <- 1
enquanto cont <= 10 faca
  escreval("Algoritmos é 10!")
  cont <- cont + 2
fimenquanto
fimalgoritmo
Responda quantas vezes a frase "Algoritmos é 10!" será mostrada.
	
	
	
	5 vezes
	
	
	11 vezes
	
	
	10 vezes
	
	
	Nenhuma vez
	
	
	9 vezes
	
	
	
	 
		
	
		6.
		Dado o algoritmo abaixo, simule sua execução e determine quantas vezes a palavra "Sucesso"será impressa? Assinale a resposta correta.
 algoritmo "Gerador Numerico"
   var A: inteiro
   Inicio
     Para A de 50 ate 100 passo 2
         Escreva ("Sucesso")
     Fimpara
  Fimalgoritmo
	
	
	
	100 vezes
	
	
	50 vezes
	
	
	26 vezes.
	
	
	25 vezes
	
	
	A Palavra Sucesso será escrita 51 vezes
	
	
	
	 
		
	
		7.
		Para a estrutura de repetição for representada a seguir, qual das respostas abaixo corresponde aos valores que a variável "c" irá assumir durante sua execução:
 for( c=10; c>=1; c-- )
	
	
	
	11 10 9 8 7 6 5 4 3
	
	
	10 9 8 7 6 5 4 3 2 1
	
	
	12 10 9 8 7 6 5 4 3 2
	
	
	10 8 6 4 2 1 0
	
	
	10 8 6 4 2 1
	
	
	
	 
		
	
		8.
		Um desenvolvedor precisava construir um trecho de proteção que só aceitasse os algarismos 1 e 8. Fez cinco trechos, mas só um protegeu a entrada como ele desejava.
 
Assinale a opção onde se encontra o trecho correto.
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
 
		
	
		1.
		Das estruturas de repetição utilizadas na elaboração de algoritmos, temos a estrutura de repetição contada e a estrutura de repetição condicional (com teste no início e teste no final do laço de repetição). Considerando o funcionamento destas estruturas, avalie as asserçoes abaixo e marque a alternativa correta:
I - Na estrutura de repetição contada, o número de repetições dos comandos dentro do laço é previamente conhecido;
II- Na estrutura de repetição condicional, com teste no final, o conjunto de comandos dentro do laço é executado pelo menos uma vez;
III- qualquer estrutura de repetição condicional sempre pode ser substituida por uma estrutura de repetição contada. 
	
	
	
	Todas são verdadeiras
	
	
	Apenas III é verdadeira
	
	
	Apenas I é verdadeira
	
	
	Apenas II e III são verdadeiras
	
	
	Apenas I e II são verdadeiras
	
Explicação: Apenas III é falso. É exatamente o contrário: qualquer estrutura de repetição contada pode sempre ser substituída por uma estrutura de repetição condicional.
	
	
	
	 
		
	
		2.
		Observe o algoritmo abaixo e selecione a opção que resume o que ele faz.
 
              
	
	
	
	Repete enquanto o conteúdo de num não for múltiplo de 5, exibindo o quadrado de cada número digitado exceto o do último
	
	
	Repete enquanto o conteúdo de num for múltiplo de 5, exibindo o dobro de cada número digitado inclusive do último
	
	
	Repete enquanto o conteúdo de num não for múltiplo de 5, exibindo o dobro de cada número digitado exceto do último
	
	
	Repete enquanto o conteúdo de num for múltiplo de 5, exibindo o dobro de cada número digitado exceto do último
	
	
	Repete enquanto o conteúdo de num não for múltiplo de 5, exibindo o quadrado de cada número digitado inclusive do último
		
	Gabarito
Coment.
	
		
	Gabarito
Coment.
	
		
	Gabarito
Coment.
	
	
	
	 
		
	
		3.
		Durante a elaboração de um programa em C++ você terá que verificar se um valor digitado pelo usuário na linha de comando será menor que zero. Para que o programa realize essa tarefade forma adequada qual será a estrutura a ser utilizada?
	
	
	
	WHILE
	
	
	DO... WHILE
	
	
	XTEST
	
	
	IF
	
	
	FOR
	
Explicação: Para realizar a referida tarefa deve ser utilizada uma estrutura de decisão, IF;
	
	
	
	 
		
	
		4.
		Quais os conteúdos  das variáveis X, Y e Z , respectivamente, após a execução do código abaixo? 
x = 5; 
y = 7; 
z = 3;
for (ind=1;ind>=3;ind++)
{
   if  ((x - 1) > 2)
      y = y + 1;
   else 
      y = y -1; 
   z = z + x + y;
}
	
	
	
	4, 10, 45
	
	
	5, 10, 45
	
	
	5, 9 , 30
	
	
	45, 10., 5
	
	
	5, 7, 3
	
Explicação:
x    y    z
5    7     3
      8    16
      9    30
     10   45
	
	
	
	 
		
	
		5.
		Observe o algoritmo abaixo e selecione a opção que resume o que ele faz.
 
                                          
	
	
	
	Repete 6 vezes: a entrada de dados; conta quando for par e conta todos os números.
	
	
	Repete 5 vezes: a entrada de dados; conta quando for par e conta todos os números.
	
	
	Repete 5 vezes: a entrada de dados; conta quando for ímpar;  conta todos os números e exibe, ao final, o percentual de ímpares.
	
	
	Repete 6 vezes: a entrada de dados; conta quando for ímpar e conta todos os números.
	
	
	Repete 6 vezes a entrada de dados; conta quando for ímpar ;  conta todos os números e exibe, ao final, o percentual de ímpares.
		
	Gabarito
Coment.
	
		
	Gabarito
Coment.
	
		
	Gabarito
Coment.
	
	
	
	 
		
	
		6.
		Um aluno estava estudando para a prova de Lógica de Programação quando viu um exercício que pedia para que fosse construído um trecho que pudesse simular a estrutura do for, usando do ... while.
 
Observe o trecho abaixo e escolha a opção que resolve esse problema:
	
	
	
	x=2;
do
{
cout << x << "\n" ;
x += 2;
}
while(x <= 10);
	
	
	x=0;
do
{
x += 2; cout << x << "\n" ;
}
while(x <= 10);
	
	
	x=2;
do
{
cout << x << "\t" ;
x += 2;
}
while(x <= 10);
	
	
	do
{
x=2; cout << x << "\n" ;
x += 2;
}
while(x <= 10);
	
	
	x=2;
do
cout << x << "\n" ;
x += 2;
while(x <= 10);
	
	
	
		1.
		Um Analista de Sistemas recebeu a tarefa de implementar uma sub-rotina que, a partir de uma matriz de entrada "A", gerasse uma outra matriz de saída "B". Um pedaço desta sub-rotina está apresentado abaixo:
Considere a matriz A = (aij) de dimensão 2 x 2, a seguir, onde aij são os elementos da matriz
Nesta matriz, por exemplo, o elemento a11 possui o valor 3. A matriz "B" resultante da execução do algoritmo acima, tendo a matriz "A" como entrada, é:
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	 
		
	
		2.
		Existem muitas funções, agrupadas em bibliotecas, disponíveis para a linguagem C++.
Um desenvolvedor gostaria de definir o número de casas decimais(3) na saída.
Em qual biblioteca e qual(is) a(s) função(ões) que é(são) necessária(s) para que ele consiga fazer o que deseja?
	
	
	
	cstdlib / setbase(3)
	
	
	iomanip / fixed / setprecision(3)
	
	
	iomanip / fixed(3)
	
	
	cstdlib / fixed(3) / setprecision
	
	
	cstdlib / setprecision(3)
	
	
	
	 
		
	
		3.
		Um programador percebeu que, mesmo numerando um menu, existia a possibilidade do usuário, sem querer, pressionar uma tecla que não tivesse algarismo.
 
Por essa razão, resolveu fazer a entrada usando um vetor de char e procurou uma função que pudesse converter para número inteiro a resposta do usuário, mesmo sabendo que poderia retornar 0 se não fosse um número, mas evitaria erro na execução.
 
Selecione a opção onde está presente a função pré-definida que possibilita isso.
	
	
	
	charInt(...)
	
	
	atof(...)
	
	
	strlwr(...)
	
	
	strupr(...)
	
	
	atoi(...)
		
	Gabarito
Coment.
	
		
	Gabarito
Coment.
	
	
	
	 
		
	
		4.
		Um programador gostaria de converter para minúsculas todas as letras de uma profissão, mas sabe-se que o número de caracteres varia.
 
Além de uma estrutura de repetição, precisaria de algumas funções para conseguir o que pretendia. 
 
Assinale a opção onde estão presentes essas funções.
	
	
	
	strcat(...)  e  atoi(...)
	
	
	strlen(...)  e  tolower(...)
	
	
	strlen(...)  e   toupper(...)
	
	
	tolower(...)   e  toupper(...)
	
	
	strcmp(...)  e  atoi(...)
		
	Gabarito
Coment.
	
		
	Gabarito
Coment.
	
		
	Gabarito
Coment.
	
	
	
	 
		
	
		5.
		Observe o algoritmo a seguir, expresso na forma de uma pseudolinguagem:
No mesmo algoritmo, suponha que o código:
seja substituído por:
Dessa forma, a soma de todos os valores presentes em Vetor, ao final da execução desse algoritmo modificado para os mesmos valores inseridos, será:
	
	
	
	8.
	
	
	6.
	
	
	12.
	
	
	10.
	
	
	4.
	
	
	
	 
		
	
		6.
		Considere o algoritmo abaixo, em pseudocódigo:
Suponha que os dados de entrada A e NOME sejam, respectivamente, "1" e "Maria". Qual a saída do algoritmo?
	
	
	
	5
	
	
	1
	
	
	4
	
	
	3
	
	
	2
	
	
	
	 
		
	
		7.
		Qual a finalidade da função TOUPPER
	
	
	
	A função não existe
	
	
	Coverter, de uma só vez, um vetor de caracteres somente com letras em minúsculas
	
	
	Coverter, de uma só vez, um vetor de caracteres somente com letras em maiúsculas
	
	
	Coverter, cada letra, de um vetor de caracteres em maiúsculas
	
	
	Coverter, cada letra, de um vetor de caracteres em minísculas
ACHAR AS RESPOSTAS : 
	
	1.
		Em relação a algoritmos:
I. É uma sequência lógica de instruções que devem ser seguidas para a resolução de um problema ou para a execução de uma tarefa.
II. Os algoritmos não podem ser utilizados na área das ciências cognitivas devido a sua interpretação ambígua.
III. Os algoritmos podem constituir uma parte importante da documentação de sistemas, pois descrevem as tarefas a serem realizadas pelos programas.
Dadas as sentenças, podemos afirmar que:
	
	
	
	
	I e II são verdadeiras.
	
	
	I e III são verdadeiras.
	
	
	II e III são falsas.
	
	
	I e III são falsas.
	
	
	I e II são falsas.
	
	
	
		Quest.: 2
	
		2.
		Segundo George Pólya, as quatro fases que deverão ser seguidas para se resolver um problema, na ordem, são:
	
	
	
	
	Planeje, Compreenda o problema, Reflita sobre a solução e Execute o plano
	
	
	Planeje, Execute o plano, Compreenda o problema e Reflita sobre a solução
	
	
	Compreenda o problema, Reflita sobre a solução, Planeje e Execute o plano
	
	
	Compreenda o problema, Planeje, Reflita sobre a solução e Execute o plano
	
	
	Compreenda o problema, Planeje, Execute o plano e Reflita sobre a solução    
	
	
	
		Quest.: 3
	
		3.
		Qual o resultado de X sendo: X= 30*4+2*2
	
	
	
	
	nenhuma das outras alternativas
	
	
	360
	
	
	240
	
	
	244
	
	
	124
	
	
	
		Quest.: 4
	
		4.
		Na lista de exercícios que foi liberada pela professora de Lógica, na questão X, estava presente o algoritmo codificado em Portugol abaixo. No enunciado da questão, era solicitado que fosse feito o acompanhamento da execução do algoritmo no Teste de Mesa e digitada a seguinte data: 111518. Assinale a opção CORRETA para a saída desse algoritmo.
inicio
inteiro data
escrever "Digite a data no formato mmddaa: "
ler data
escrever data % 100, " / "
escrever data / 10000, " / "
escrever (data / 100) %100, "\n"
fim
	
	
	
	
	15  /  11 /  18
	
	
	11  /  18  /  15
	
	
	11  /  15  /  18
	
	
	18  /  15  /  11
	
	
	18  /  11 /  15
	
	
	
		Quest.: 5
	
		5.
		Considerando os valores atribuídos as seguintes variáveis inteiras A = 3, B = 8, C = 2 , analise as expressões abaixo e marque a opção que corresponde a ordem correta dos resultados lógicos.
I. (A < B) || (B != 8) && ( C > A)
II. (3 * A > B) && (B%2 == 0) && (B - A < 5)
III. (A * B > 25) || (C < B-A*C) || (A%C == 0)
	
	
	
	
	F  F  V
	
	
	V  V  F
	
	
	F  F  F
	
	
	F  V  F
	
	
	V  F  F
	
	
	
		Quest.: 6
	
		6.
		Para que uma estrutura if...else  if ... possa ser substituída pela estrutura switch(...)  na linguagem C++, precisamos ficar atento a algumas "regras".Leia as afirmativas abaixo e escolha a resposta que contempla a essas "regras"
I  - Qualquer tipo de variável poderá estar presente nas expressões relacionais dos ifs
II - Só o operador de igualdade poderá estar presente em todas expressões relacionais dos ifs
III - Qualquer operador relacional poderá estar presente nas expressões relacionais dos ifs
IV - A mesma variável tem que estar presente em todas expressões relacionais dos ifs
V - A variável presente em todas expressões relacionais dos ifs tem que ser enumerável
	
	
	
	
	I, II e IV estão corretas
	
	
	II, IV e V estão corretas
	
	
	II, IV e V estão erradas
	
	
	I, III, e IV estão corretas
	
	
	I, III e V estão corretas
	
	
	
		Quest.: 7
	
		7.
		1-     Para a estrutura de repetição do para representada a seguir em pseudo código, qual   das respostas abaixo é correta?
 
para  (x<-1;  x<=20;  x++)
	
	
	
	
	Se não iniciar a variável x antes desse comando (x=1), a estrutura de repetição não será executada.
	
	
	O próximo comando depois da execução dessa estrutura terá 20 como o valor da variável x.
	
	
	Os valores de x serão: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
	
	
	Os valores de x serão: 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36
	
	
	Os valores de x serão: 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38
	
	
	
		Quest.: 8
	
		8.
		Analise o código abaixo e assinale a alternativa correta em relação aos valores que serão impressos após a execução do mesmo.
A=10;
Enquanto(A > 0 ) faça
    imprima(A);
    A = A - 3;
Fim-Enquanto
	
	
	
	
	10, 7, 4, 1
	
	
	10, 9, 8, 7, 6, 5, 4, 2, 1
	
	
	4, 1, 8, 6, 3
	
	
	10, 9, 8, 7, 6, 5, 4, 3, 2, 1
	
	
	7, 4, 3, 1
	
	
	
		Quest.: 9
	
		9.
		Assinale a alternativa que corresponde à estrutura de controle/repetição que é executada ao menos uma vez quando presente ao código.
	
	
	
	
	for-while
	
	
	for
	
	
	do
	
	
	if
	
	
	do-while
	
	
	
		Quest.: 10
	
		10.
		Um Analista de Sistemas recebeu a tarefa de implementar uma sub-rotina que, a partir de uma matriz de entrada "A", gerasse uma outra matriz de saída "B". Um pedaço desta sub-rotina está apresentado abaixo:
Considere a matriz A = (aij) de dimensão 2 x 2, a seguir, onde aij são os elementos da matriz
Nesta matriz, por exemplo, o elemento a11 possui o valor 3. A matriz "B" resultante da execução do algoritmo acima, tendo a matriz "A" como entrada, é:

Continue navegando