📘 CodingMarble Learn

Introdução à resolução de problemas

Resolver um problema no computador tem etapas: analisar o problema (entradas, saídas, regras), criar um algoritmo (uma lista finita, clara e ordenada de passos), programá-lo numa linguagem de programação, testá-lo com entradas diferentes e depurá-lo (encontrar e remover erros). Um algoritmo pode ser mostrado como fluxograma (oval = início/fim, paralelogramo = entrada/saída, retângulo = processo, losango = decisão, setas = fluxo) ou como pseudocódigo (português estruturado). A decomposição divide um problema grande em problemas menores, que são resolvidos separadamente e depois juntados.

🎬 História passo a passo

  1. Resolver um problema tem cinco etapas: analisar, escrever um algoritmo, programar, testar e depurar.
  2. Decompor é dividir um problema grande em partes pequenas. Resolva cada parte e depois junte tudo.
  3. Os fluxogramas usam formas. A oval é início ou fim. O paralelogramo é entrada ou saída. O retângulo é um processo. O losango é uma decisão.
  4. Este fluxograma mostra o maior entre A e B. A ficha segue o caminho SIM porque 7 é maior que 4.
  5. O pseudocódigo escreve os mesmos passos em linguagem simples, uma linha de cada vez.
  6. Sua vez: escolha A e B. Veja qual caminho a ficha segue.

Dica: arraste a cena 3D para girar. Use dois dedos para dar zoom.

🤔 Dúvidas comuns, esclarecidas

Por que escrever um algoritmo antes de programar?

Pensar nos passos primeiro garante que você programe a ideia certa. Corrigir um plano é bem mais fácil do que corrigir um programa grande.

A decomposição serve só para softwares grandes?

Não. Até um programa pequeno fica mais fácil quando é dividido em entrada, processo e saída.

Por que uma decisão precisa de um losango?

O losango mostra uma pergunta de sim ou não, com duas saídas. O retângulo tem uma só saída, então não consegue ramificar.

O que acontece quando A é igual a B?

A > B é falso, então a ficha segue o caminho NÃO e mostra B, que tem o mesmo valor. Teste no modo livre.

Fluxograma ou pseudocódigo: qual é melhor?

O fluxograma é mais fácil de ver em problemas pequenos; o pseudocódigo é mais rápido de escrever e mais próximo do código de verdade em problemas maiores.

Etapas da resolução de problemas

  1. Analisar o problema: entender o que é dado (entrada), o que se quer (saída) e as regras.
  2. Criar um algoritmo: escrever a solução em passos claros e ordenados.
  3. Programar: transformar o algoritmo num programa em uma linguagem como Python.
  4. Testar: executar com muitas entradas, inclusive casos extremos (0, números negativos, valores muito grandes).
  5. Depurar: encontrar e corrigir erros; depois testar de novo.

Um algoritmo precisa ter: entrada e saída claras, passos finitos (ele precisa terminar), passos precisos (sem ambiguidade) e dar o resultado correto.

Fluxogramas

Um fluxograma é o desenho de um algoritmo, feito com símbolos padrão ligados por setas.

Os fluxogramas são fáceis de entender visualmente, mas ficam enormes em problemas grandes.

Pseudocódigo

O pseudocódigo escreve um algoritmo em frases simples, parecidas com a língua do dia a dia, com palavras-chave como INPUT, COMPUTE, PRINT, IF…ELSE, WHILE. Não é uma linguagem de verdade, por isso não se preocupa com a sintaxe exata.

INPUT A, B
IF A > B THEN
    PRINT A
ELSE
    PRINT B

Os algoritmos podem ter sequência (passos um após o outro), seleção (decisões com IF) e repetição (laços).

Decomposição

Decomposição é dividir um problema complexo em problemas menores e mais simples. Cada parte é resolvida (muitas vezes por uma pessoa ou função diferente) e depois todas são combinadas.

Exemplo: um sistema de reserva de trens se decompõe em: buscar trens, verificar lugares, reservar o bilhete, receber o pagamento e imprimir o bilhete.

Vantagens: fica mais fácil de entender, o trabalho pode ser dividido, os erros são mais fáceis de achar e as partes podem ser reutilizadas.

Foco na prova

Espere: desenhar um fluxograma ou escrever pseudocódigo para tarefas simples (maior de dois números, soma dos n primeiros números, par/ímpar, conceito a partir da nota), dar nome aos símbolos, listar as etapas da resolução de problemas e explicar decomposição com um exemplo.

Fórmulas e definições principais

Exemplos resolvidos

1. Escreva um algoritmo para calcular a área de um retângulo.

1. Início. 2. Ler o comprimento L e a largura B. 3. Área = L × B. 4. Mostrar a área. 5. Fim.

