Prévia do material em texto
Exercicio 1) Você possui duas caixas: uma com o número 5 e outra com o número 10. Descreva, em forma de algoritmo (seguir o pseudocódigo do Apêndice), como trocar os valores dessas caixas sem perder nenhuma informação. [Relembrar: variáveis e uso de uma variável auxiliar 2) Elabore um algoritmo (seguir o pseudocódigo do Apêndice) que receba uma idade e informe se ele for maior ou menor de idade. Utilize apenas operações matemáticas simples e decisões lógicas e considerar a maior idade igual ou maior que 18 anos. 3) Descreva um algoritmo (seguir o pseudocódigo do Apêndice) que, dado um número inteiro positivo N, calcule a soma de todos os números inteiros de 1 até N. Exemplo: se N = 6, a saída será 1 + 2 + 3 + 4 + 5 + 6 = 21. [Revisar: laço de repetição e uso de variáveis de acumuladoras 4) A memória principal de um computador tem como principal função: A) Armazenar dados permanentemente, mesmo com o computador desligado. B) Executar instruções lógicas e aritméticas do programa. C) Controlar os dispositivos de entrada e saída. D) Armazenar temporariamente dados e instruções em uso pela CPU. E) Fornecer acesso direto ao disco rígido. 5) A Unidade Lógica e Aritmética (ULA) faz parte de qual módulo do computador e qual é sua principal função? A) Da memória principal; responsável por armazenar programas. B) Da CPU; responsável por executar operações matemáticas e lógicas. C) Da memória secundária; responsável por organizar pastas e arquivos. D) Do barramento; responsável por transmitir sinais elétricos. E) Do sistema operacional; responsável por gerenciar usuários. 6) No contexto de sistemas operacionais, um processo pode ser definido como: A) O conjunto de todos os arquivos de um programa no disco rígido. B) A execução de uma tarefa repetitiva pela placa-mãe. C) O nome dado à comunicação entre periféricos. D) A estrutura física da memória RAM. E) Um programa em execução que está sendo gerenciado pelo sistema operacional. 7) Explique com suas próprias palavras o que é um algoritmo. Dê um exemplo simples de uma tividade do cotidiano que pode ser descrita como um algoritmo. 8) Liste e explique três características essenciais que todo algoritmo deve possuir para ser considerado válido e eficiente. [Relembrar ad três estruturas principais de um Algoritmo 9) Por que o estudo de algoritmos é importante na área de programação de computadores? Relacione a lógica dos algoritmos com o desenvolvimento de soluções de problemas computacionais. 10) Ao digitar um texto no computador e enviá-lo para impressão, a impressora produz uma folha com o conteúdo. Neste caso, a saída de dados é representada por: A cerca da estrutura de saída de algoritmos A) O texto digitado no teclado. B) O documento impresso na folha. C) O processo interno da impressora. D) O papel colocado na impressora. E) A memória RAM utilizada pelo sistema. 11) Imagine que você leva roupas sujas para uma lavanderia. Após isso, as roupas passam por um processo de lavagem, enxágue e secagem. Esse processo corresponde, em termos computacionais, a: A) Entrada de dados. B) Armazenamento de dados. C) Processamento de dados. D) Saída de dados. E) Rejeição de dados. 12) Em uma receita de bolo, temos os ingredientes (farinha, ovos, leite etc.) que são entregues à cozinha para iniciar a preparação. Com base nessa analogia, o que representa a entrada de dados em um sistema computacional? A) Os ingredientes fornecidos para o preparo. B) Os passos para misturar e assar os ingredientes. C) O fogão que aquece o forno. D) O tempo de espera até o bolo esfriar. E) O prato onde o bolo será servido. 13) Analise o fluxograma ao lado. O que podemos constatar? A) Falta uma leitura de entrada. B) O fluxo está fora de ordem. C) O bloco de fim está incorreto. D) A escrita está antes da leitura. E) Não há condição lógica definida. 14) Qual é o diagnostico lógico sobre o fluxograma à esquerda? A) O laço é desnecessário. B) O número nunca é lido. C) O número é sempre igual a zero. D) O número nunca é atualizado. E) O teste está no final e não no início do loop. 15) Qual é o erro no fluxo apresentado à direita? A) A multiplicação está incorreta. B) A entrada não é necessária. C) O valor está sendo exibido antes de ser calculado. D) O fluxograma não possui condição. E) O programa não tem fim 16) Liste duas regras para a escolha de identificadores válidos e justifique por que as seguir é importante para a legibilidade e manutenção do código. 17) Descreva o que significa o operador de atribuição em algoritmos. Dê um exemplo simples de atribuição de valor e explique, passo a passo, o que acontece na memória do computador durante a atribuição do valor “2025” em uma variável chamada ano. 18) Em programação, "nomes mágicos" ou "números mágicos" referem-se a valores (números ou texto) que aparecem no código sem uma explicação clara do seu propósito ou significado. Eles são considerados má prática. Comente sobre as consequências de usar identificadores genéricos em algoritmos maiores. [revisar sobre a questão do entendimento e a manutenção do código] 19) Qual é a assinatura da função saudacao? [revisar como uma sub-rotina é formada pelo operador de definição, o identificador, a definição de parâmetros, a definição do retorno e a indentação do bloco de instruções que a compõem] 20) a) O parâmetro numero é de qual tipo de dado? b) Reescreva a função dobro adicionando um construtor para garantir que o valor recebido seja numérico (int ou float). 21) a) O que acontece se passarmos um número como argumento? b) Modifique a função para modificar o argumento para String. 22) a) O que ocorre se for passado uma String como "20"? b) A função está protegida contra qualquer entrada do tipo String? Justifique sua resposta. 23) a) Qual a utilidade da anotação a: int e -> int? b) Cite dois exemplos de chamada inválida da função soma. 24) Implemente uma função chamada formatar_valor(valor) que receba um número do tipo float e retorne uma String com o valor formatado com duas casas decimais, precedido pelo símbolo de R$ (real brasileiro). Exemplo de chamada esperada: 25) Implemente uma função chamada descricao_idade(idade) que receba um número inteiro representando a idade de uma pessoa e retorne uma String no seguinte formato: "A pessoa tem X anos." Exemplo de chamada esperada: 26) O que são sub-rotinas (funções) em Python e qual é a sua importância no desenvolvimento de algoritmos? Como elas ajudam na organização e reutilização do código? Qual a diferença entre funções que retornam valores e funções que apenas executam ações? E por fim, o que significa a assinatura de uma função. 27) Sobre conversão de dados (type casting) em Python: a) Qual a diferença entre conversão implícita e conversão explícita? b) Apresente exemplos de conversão explícita (como int(), float(), str()). c) Exemplifique um exemplo prático de erro que pode ocorrer quando a conversão de tipos é ignorada. 28) Qual das alternativas apresenta um identificador válido para nomear uma variável em Python? A) 2idade B) @nome C) printD) nome_completo E) nome completo 29) Qual das opções representa uma declaração válida de variável e atribuição de valor numérico em Python? A) int idade = 20 B) idade := 20 C) def idade = 20 D) idade == 20 E) idade = "20 anos" 30) Assinale a alternativa que apresenta uma regra correta sobre identificadores em Python: A) Um identificador pode conter espaços se estiver entre aspas. B) Identificadores podem começar com números. C) Palavras reservadas podem ser usadas como identificadores. D) Identificadores podem conter letras, números e sublinhado (_), mas não podem começar com número. E) Python ignora a diferença entre letras maiúsculas e minúsculas em identificadores.