27 de agosto de 2011

Algoritmo - Gases Ideais

Nunca mais eu calculo essa cousa chata. A partir de hoje eu só executarei o script:


#include stdio.h
#include stdlib.h

float P, V, n, R, T;

float PressaoGas(float n, float R, float T, float V) {
  P = ((n*R*T)/V);
  return(P);

}

float MolsGas(float P, float R, float T, float V) {
  n = ((P*V)/(R*T));
  return(n);

}

float TemperaturaGas(float P, float V, float n, float R) {
  T = ((P*V)/(n*R));
  return(T);

}

float ConstanteGas(float P, float V, float n, float T) {
  R = ((P*V)/(n*T));
  return(R);

}

float VolumeGas(float P, float n, float R, float T) {
  V = ((n*R*T)/P);
  return(V);

}

main() {
  int op, rep;
  rep = 1;

  while(rep == 1) {
    printf("\n\t\t\tEQUACAO DOS GASES IDEAIS\n");
    printf("\n\tMenu:\n\t=====\n");
    printf("\t1- P\n");
    printf("\t2- V\n");
    printf("\t3- n\n");
    printf("\t4- R\n");
    printf("\t5- T\n");
    printf("\n\tOpcao.: ");
    scanf("%d", &op);
    printf("\n\t================================================================\n");

    switch(op) {
      case 1:
        printf("\n\tDigite o volume.........: ");
        scanf("%f", &V);
        printf("\tDigite o numero de mols.: ");
        scanf("%f", &n);
        printf("\tDigite a constante R....: ");
        scanf("%f", &R);
        printf("\tDigite a temperatura....: ");
        scanf("%f", &T);
        printf("\n\tA pressao = %f\n", PressaoGas(V, n, R, T));
        break;

      case 2:
        printf("\n\tDigite a pressao........: ");
        scanf("%f", &P);
        printf("\tDigite o numero de mols.: ");
        scanf("%f", &n);
        printf("\tDigite a constante R....: ");
        scanf("%f", &R);
        printf("\tDigite a temperatura....: ");
        scanf("%f", &T);
        printf("\n\tO volume = %f\n", VolumeGas(P, n, R, T));
        break;

      case 3:
        printf("\n\tDigite a pressao........: ");
        scanf("%f", &P);
        printf("\tDigite o volume.........: ");
        scanf("%f", &V);
        printf("\tDigite a constante R....: ");
        scanf("%f", &R);
        printf("\tDigite a temperatura....: ");
        scanf("%f", &T);
        printf("\n\tO numero de mols = %f\n", MolsGas(P, V, R, T));
        break;

      case 4:
        printf("\n\tDigite a pressao........: ");
        scanf("%f", &P);
        printf("\tDigite o volume.........: ");
        scanf("%f", &V);
        printf("\tDigite o numero de mols.: ");
        scanf("%f", &n);
        printf("\tDigite a temperatura....: ");
        scanf("%f", &T);
        printf("\n\tA constante R = %f\n", ConstanteGas(P, V, n, T));
        break;

      case 5:
        printf("\n\tDigite a pressao........: ");
        scanf("%f", &P);
        printf("\tDigite o volume.........: ");
        scanf("%f", &V);
        printf("\tDigite o numero de mols.: ");
        scanf("%f", &n);
        printf("\tDigite a constante R....: ");
        scanf("%f", &R);
        printf("\n\tA temperatura = %f\n", TemperaturaGas(P, V, n, R));
        break;

      default:
        printf("\n\tOpcao inexistente!\n");
        break;

    }


    printf("\n\t================================================================\n");
    printf("\n\tContinuar usando o programa?\n\n\t1-Sim      2-Nao\n\n\tOpcao.: ");
    scanf("%d", &rep);
    system("clear");

  }

  return(0);

}





DOWNLOAD: Clique aqui

24 de agosto de 2011

Procurando strings em todos os arquivos

Há várias situações nas quais você precisa saber onde uma determinada palavra ou frase aparece em diversos arquivos.

O comando grep é muito útil nessas horas. Ele serve para fazer uma espécie de varredura em todas as linhas dos arquivos e retornar apenas aquelas que contém a palavra ou frase desejada.

Suponhamos, por exemplo, que você precise achar a expressão “Módulo principal” que você sabe que está em algum arquivo que está dentro de alguma pasta que está dentro da pasta /var/www.

O comando a ser usado seria:
grep 'resolutionMódulo principal'   /etc/ -r

A sintaxe aí é seguinte: grep “palavra a ser pesquisada”   pasta/a/pesquisar  opções

A opção -r serve para tornar a busca recursiva, ou seja, o programa vai buscar em todos os arquivos que estão em todas as pastas que estão na pasta raiz, entrando em cada pasta que encontrar no processo.

Se a busca retornar resultados demais, você pode usar o próprio comando grep novamente para refinar o filtro. Assim, digamos, por exemplo, que eu saiba que na mesma linha que exista também a seguinte string: “