2. Escreva um pseudocódigo para verificar se um número é par ou ímpar.

INPUT N IF N MOD 2 = 0 THEN PRINT "Par" ELSE PRINT "Ímpar"

3. Descreva um fluxograma que mostre a soma dos números de 1 a 10.

Início → processo: sum = 0, i = 1 → decisão: i <= 10? → Sim: processo sum = sum + i, i = i + 1, seta de volta para a decisão → Não: saída sum → Fim.

4. Decomponha 'organizar o dia de esportes da escola'.

Subproblemas: listar as provas, inscrever os alunos, preparar a quadra e o material, fazer o cronograma, julgar e registrar os resultados, entregar os prêmios. Cada um pode ficar com uma equipe e depois tudo se junta.

5. Siga o fluxograma do maior número com A = 5, B = 12.

Início → entrada A = 5, B = 12 → 5 > 12? Não → mostrar B = 12 → Fim.

6. Escreva um pseudocódigo para mostrar o conceito: nota ≥ 90 → A, ≥ 75 → B, senão C.

INPUT M IF M >= 90 THEN PRINT "A" ELSE IF M >= 75 THEN PRINT "B" ELSE PRINT "C"

Erros comuns

Quiz de prática

1. Qual símbolo é usado para uma decisão em um fluxograma?
2. Encontrar e remover erros se chama:
3. Um algoritmo precisa ser:
4. Entrada e saída em um fluxograma usam um:
5. Dividir um problema em partes menores é:

Prática: responda você mesmo

Digite ou escolha sua resposta e aperte Conferir. Use a dica se travar; a solução completa aparece depois que você responder.

Perguntas frequentes

Quais são as etapas da resolução de problemas em Computação?

Analisar o problema, criar um algoritmo, programá-lo, testá-lo e depurá-lo.

Qual é a diferença entre algoritmo e fluxograma?

O algoritmo é a solução passo a passo escrita em palavras; o fluxograma é um desenho dos mesmos passos usando símbolos.

O que é decomposição?

Dividir um problema complexo em subproblemas menores, que são resolvidos separadamente e depois combinados.

Onde isso é ensinado

Canada (Ontario)Grade 10C. Programming
Canada (Ontario)Grade 11B. Software Development
Canada (Ontario)Grade 11B. Software Development
ItalySecondaria di secondo grado – classe 1ªComputer basics and programming
ItalySecondaria di secondo grado – classe 1ªElements of computer science
ItalySecondaria di secondo grado – classe 1ªElements of computer science
ItalySecondaria di secondo grado – classe 1ªElements of computer science
ItalySecondaria di secondo grado – classe 2ªComputer basics and programming
ItalySecondaria di secondo grado – classe 2ªElements of computer science
ItalySecondaria di secondo grado – classe 2ªElements of computer science
ItalySecondaria di secondo grado – classe 2ªElements of computer science
NetherlandsVWO 3 (onderbouw)Mathematical thinking
NetherlandsHAVO 4 (bovenbouw, 2e fase)Foundations
NetherlandsVWO 4 (bovenbouw, 2e fase)Foundations
PolandLiceum ogólnokształcące, klasa IUnderstanding, analysing and solving problems
PolandLiceum ogólnokształcące, klasa IIIDesigning and programming algorithms (I + II)
RomaniaClasa a VIII-aAlgorithms
RomaniaClasa a IX-aMilitary profile (mathematics-informatics, military)
RomaniaClasa a X-aFundamental algorithms on arrays
Spain2º ESOComputational thinking, programming and robotics
Spain3º ESOComputational thinking, programming and robotics
Spain1º BachilleratoAlgebraic Sense
Spain1º BachilleratoAlgebraic Sense
Spain1º BachilleratoAlgebraic sense and computational thinking
CBSE (India)Class 11Computational Thinking and Programming - 1
England (GCSE, A level)Year 103.1 Fundamentals of algorithms
USA (Common Core, NGSS, AP)Grade 8Algorithms and Programming
USA (Common Core, NGSS, AP)Grade 9Algorithms and Programming
USA (Common Core, NGSS, AP)Grade 10Big Idea 3: Algorithms and Programming
USA (Common Core, NGSS, AP)Grade 11Algorithms and Programming
Japan高校(専門学科)1〜3年Programming
Japan高校(専門学科)1〜3年Programming Technology
South Korea중학교 2학년Algorithms and programming
South Korea중학교 3학년Abstraction and algorithms
South Korea고등학교 3학년Abstraction and algorithms
FrancePremièreAlgorithms
FranceTerminaleAlgorithms
FranceTerminaleSpecific option — management information systems
Russia7 классAlgorithms and programming
Russia8 классAlgorithms and programming
Russia10 классAlgorithms and programming
China高一Comp.1 Ch.2 Algorithms and programs

Aprenda depois