Palestra sobre Maratonas de Programação

Screen Shot 2018-09-28 at 00.11.39

Muito honrada com o convite para apresentar uma palestra motivacional para os alunos do IFMG em 28/09/2018. 😊

Clique aqui para acessar o material utilizado na apresentação.

Para mais informações sobre a Maratona de Programação da SBC clique aqui.

Muito obrigada! E até a próxima!

Dica rápida: C++ no Fedora

Já devem ter percebido pelos meus posts que sou naïve no Fedora e por isso todas as descobertas são registradas!

Fedora

A mais recente delas foi a seguinte: para utilizar o g++ não basta instalar o gcc! Também não é possível instalar g++! Temos qu

e instalar o gcc-c++!!!

$ sudo yum install gcc-c++

Parece brincadeira e o nome é controverso mas feito isso pode compilar os programas utilizando o g++!

Espero ter ajudado!

Referência:

http://stackoverflow.com/questions/12952913/how-do-i-install-g-for-fedora

Bibliotecas em C

Assunto que gera dúvidas para quem está aprendendo a programar em qualquer linguagem é o uso das Bibliotecas. Neste post pretendo dar uma ideia do que são e como usar as principais bibliotecas da linguagem de programação C.

Biblioteca
Biblioteca Nacional Austríaca (fonte)

O que são Bibliotecas?

Para exibir uma mensagem na tela, ao invés de programar uma função inteira que faça isso para mim, basta que eu importe um arquivo que já contém essa função pronta -> A Biblioteca!

Uma Biblioteca é um arquivo com determinadas funções programadas que está separada em duas partes: um arquivo de cabeçalho e um arquivo com o código-fonte.

  • O arquivo de cabeçalho: é indicado pela extensão .h (vem de header que é cabeçalho em inglês) e contém informações sobre a biblioteca que os programas que a utilizam precisam saber. Em geral, o arquivo de cabeçalho contém constantes e tipos, junto com protótipos de funções disponíveis na biblioteca.
  • O arquivo de código-fonte: possui a implementação das funções propriamente ditas. É como um código normal em C sem o programa principal. Apresenta apenas um conjunto de funções programadas que serão aproveitadas em outros programas.

Como funcionam?

Voltando ao exemplo anterior, para que eu consiga mostrar uma mensagem na tela basta que eu importe uma biblioteca de I/O (Input/Output ou Entrada/saída) para utilizar a função de impressão que a biblioteca oferece.

Programando em C, a biblioteca que oferece essas funções é a stdio.h (acrônimo de standard input/output -> padrão de entrada/saída) que contém entre outras funções, a função de impressão printf. Para importar essa biblioteca, basta escrever no início do programa em C o seguinte:

#include <stdio.h>

Quando for compilar, o compilador vai buscar nessa biblioteca a função para saber como utilizá-la. Obs: se precisar incluir outra(s) biblioteca(s), basta escrever outro(s) comando(s) #include, um abaixo do outro no início do programa em C, por exemplo:

#include <biblioteca_1>

#include <biblioteca_2>

#include <biblioteca_3>

E no local que quero imprimir o texto na tela no meu programa, uso diretamente a função printf seguindo as regras de sintaxe:

printf(“expressao”, argumentos);

Com isso, todas as vezes que precisar imprimir algo na tela basta chamar a função modificando apenas os parâmetros. As bibliotecas surgem dessa necessidade de utilização contínua do mesmo padrão de operações. Ao invés de repetir várias vezes o mesmo conjunto de instruções para realizar ações muito parecidas em locais diferentes, posso usar uma mesma função pronta apenas passando parâmetros diferentes para ela. Usamos aqui o conceito de reutilização de código!


Obs:
O caracter “#” (em inglês: sharp e em português: cerquilha ou tralha) no inicio da linha indica que haverá um pré-processamento (o que é isso? quer dizer que mesmo antes de compilar o programa, os parâmetros necessários para ser criado o arquivo executável serão conhecidos). Lembrando que a inclusão de bibliotecas que iremos utilizar no nosso código deve ser feita sempre no início da programação!


Quais são as principais?

Existem várias bibliotecas e, aquelas que oferecem funções básicas (como por exemplo a stdio) são muito mais utilizadas do que outras. Segue uma pequena (pequena mesmo!) lista de bibliotecas com suas principais funções:

stdlib.h

  • Esta biblioteca é a responsável por conversões de números, alocação na memória e outras tarefas! Com ela podemos: converter um char em um double, converte um char para long, criar um número randômico (aleatório), alocar na memoria, realocar na memória, desalocar da memória, execução de comandos do sistema operacional Respectivamente, as funções citadas são:atof, atol, rand, malloc, realloc, free e system…Também não posso deixar de citar que ela retorna o valor absoluto de um número inteiro usando abs.

stdio.h

  • Esta biblioteca é a responsável pela entrada e saída padrão. Nela, encontramos funções para leitura do teclado, escrita formatada ou não na tela e operações com arquivos. Algumas funções dessas bibliotecas:fprintf, printf, fscanf, scanf, getchar, putc, getc, fopen, fclose…

math.h

  • Esta biblioteca declara funções matemáticas que podem servir para: achar a raiz quadrada, achar o seno, co-seno, tangente, logaritmo na base 10. As funções respectivas são:sqrt, sin, cos, tan, log10.Fora isso, um outro uso para declaração desta biblioteca é a possibilidade de arredondar um número! Para isso usamos a função que retorna o valor absoluto: fabs.

Como disse, essas são apenas algumas bibliotecas e suas funções. Agora que sabemos como utilizar basta pesquisar quais possuem as funções que precisamos e qual a sintaxe para chamar a função!

Outras Fontes:

Principais Bibliotecas em C: Celso Masotti, INED

Biblioteca stdio.h: Quaddro

Criação de bibliotecas: HowStuffWorks

Excelente referência sobre C/C++ online: http://www.cplusplus.com (em inglês)

Para tirar dúvidas ou dar sugestões deixem comentários!

Tutorial de Instalação do CodeBlocks no Windows

CodeBlocks é a IDE utilizada no curso de Laboratório de Programação I.
Para instalação no Windows, abra a página http://www.codeblocks.org/ e clique em Downloads.
Dentre as opções escolha a que tiver Binarie Release. Abrirá uma página como essa:
codeblocks
Role a tela para baixo e escolha uma versão para Windows que contenha “…mingw_setup.exe” no nome, o que indica que instalará também o pacote MingW (que é uma versão para Windows da coleção de compiladores GNU – GCC). Instale essa versão para poder compilar os programas. Existem duas opções de Download (Berlios ou SourceForge) e tanto faz a escolha.
codeblocks
Ao concluir o download, abra o arquivo e clique em “Next”.
codeblocks
Na tela seguinte clique em “I Agree” para concordar com os termos.
codeblocks
Continue clicando em “Next”.
codeblocks
Clique em “Install”.
codeblocks
Aparecerá uma mensagem perguntando se gostaria de rodar o CodeBlocks. Clique em “Sim”.
codeblocks
Certifique-se de que o compilador foi detectado e clique em “Ok”.
codeblocks
O CodeBlocks abrirá e, se mostrar uma dica pode clicar em “Close” para fechar.
codeblocks

A partir desse momento poderá utilizar o CodeBlocks para criar seus projetos em C!

Caso tenham dúvidas, mais links sobre instalação e configuração do CodeBlocks no Windows:
Para quem está familiarizado com o Linux segue um link para instalaçao de CodeBlocks no Ubuntu:
Ou deixe um comentário abaixo.