grep 'Módulo principalresolution'   /var/www/* -r | grep '800'

21 de agosto de 2011

Xmodmap - Desabilitando botões do mouse

Depois de muito tempo quebrando a cabeça consegui desativar o botão direito do mouse.

Execute o comando:

# xmodmap -e "pointer = 1"


Assim retornará um erro dizendo a quantidade de botões do mouse, pode ser mostrado 3, 5, 7, 9, dependendo do mouse a ser usado.

Essa é a configuração normal de um mouse de 9 botões, geralmente o mouse padrão óptico.

# xmodmap -e "pointer = 1 2 3 4 5 6 7 8 9"
 
Para desativar o botão direito trocaremos o 3 pelo 11, dessa maneira:

# xmodmap -e "pointer = 1 2 11 4 5 6 7 8 9"
 
Mudando o mouse de destro para canhoto, teremos que alterar os números 1 e 3:

# xmodmap -e "pointer = 3 2 1 4 5 6 7 8 9"

 
Assim por diante. Descubra cada número referente a função desejada e assim poderá configurá-lo da maneira que quiser.

Obs.: Caso seu mouse seja algum com funções especiais e tenha mais de 9 funções e já esteja usando o número 11, coloque no lugar do 11 um número maior que não esteja sendo usado.

3 de agosto de 2011

Atalhos Firefox

Já pensou em navegar na internet sem mouse para alterar os sites, clicar em favoritos e etc? Eu já! Fiz! E só uso browser desta forma. Meu browser é o Firefox. Quer brincar também pequeno gafanhoto? Então vambora!


Esta é uma lista dos atalhos de teclado mais comuns no Mozilla Firefox. Se tem os atalhos de edição de texto estilo Emacs no GNOME activados, estes também funcionarão no Firefox. Quando existe um conflito entre os atalhos de edição de texto e os atalhos por omissão (como acontece com Ctrl + K), o atalho Emacs terá preferência se a edição estiver a ser feita dentro de uma caixa de texto (o que deverá incluir a barra de navegação e a barra de pesquisa). Nestes casos deverá utilizar a combinação de teclas alternativa se estiver listada em baixo.











Comando
Atalho
Navegação
Retroceder
Alt+Seta para a esquerda
Ctrl+[
Alt+Seta para a direita
Ctrl+]
Início
Alt+Home
Abrir ficheiro
Ctrl+O
Recarregar
F5
Ctrl +R
Recarregar (sobrepor a cache)
Ctrl+F5
Ctrl+Shift+R
Parar
Esc
Página actual
Ir para o fim da página
End
Ir para o início da página
Home
Ir para a próxima frame
F6
Ir para a frame anterior
Shift+F6
Informações da Página
{key Ctrl+I}
Código-fonte da página
Ctrl+U
Imprimir
Ctrl+P
Guardar a página como
Ctrl+S
Reduzir
Ctrl+-
Ampliar
Ctrl+ +
Repôr
Ctrl+0
Editar
Copiar
Ctrl+C
Cortar
Ctrl+X
Apagar
Delete
Colar
Ctrl+V
Refazer
Ctrl+Shift+Z
Seleccionar tudo
Ctrl+A
Anular
Ctrl+Z
Procurar
Procurar
Ctrl+F
Procurar seguinte
F3
Ctrl+G
Procurar ao escrever uma hiperligação
'
Procurar ao escrever texto
/
Procurar anterior
Shift+F3
Pesquisa na Web
Ctrl+K
Ctrl +J
Janela e separadores(consulte Navegação com separadores )
Fechar separador
Ctrl+W
Ctrl+F4
Fechar janela
Ctrl+Shift+W
Alt+F4
Mover o separador para a esquerda
(quando o separador está activo)
Ctrl+Seta para a esquerda
Ctrl+Seta para cima
Mover o separador para a direita
(quando o separador está activo)
Ctrl+Seta para a direita
Ctrl+Seta para baixo
Mover o separador para o início
(quando o separador está activo)
Ctrl +Home
Mover o separador para o fim
(quando o separador está activo)
Ctrl+End
Novo separador
Ctrl+T
Nova janela
Ctrl+N
Próximo separador
Ctrl+Tabulação
Ctrl+Page Down
Abrir endereço num novo separador
(a partir da barr de endereço ou da barra de pesquisa)
Alt+Enter
Separador anterior
Ctrl+Shift+Tabulação
Ctrl+Page Up
Reabrir separador fechado
Ctrl+Shift+T
Seleccionar separador (1 a 8)
Alt+(1 a 8)
Seleccionar último separador
Alt+9
Ferramentas
Adicionar todos os separadores abertos aos marcadores
Adicionar esta página aos marcadores
Ctrl+D
Marcadores
Ctrl+B
Janela da Biblioteca
Ctrl+Shift+B
Navegação com o cursor
F7
Transferências
Ctrl+Y
Histórico
Ctrl+H
Activar Navegação Privada
Ctrl+Shift+P
Limpar Histórico Recente
Ctrl+Shift+Del
Consola de erros
Ctrl+Shift+J
Outros
Completar endereços do tipo .com
Ctrl+Enter
Completar endereços do tipo .net
Shift+Enter
Completar endereços do tipo .org
Ctrl+Shift+Enter
Eliminar entrada de conclusão automática seleccionada
Del
Ecrã inteiro
F11
Seleccionar barra de endereço
Alt+D
Ctrl+L
Seleccionar ou gerir motores de pesquisa
(quando a barra de pesquisa está activa)
Alt+Seta para cima
Alt+Seta para baixo
F4

Avança uma aba ou volta para aba anterior
Ctrl Tab ou Ctrl Shift Tab:
Fecha a aba atual
Ctrl F4:
Essa parece mágica: Abre uma de cada vez as abas que você fechou recentemente no Firefox (aperte várias vezes e veja o efeito)
Ctrl Shift T
Atualizar a página limpando o cache. Recarrega todas as imagens, css, js e swf
Ctrl F5







OU

2 de agosto de 2011

Remastersys for Debian or Ubuntu

Debian

# Remastersys Lenny
deb http://www.geekconnection.org/remastersys/repository debian/


# Remastersys Squeeze
deb http://www.geekconnection.org/remastersys/repository squeeze/ 




Ubuntu
# Remastersys > 9.10
deb http://www.geekconnection.org/remastersys/repository karmic/




Mais informações sobre o Remastersys: http://sabinux.blogspot.com/2008/11/criando-seu-livecddvd-com-o-remastersys.html