Agora o Blogg Info está ampliando sua área de conhecimento. Aqui você encontra infomações sobre Informática, Eletrônica, Elétrica, Mecânica e Automação.

quarta-feira, 2 de novembro de 2011

Cursos IPED

O Grupo iPED é um dos melhores sistemas de educação do mundo. Possui mais de 800 mil alunos no Brasil e em mais de 60 países.

São diversos cursos para você escolher.



segunda-feira, 18 de abril de 2011

Como ligar a fonte ATX sem placa mãe

Esta ligação só funciona em fontes ATX.

Abaixo está o diagrama do plug de uma fonte ATX, todos os plugs são padrões.


O que você deve fazer é unir dois fios do plug.

A figura abaixo mostra quais fios devem ser unidos.



O verde (pino 14) é designado como o fio da “potência”, enquanto que o preto (pino 13) é designado como fio “terra”.

Ao unir esses dois fios, a fonte entra em funcionamento imediatamente.

domingo, 17 de abril de 2011

Linguagem C (parte 8)

Funções: protótipos de função É considerada boa prática utilizar protótipos de função para todas as funções em seu programa. Um protótipo declara o nome de função, seus parâmetros e seu tipo de retorno para o resto do programa antes da declaração real da função. Para entender a utilidade dos protótipos, digite o seguinte código e execute-o:
  #include <stdio.h>

  void main()
  {
     printf("%d\n",add(3));
  }  
  int add(int i, int j)

  {
     return i+j; 
  }  
Este código compila em diversos compiladores sem emitir um aviso, apesar de add esperar dois parâmetros e receber apenas um. Ele funciona porque muitos compiladores C não verificam se o parâmetro corresponde ao tipo ou à quantidade. Você pode perder horas na depuração de um código no qual você está declarando parâmetros a mais ou a menos por engano. O código anterior compila corretamente, mas produz a resposta errada.
Para resolver este problema, a linguagem C permite colocar protótipos de função no início (na verdade, em qualquer lugar) de um programa. Se fizer isso, a linguagem C verifica tipos e quantidades de todas as listas de parâmetros. Tente compilar o seguinte:
  #include <stdio.h>  

  int add (int,int); /* protótipo de função para add */

  void main()
  {
     printf("%d\n",add(3));
  }    
  int add(int i, int j)
  {    
     return i+j;
  } 
O protótipo faz com que o compilador sinalize um erro na instrução printf.
Coloque um protótipo para cada função no início de seu programa. Os propótipos podem economizar bastante tempo de depuração e também resolver o problema que ocorre ao compilar com funções que são utilizadas antes de serem declaradas. Por exemplo, o seguinte código não compilará:
  #include  <stdio.h> 
   
  void main()
  {
      printf("%d\n",add(3));
  }
  float add(int i, int j)
  {
      return i+j;
  }  
Você pode perguntar: "Por que ele compilará quando add retorna um int mas não quando retorna um float?" Porque os compiladores em C mais antigos padronizaram um valor de retorno para int. O uso de um protótipo resolverá este problema. Os "compiladores antigos" (sem suporte a ANSI) permitem protótipos, porém a lista de parâmetros do protótipo deve estar vazia. Os compiladores antigos não fazem a verificação de erros em listas de parâmetros.


Tente isto

  • Retorne ao exemplo de classificação bubble sort anteriormente apresentado e crie uma função.
  • Retorne aos programas anteriores e crie uma função para obter a entrada de dado do usuário, em vez de obter a entrada de dado da função principal.

sábado, 16 de abril de 2011

Linguagem C (parte 7)

Funções A maioria das linguagens permite criar funções de algum tipo. Funções permitem dividir um longo programa em seções nomeadas, de forma que as seções possam ser reutilizadas ao longo do programa. As funções aceitam parâmetros e retornam um resultado. Funções de C podem aceitar um número ilimitado de parâmetros. Em geral, a linguagem C não se preocupa em qual ordem você coloca suas funções no programa, contanto que o nome da função seja conhecido pelo compilador antes de ser invocado.
Já falamos um pouco sobre funções. A função rand previamente descrita é bastante simples. Ela não aceita parâmetros e retorna um resultado inteiro:
  int rand()
  /* de K&R
     - produz um número aleatório entre 0 e 32767.*/
  {
      rand_seed = rand_seed * 1103515245 +12345;
      return (unsigned int)(rand_seed / 65536) % 32768;
  }  
