Set 25 2009

Exercicio em C++

Boa noite,

Nos últimos dias uma amiga pediu ajuda para resolver dois exercícios em C++ que o professor dela havia passado. O enunciado dos mesmo são:

1. Faça um programa que leia um numero não determinado de valores inteiros e positivos. Para cada valor lido: se o numero for par, verificar quantos divisores possui e escrever esta informação. Se for impar e menor que 12, escrever o seu fatorial. Se for impar e maior que 12, escrever a soma dos números de 1 até ele.

Resolução C++ do exercicio 1.

2. Escrever um programa que leia valores, um de cada vez, e conta quantos deles estão em cada um dos intervalos: [0,25], [25, 50], [50, 75] e [75,100].

Resolução C++ do exercicio 2

Matheus

PS: Pra mim é C mas como só ajudei ela não entrei no mérito dessa questão.

Set 22 2009

Pequena Analise do boot Ubuntu 9.10 Alpha 6

Boa noite,

Como havia falado alguns dias atrás, eu pretendia fazer testes de quanto tempo cada processo interfere no boot. Na versão Alpha 5 não consegui fazer o mesmo por falta de tempo. Na versão Alpha 6 acabei fazendo, abaixo você encontra no seguinte formato: “Nome do processo: T1/T2../TX (BT)”

Read more »

Set 18 2009

Novidades Ubuntu 9.10 Alpha 6

Olá,

Hoje foi lançado a versão Alpha 6 do Ubuntu, faltando assim apenas a versão Beta, Release Candidate e a versão oficial.

Tela de “carregando”
Ubuntu 9.10 Alpha 6
(PS: Os pontos são stuck pixels do meu monitor/placa de video)

Read more »

Set 17 2009

Enviar arquivos via XML-RPC em Java.

Olá,

Hoje o Jorge me perguntou se eu sabia como enviar arquivos via XML-RPC. Pensando no assunto não me recordava como devia ser feito, resolvi dar uma rápida pesquisada para ensina-lo. Acabei me entretendo e resolvi modificar o Cliente e Servidor Java XML-RPC para fazer o mesmo.

Implementei o mesmo e não foi complexo só olhei a documentação do Apache XML-RPC para ver como eram enviados bytes. Os mesmos eram enviados codificando o array de bytes (byte[]) em Base64. Pesquisei um pouco como fazer isso e achei uma Biblioteca Java de Base64 em dominio publico. Também procurei por como pegar o array de bytes de um arquivo e como criar um novo arquivo apartir de um array de bytes (byte[]).

Esses sites onde peguei ambos os métodos estão como comentarios no arquivo.

XML-RPC-Transferencia-De-Arquivo

Espero que seja útil,
Matheus

PS: Da maneira como eu implementei qualquer arquivo do sistema que o Cliente XML-RPC pedir o Servidor irá enviar, isso criaria uma possivel brecha de segurança.

PS2: Caso deseja que o Cliente envie arquivos para o Servidor, o Cliente deve pegar o array de bytes do Arquivo, codifica-lo em base64 e passa-lo como parametro. O Servidor irá receber este parametro, decodificar após isso manipu-le o array de bytes como você desejar.

Set 16 2009

Próximas datas de lançamento Ubuntu 9.10

Olá,

Hoje venho lembrar você que amanhã será lançado o Ubuntu 9.10 Alpha 6. Também estou deixando uma lista de datas dos lançamentos do Karmic Koala.

Maio 14, 2009 – Alpha 1 release
Junho 11, 2009 – Alpha 2 release
Julho 23, 2009 – Alpha 3 release
Agosto 13, 2009 – Alpha 4 release
Setembro 3, 2009 – Alpha 5 release
Setembro 17, 2009 – Alpha 6 release
Outubro 1, 2009 – Beta release
Outubro 22, 2009 – Release Candidate
Outubro 29, 2009 – Final release of Ubuntu 9.10

Fique ligado,
Matheus

Set 14 2009

Lançado MD5-Decrypter v0.2 e EncryptMessage Plugin 0.3.5.

Boa noite,

Hoje adicionei o MD5-Decrypter a sessão codes porque hoje acabei de implementar a versão 0.2 do MD5-Decrypter. Você pode verificar as novas funcionalidades na sessão codes – Md5 Decrypter.

