Desafio Algoritmos Computacionais

O jovem padawan precisava incrementar um contador inteiro (counter) com um valor inteiro (delta) variável. Entretanto, o contador não poderia ultrapassar um certo valor máximo (countermax).

Por se tratar de um problema simples, o aprendiz rapidamente escreveu o trecho de código abaixo:

if (counter + delta <= countermax) {

   counter += delta;

   return true;

}

O mestre, com toda sua experiência, falou: “Cuidado é preciso ter!”. Sugeriu ao padawan que escrevesse o código da seguinte forma:

if (countermax – counter >= delta) {

   counter += delta;

   return true;

}

Qual era o problema com a forma mais simples e intuitiva escrita pelo jovem aprendiz?

Porque matemática é importante para estudantes e profissionais da área de computação?!

Resolver escrever esse post porque é uma pergunta que sempre escuto dos meus alunos do primeiro período (e muitas vezes de alunos de períodos mais avançados do curso).

Normalmente essa pergunta surge quando eles estão pagando cálculo ou cadeiras desse tipo e junto com a pergunta vem frases como: “Isso cálculo não serve para nada”. É nessa hora que eu digo calma lá amigo! Cálculo é a base de grandes áreas da Ciência da Computação, desenvolvimento de jogos, inteligência artificial, reconhecimento de imagens….até pra você fazer aquele sistema da padaria do seu avô, você vai usar matemática!

A resistência as cadeiras de matemática mais teóricas talvez seja consequência de um problema no ensino médio ou por não saber que aquela área que você tanto gosta usa bastante matemática.

Lembrem que na universidade você está sendo preparado para o mercado e que nem tudo que você aprende é para ser usado no dia seguinte!

Computação é uma ciência que surgiu inicialmente para resolver problemas matemáticos complexos e hoje é ela que usa matemática para resolver problemas complexos…

O futuro da computação será cada vez mais resolver problemas mais complexos e na medida que as ferramentas e IDEs de programação evoluem para facilitar o desenvolvimento de algumas tarefas, as tarefas que restaram para os “programadores” serão mais difíceis e voltadas para criar soluções de problemas complexos!

Se você ainda não estar convencido vale a pena ler esse artigo!

Sobre o Autor

Graduado (2010) e mestre (2013) em Ciência da Computação pela UFPE. Professor do Curso de Ciência da Computação da Faculdade Boa Viagem (FBV) e Engenheiro de Sistemas do CESAR (desde 2010), trabalhando em projetos que vão desde do desenvolvimento de aplicações web, até a criação de aplicações para celulares com o sistema operacional Android e aplicativos para TV Digital.

Áreas de interesse: Algoritmos, Banco de Dados, Informática na Educação, Ensino a Distância; Engenharia de Software; e Linguagens de Programação.

Linkedin | Lattes