Desafios de Código: Aprimore Sua Lógica e Pensamento Computacional
No universo tech, a habilidade mais valiosa não é saber a linguagem do momento, mas saber pensar como um desenvolvedor. Fortalecer sua base lógica, independente da linguagem.
E se você acha que lógica é só “teoria chata”, calma lá! Vamos aplicar conceitos com exemplos reais, resolvendo os mesmos desafios em Java, C#, Python e JavaScript.
🧠 O que é Pensamento Computacional?
É a habilidade de resolver problemas de forma estruturada, dividindo em partes menores, analisando padrões e criando soluções passo a passo – exatamente como um computador faria, só que com o toque humano de criatividade.
⚙️ Desafio 1 – Par ou Ímpar
🎯 Objetivo:
Receber um número inteiro e imprimir se ele é Par ou Ímpar.
💻 Java
java
CopiarEditar
import java.util.Scanner;
public class ParOuImpar {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int numero = sc.nextInt();
if (numero % 2 == 0) {
System.out.println("Par");
} else {
System.out.println("Ímpar");
}
}
}
💻 C#
csharp
CopiarEditar
using System;
class Program {
static void Main() {
int numero = int.Parse(Console.ReadLine());
if (numero % 2 == 0) {
Console.WriteLine("Par");
} else {
Console.WriteLine("Ímpar");
}
}
}
💻 Python
python
CopiarEditar
numero = int(input())
if numero % 2 == 0:
print("Par")
else:
print("Ímpar")
💻 JavaScript
javascript
CopiarEditar
const numero = parseInt(prompt("Digite um número:"));
if (numero % 2 === 0) {
console.log("Par");
} else {
console.log("Ímpar");
}
⚙️ Desafio 2 – Soma dos Elementos de um Array
🎯 Objetivo:
Receber um array de inteiros e retornar a soma total dos elementos.
💻 Java
java
CopiarEditar
public class SomaArray {
public static void main(String[] args) {
int[] numeros = {10, 20, 30, 40};
int soma = 0;
for (int n : numeros) {
soma += n;
}
System.out.println("Soma: " + soma);
}
}
💻 C#
csharp
CopiarEditar
using System;
class Program {
static void Main() {
int[] numeros = {10, 20, 30, 40};
int soma = 0;
foreach (int n in numeros) {
soma += n;
}
Console.WriteLine("Soma: " + soma);
}
}
💻 Python
python
CopiarEditar
numeros = [10, 20, 30, 40]
soma = sum(numeros)
print(f"Soma: {soma}")
💻 JavaScript
javascript
CopiarEditar
const numeros = [10, 20, 30, 40];
const soma = numeros.reduce((acc, val) => acc + val, 0);
console.log("Soma:", soma);
⚙️ Desafio 3 – FizzBuzz
🎯 Objetivo:
Para números de 1 a 20:
- Se for múltiplo de 3: imprimir
"Fizz"
- Se for múltiplo de 5: imprimir
"Buzz"
- Se for múltiplo de ambos:
"FizzBuzz"
- Senão, imprimir o número
💻 Java
java
CopiarEditar
public class FizzBuzz {
public static void main(String[] args) {
for (int i = 1; i <= 20; i++) {
if (i % 3 == 0 && i % 5 == 0) {
System.out.println("FizzBuzz");
} else if (i % 3 == 0) {
System.out.println("Fizz");
} else if (i % 5 == 0) {
System.out.println("Buzz");
} else {
System.out.println(i);
}
}
}
}
💻 C#
csharp
CopiarEditar
using System;
class Program {
static void Main() {
for (int i = 1; i <= 20; i++) {
if (i % 3 == 0 && i % 5 == 0)
Console.WriteLine("FizzBuzz");
else if (i % 3 == 0)
Console.WriteLine("Fizz");
else if (i % 5 == 0)
Console.WriteLine("Buzz");
else
Console.WriteLine(i);
}
}
}
💻 Python
python
CopiarEditar
for i in range(1, 21):
if i % 3 == 0 and i % 5 == 0:
print("FizzBuzz")
elif i % 3 == 0:
print("Fizz")
elif i % 5 == 0:
print("Buzz")
else:
print(i)
💻 JavaScript
javascript
CopiarEditar
for (let i = 1; i <= 20; i++) {
if (i % 3 === 0 && i % 5 === 0) {
console.log("FizzBuzz");
} else if (i % 3 === 0) {
console.log("Fizz");
} else if (i % 5 === 0) {
console.log("Buzz");
} else {
console.log(i);
}
}
💬 Conclusão
Treinar lógica e pensamento computacional é o equivalente a construir o alicerce de um prédio. Pode parecer básico, mas sem isso tudo desaba.
A beleza dos desafios de código está justamente na sua simplicidade que engana. Quanto mais você pratica, mais você domina a arte de transformar problemas complexos em soluções elegantes.
E o melhor: a lógica é universal. Os exemplos acima provam que, independentemente da linguagem, o raciocínio é o mesmo.
🙌 Gratidão
Um agradecimento especial ao professor Venilton Flavio Jr. pela didática objetiva e aos colegas da comunidade DIO pela troca de conhecimento.
🧠 Bora praticar?
Se quiser melhorar sua lógica, escolha um desafio, tente resolver em várias linguagens diferentes e compare os resultados. É assim que o cérebro cresce no modo dev ninja! 💪
🔗 #DIO #PensamentoComputacional #LogicaDeProgramacao #Java #CSharp #Python #JavaScript #Desenvolvimento #DesafioDeCodigo #MarcosAugusto