Nos últimos dias terminei a versão 0.3.5 do Plugin EncryptMessage para o Emesene. As funcionalidades você pode conferir na sessão codes – Encrypt Message Plugin. Está versão já foi incluida no repositorio PPA do bjfs. Caso você queira instala-lo apartir do repositorio, https://launchpad.net/~bjfs/+archive/ppa

Espero que gostem,
Matheus Bratfisch

Set 10 2009

Nova seção “Code”.

Boa tarde,

Nos últimos dias começei a desenvolver um Plugin para o Emesene, como é algo fora do Emesene, pensei em criar uma páginazinha para ele, onde poderão ver informações e versões sobre o mesmo. O plugin trata-se de encriptar e/ou desencriptar conversas entre usuários. Bom, mas pensando nisso, lembrei de outros programas/plugins/algo que eu estou mechendo e pretendo lançar versões esporadicamente, então foi criada a seção “Code” que é onde irei publicar sobre isso.

Seção “Code”

Até mais,
Matheus

Set 05 2009

Novidades no Ubuntu 9.10 Alpha 5

Boa noite,

Neste post você encontrará algumas novidades com screenshots do novo Ubuntu 9.10 Alpha 5.

Foi adicionado um botão no canto superior esquerdo. Como vocês podem ver abaixo e quando se pressiona o mesmo, você recebe as mesmas opções quando pressiona com o botão direito na barra de programas. (minimizar, maximizar, fechar…)

Novo botão nas janelas do Ubuntu.

Read more »

Set 03 2009

Ubuntu 9.10 Alpha 5.

Boa tarde,

Só para lembrar você que hoje saiu a versão Alpha 5 do Ubuntu 9.10 (Karmic Koala). Eu já estou fazendo o download do mesmo e embreve pretendo estar instalando. Aqui vai os links para você que deseja ajudar no desenvolvimento/testes ou ver como está ficando o novo Ubuntu.

http://cdimage.ubuntu.com/releases/karmic/alpha-5/ (Ubuntu Desktop, Server, and Netbook Remix)
http://uec-images.ubuntu.com/releases/karmic/alpha-5/ (Ubuntu Server for UEC and EC2)
http://cdimage.ubuntu.com/ports/releases/karmic/alpha-5/ (Ubuntu Desktop for ARM)
http://cdimage.ubuntu.com/kubuntu/releases/karmic/alpha-5/ (Kubuntu Desktop and Netbook)
http://cdimage.ubuntu.com/xubuntu/releases/karmic/alpha-5/ (Xubuntu)
http://cdimage.ubuntu.com/mythbuntu/releases/karmic/alpha-5/
(Mythbuntu)

Matheus Bratfisch

Set 02 2009

Conectar ao SSH pelo Python.

Boa noite,

Ontem comentei sobre a utilização do pexpect para executar comandos e se comunicar com eles. Hoje brinquei um pouco mais com essa biblioteca e fiz um exemplo de conexão e enviar o comando ‘uptime’ para o servidor. Só um exemplo simples, mas acredito que já da uma idéia de como você pode mecher com essa biblioteca.

Primeiramente você deve ter a biblioteca pexpect instalada. Você pode obte-la em http://sourceforge.net/projects/pexpect/ e para instalar você deve digitar

$ sudo python setup.py install

Após a mesma instalada você já pode se divertir. O pequeno script que fiz para testar foi o seguinte:

import pexpect

class SSH():
def connect(self):
x = True
sshConnection = pexpect.spawn(‘ssh -l matheus -p 22 192.168.0.254′)
sshConnection.expect(‘matheus@192.168.0.254\’s password:’)
sshConnection.sendline(‘senha’)
while True:
print sshConnection.readline();
if x is True:
sshConnection.sendline(‘uptime’)
x = False
sshConnection.readline();

s = SSH()
s.connect()

Bom, o código é auto-explicativo e caso você tenha algum problema para entender, não hesite em entrar em contato,
Matheus Bratfisch

PS: Caso tenha algum problema execute o seguinte comando: $ sudo apt-get install python-dev

PS2: Maldita indentação. Caso você deseje baixe aqui o Conectar ao SSH pelo Python