domingo, 26 de junho de 2011

Programando em 5 minutos:5# Aula - Bibliotecas e alguns comandos - C

Bibliotecas!Não,não são aqueles lugares chatos que se pode ouvir a vibração das células.Sem elas sua vida de programador seria impossível.Sabe os comandos das aulas passadas,os int,float,return,printf,etc?Eles fazem parte de uma biblioteca!A nossa biblioteca não é nada mais que um conjunto de varias funções.Aconteceu que,antigamente,todo computador tinha um processador diferente e quase que por milagre,um código de um computador podia ser executado no outro.Então chegou um cara Chamado ANSI(que adorava padrão) e falou: "Pera ai!""Vamos arrumar essa baderna!".Ele juntou muitos programadores e conseguiram criar um padrão!E fizeram bibliotecas para facilitar nossa vida.Todas as bibliotecas que eles fizeram começam com o nome std porém há um comando universal(um dos poucos) chamado #include que permite que seja adicionado bibliotecas para você usar suas funções.Então veio muitos programadores,pegaram a ideia e copiaram.Aqui vai a formulinha do #include:
#include <nomedabiblioteca.h>
Os <> significam que estão na raiz do seu compilador.Geralmente um programa normal tem pelo menos essas duas bibliotecas: stdlib.h e stdio.h, a primeira tem funções como int e a segunda como o printf e scanf(que será explicado nessa aula).
O scanf pede para um usuario digitar algo e o guarda em uma variavel.Ex:
scanf("%d",x);
Está vendo?O %d não é somente do printf mas da maioria dos comandos I/O ou E/S(Entrada e Saida)
Agora vamos começar a falar sobre os comandos de condição:if,case,else,switch.A tradução deles seria:se,caso,senão,"alavanca".Você não vai conseguir prever tudo que o usuario vai fazer,então para isso nos usaremos esses comandos.Formula do if:
if(condição) comando;
Onde condição seria algo como x>0 ou y = x ou x =! y(explicaremos isso na proxima aula),e todo valor diferende de zero é verdadeiro,incluindo negativos,então se quiser saber se um número é diferente de zero deve usar if(x)  ao invés de if(x =! 0) pois seria considerado um mau estilo.Agora vamos ao acessorio de if o else ,formulinha:
if(condição) comando;
else comando;
Lembrando que comando pode ser um x+1 até um bloco {}.E todo else está aninhado ao if mais proximo.Caso o if seja falso é pulado seus comandos como se fossem comentarios.Pode-se fazer uma "escada" if's e else's,sendo que quando é encontrado um verdadeiro,o resto é ingnorado,caso nenhum seja,o ultimo else é executado.Também temos algo parecido,menos usado, que é o operador(falaremos sobre mais operadores na proxima aula) '?' que tem a seguinte formula:
expressão1 ? expressão2 : expressão 3;
No caso,se expressão1 é verdadeira,a expressão2 é usada,senão a expressão3 é usada.Tomemos o seguinte exemplo:
x=10
y= x>9 ? 100 : 200
Logo,y=100.Se x fosse menor que 9,então y seria 200.Em if-else seria assim:
if(x>9) y=100;
else y=200;
Mas o ? não se limita a atribuições,pode ser usado em chamadas as funções ou algo mais complexo como:
((x+10)*(x-10))>20 ? (x=5) : (x=4)
Ou até mesmo em funções,chamando-as caso algo ocorra.A unica coisa que deve acontecer é o operador if ou ? chegar a um 0 ou não-zero.Agora sobre o case,switch e o break:Formulinha:
switch(expressão){
case con1:
comandos;
break
(...)
case conN:
break
default:
comandos
}
Onde expressão é qualquer coisa como x ou x+y que vai sendo testada contra cada case,e caso seja igual,os comandos dele são executados,caso todos falhem e tiver o default,o comando do default é executado,caso não tenha default continua o programa de onde parou,sem executar nada,logo o default é opicional.Porém um switch só pode testar igualdades enquanto if pode testar relações logicas,e não pode haver 2 cases indenticos no mesmo switch porém se esse tiver outro switch,esse 2 switch pode ter um case igual ao case do 1º switch.Geralmente switch é usado em menus para processar entradas via teclado.Break também é opcional em um switch.
Agora vamos falar sobre o comando for.Formulinha!:D
for(Inicial;Condição;Modificação) Comando;
Sendo a inicial algo tipo x=0 ou y=0 ou até x=0,y=0 e a condição algo tipo x>y ou x=!y ou x+y=x,etc e a modificação como x++(ou x+1) ou x+y ou x/y ou x*y e por ai vai.O que o for faz é basicamente inicializar,depois verificar se condição é verdadeira,então fazer a modificação e executar os comandos(ou blocos) e depois verificar se é verdadeira e repitir até que deixe de ser verdadeira.Quando isso acontecer o programa continuará normalmente.O seguinte programa apresenta os números de 1 a 100 pelo laço for:
#include <stdio.h>

void main(void)
{
  int x;

  for(x=1; x<=100; x++) printf("%d ",x);
}

A não esquecer que os 3 paremetros de for são opcionais,ou seja:
for(;;);
Está certo,porém será executado para sempre.For pode ser também usado como "tomador" de tempo,para que posasse esperar um tempo até  proxima instrução.Também temos o while, mas isso fica para a proxima aula que provavelmente vai levar mais de 5 minutos...:(
A lição de casa!Faça um Quiz de Perguntas Quaisqueirs,você já está apto para isso,eu acho...:D   >:D

Nenhum comentário:

Postar um comentário