Postagens

Curso de Programação Básico - Matrizes

Imagem
Saindo do Rascunho: Como as Matrizes Vão Levar seu  Curso de Programação Básico  ao Próximo Nível Eu tinha me apaixonado pelos Vetores. Eles me salvaram da bagunça, organizando minhas listas de dados em uma única variável elegante. Era como ter uma lista de supermercado perfeitamente organizada, só com os nomes. Mas a vida, a vida real da programação de software, é muito mais complicada do que uma simples lista. Pense em uma planilha de Excel. Você tem linhas e colunas, certo? Você não consegue descrever uma planilha inteira (com nomes de clientes, endereços e valores de compra) usando apenas uma lista que vai só para baixo.  Meu desafio cresceu quando precisei acompanhar o status de pedidos (se estava pronto ou em preparo) E O TEMPO de preparo de cada um. Eu precisava de duas informações diferentes, mas que estavam intimamente ligadas, para cada pedido. Minha cabeça começou a dar nó. Um Vetor só guardava uma lista de coisas (só o status, por exemplo). Como eu fazia para ...

Curso de Programação Básico - Percorrendo, Lendo e Preenchendo Matrizes

Imagem
O Poder da Chave: Por Que Todo Programador Precisa Entender os Ponteiros no  Curso de Programação Básico Eu estava animado! Eu finalmente tinha construído a minha primeira planilha de dados gigante usando Matrizes. O sistema podia guardar as notas de 50 alunos em 4 provas diferentes. Uau! Mas aí veio o problema da vida real. Eu tinha a função perfeita para calcular a Média, e uma outra função ótima para encontrar o Maior e Menor valor da turma.  O meu problema era: como eu fazia para que essas funções usassem a minha Matriz de 50 x 4, sem ter que passar um caminhão de dados a cada chamada? Eu comecei a imaginar o computador trabalhando: ele teria que pegar 200 números, fazer uma cópia de todos eles, mandar a cópia para a função Média, a função faria a conta, e depois ele teria que fazer a mesma coisa para a função Maior/Menor.  Era uma bagunça lenta e desnecessária. A eficiência do meu algoritmo estava sendo destruída pela simples necessidade de compartilhar dados. Eu não...

Curso de Programação Básico - Estruturas de dados heterogêneas

Imagem
A Ficha Perfeita: Como as Structs Vão Unir Seus Dados no  Curso de Programação Básico Eu sempre fui uma pessoa organizada. No meu dia a dia, se eu faço uma lista de tarefas, eu não misturo as compras do mês com os compromissos de trabalho, certo? Na programação de software, eu comecei aplicando essa mesma lógica de separação. Se eu tinha uma lista de 50 notas, eu usava um Vetor de números. Se eu tinha 50 nomes, eu usava uma Matriz de texto (Strings). Funcionava, mas a vida real começou a me cobrar. Tive que criar um sistema simples para a escola do meu vizinho, e ele precisava guardar, para cada aluno, o Nome (que é texto), a Idade (que é um número inteiro), e as Notas (que são números com vírgula).  Eu me vi criando três, quatro ou até cinco estruturas de dados separadas, todas caminhando paralelamente. Tinha o Vetor `nome_aluno[50]`, o Vetor `idade_aluno[50]`, e a Matriz `notas_aluno[50][4]`. O código ficava confuso, e o pior: se eu trocasse o aluno 10 de lugar em uma lista,...

Curso de Programação Básico - Constantes

Imagem
O Segredo para Não Errar Mais! Por Que Constantes São Vitais no Seu  Curso de Programação Básico Sabe quando você está cozinhando e precisa colocar exatamente 200g de farinha, mas por um descuido coloca 220g? O bolo desanda. Na programação, o sentimento de errar um número crucial é o mesmo. A gente passa horas escrevendo a lógica, pensando nas variáveis que mudam (o preço do produto, a idade do usuário), mas aí, no meio do código, precisa usar um valor que é sempre o mesmo.  Um limite de estoque, o valor da gravidade, ou um imposto fixo. E o que a gente faz? Digita o número na mão, em dez lugares diferentes do programa. O problema é que, se esse valor fixo precisar ser atualizado (se o limite de estoque mudar de 50 para 100), você tem que voltar e corrigir em todos os dez lugares.  E se esquecer de um? O seu programa fica com um erro silencioso, o famoso "bug", que pode causar um prejuízo enorme. Eu, pessoalmente, sentia um medo terrível de cometer esse tipo de erro bobo ...

Curso de Programação Básico - Variáveis

Imagem
A Prática Começa Agora! Meu React sobre Variáveis e a Memória no  Curso de Programação Básico A gente chegou naquele ponto da jornada que é um misto de empolgação e medo. Sabe? Instalamos o ambiente (o Code::Blocks), entendemos que o computador precisa do tradutor (o compilador), e até vimos a mágica do "Olá, Mundo!" acontecer.  A teoria das caixinhas (tipos de dados) está fresca na memória. Mas, convenhamos, uma coisa é saber o que é um `int`; outra, é usar ele de verdade para fazer um programa que calcule alguma coisa. Eu estava com o coração apertado, pensando: "E se eu errar o nome da variável? E se o computador não entender o que eu quero guardar?" É a insegurança do iniciante que tem medo de apertar o botão errado e quebrar o código. Foi exatamente por isso que a aula prática sobre variáveis me deu um alívio enorme! Ela nos tira da abstração e nos coloca de frente com o Code::Blocks, ensinando as regras de ouro para trabalhar com dados na Linguagem C. Essa é a...

Curso de Programação Básico - Tipos de Dados em C

Imagem
As Caixinhas do Código: Entendendo os Tipos de Dados em C no  Curso de Programação Básico A gente acabou de instalar o Code::Blocks e ver o "Olá, Mundo!" na tela. Foi emocionante, certo? Mas aí vem a pergunta que não quer calar: e agora, como eu faço uma conta? Como eu peço o nome do usuário? De repente, o computador, que parecia um papel em branco, fica cheio de regras. Quando a gente pensa em criar um programa, a gente está sempre lidando com informação.  Pode ser a idade de alguém, o preço de um produto, o nome de um arquivo... e o computador, coitado, não tem bola de cristal para saber o que é o quê. Para ele, uma letra, um número inteiro e um número com vírgula são coisas totalmente diferentes que ocupam espaços distintos na sua memória. É por isso que, na minha jornada no  Curso de Programação Básico , a sexta aula foi um divisor de águas. Ela trata de um assunto que parece chato, mas que é o pilar de tudo: os Tipos de Dados em C. Se eu pudesse te dar um conselho, s...