A linha int rand() declara a função rand para o resto do programa e especifica que aquele rand não aceitará nenhum parâmetro e retornará um resultado inteiro. Esta função não tem nenhuma variável local, mas se elas fossem necessárias, iriam logo abaixo da abertura {. A linguagem C permite declarar variáveis após qualquer {: elas existem até o programa atingir o } correspondente e então desaparecem. Desta forma, as variáveis locais de uma função desaparecem assim que o } correspondente é atingido na função. Enquanto existirem, as variáveis locais residem na pilha do sistema. Observe que não há nenhum ; depois de () na primeira linha. Caso tenha colocado um, acidentalmente, você receberá uma enorme cascata de mensagens de erro do compilador, que não farão sentido algum. Observe também que, mesmo sem parâmetros, você precisa usar o (). Eles indicam ao compilador que você está declarando uma função em vez de simplesmente declarar um int.
A instrução return é importante para qualquer função que retorna um resultado. Ela especifica o valor que a função retornará e a encerra imediatamente. Isto significa que você pode colocar diversas instruções de retorno na função para proporcionar vários pontos de saída. Se você não colocar uma instrução de retorno em uma função, a função retorna quando atinge } e retorna um valor aleatório (muitos compiladores o advertirão se você não retornar um valor específico). Em C, uma função pode retornar valores de qualquer tipo: int, float, char, struct, etc.
Há vários modos corretos para executar a função rand. Por exemplo: x=rand( );. A variável x recebe o valor retornado por rand nesta instrução. Observe que você deve usar ( ) na chamada da função, mesmo que nenhum parâmetro seja passado. Caso contrário, x recebe o endereço de memória da função rand, que geralmente não é desejável.
Você também pode invocar rand desta forma:
  if (rand() > 100)  
Ou deste modo:
  rand();  
No último caso, a função é chamada, mas o valor retornado por rand é descartado. Talvez você nunca faça isso com rand, mas muitas funções retornam algum tipo de código de erro por meio da função, e se você não está muito preocupado com o código de erro (por exemplo, por saber que um erro é impossível), você poderá descartá-lo.
Funções podem usar um retorno tipo void caso se deseje que não se retorne nada. Por exemplo:
  void print_header()
  {
      printf("Programa Número 1n");
      printf("por Marshall Brainn");
      printf("Versão 1.0, lançada em 26/12/91\n");  
  }  
Esta função não retorna valor algum. Você pode invocá-la com a seguinte instrução:
  print_header();  
 

Você deve incluir ( ) na chamada. Se não o fizer, a função não é invocada, embora possa ser compilada corretamente em outros sistemas.
As funções em C podem aceitar qualquer tipo de parâmetro. Por exemplo:
  int fact(int i)
  {
      int j,k;
      j=1;
      for (k=2; k<=i; k++)
          j=j*k; 
     return j;
  }  
retorna o fatorial de i, que é passado como um parâmetro inteiro. Separe vários parâmetros com vírgulas:
  int add(int i, int j)
  {
      return i+j;
  }  
A linguagem C evoluiu ao longo dos anos. Às vezes, você verá funções como add escritas do "modo antigo", como mostrado abaixo:
  int add(i,j)
      int i;
      int j;
  {
      return i+j;
  } 
É importante saber ler o código escrito no estilo antigo. Não há nenhuma diferença na forma em que o código é executado, apenas a notação é diferente. Você deve usar o "novo estilo" (conhecido como ANSI C) com o tipo declarado, como parte da lista de parâmetros, a menos que tenha conhecimento prévio de que o código será enviado a alguém com um compilador em "estilo antigo" (sem suporte a ANSI).

sexta-feira, 15 de abril de 2011