Estrutura de Dados e Programação.

Estruturas de dados é uma disciplina do curso de Sistemas de Informação voltada ao estudo de técnicas para manipulação de dados e soluções de problemas envolvendo uso computacional de dados...

MWC 2011 - Tablets e Smartphones LG.

A LG apresentou nesta segunda-feira (14/2) o Optimus 3D e o Optimus Pad, smartphone e tablet que são capazes de captar imagens e vídeos em 3D ...

Rotina e programação.

Ontem, 09, comecei a ter a mesma sensação do ano que passou. A sensação da rotina. Os mesmo rituais do dia a dia. Isso é chato. Não deixem se pegar pela rotina. A rotina é inimiga da perfeição. ... .

Volta as aulas e trote universitário

Ontem, 07, foi meu primeiro dia de aula deste ano. As aulas recomeçaram. O primeiro dia de aula é sempre aquela ansiedade: rever os amigos, novos professores, novas pessoas...

Se linguagens de programação fossem religiões...

Achei esse texto muito interessante em um fórum e resolvi traduzir(google) e posta-lo aqui. Podem confirir o Original clicando...

quarta-feira, 16 de fevereiro de 2011

Estrutura de Dados I e PROGRAMAÇÃO I

Introdução às Estruturas de Dados  


Estruturas de dados é uma disciplina do curso de Sistemas de Informação voltada ao estudo de técnicas para manipulação de dados e soluções de problemas envolvendo uso computacional de dados.
Trata-se da evolução da disciplina de Algoritmos, onde iremos utilizar os conceitos aprendidos até
hoje e adicionar termos, técnicas e modelos a fim de aprimorar os nossos conhecimentos em relação
ao desenvolvimento de software.
Sabemos que para uma mesma tarefa, diferentes algoritmos podem ser desenvolvidos, todos
retornando o mesmo resultado esperado. O que diferencia um algoritmo de outro será a quantidade
de linhas de código necessárias, custo computacional exigido, entre outros fatores.

Tipos de Dados


Como já sabemos, o bit (binary digit) é a unidade
básica de memória do computador e representa
um valor entre 0 e 1.
Como é muito difícil representar informações por
meio de um único bit, o computador faz um
agrupamento de bits a fim de possibilitar a
representação mais adequada de cada dado.
Em um programa de computador, as áreas de
memória utilizadas para armazenamento de dados
são chamadas de variáveis.
A forma com que os dados poderão ser
representados e manipulados pelo computador é
definida pelo tipo de dado utilizado. Exemplo:
números quebrados (float), letras (char), dinheiro
(float), contagem (integer).
A maioria das linguagens de programação de alto nível possuem tipos de dados primitivos (inteiro,
real, caractere e lógico), além de mecanismos para criação de novos tipos de dados para solução de
problemas mais específicos.


Tipos de Dados Abstratos (TDA)


Como os tipos de dados já são conhecidos por nós, vamos agora iniciar um estudo sobre os tipos de dados abstratos, que são modelos matemáticos definidos por um conjunto de valores e operações.
Exemplos de TDAs são: Pilhas, Listas, Filas e Árvores.
Já que um TDA é um modelo matemático, nossa função como programador é desenvolver uma
solução (implementar) utilizando tipos de dados já existentes e técnicas de desenvolvimento de
software já conhecidas a fim de que a TDA resulte em um tipo de dado primitivo.

Variável e Constante
No contexto de desenvolvimento de software, as variáveis são formas de alocação de dados na
memória a fim de serem utilizados pelo programa.
Uma variável, como o nome já diz, pode ter seu conteúdo modificado em tempo de execução. Além
disso, cada variável armazena um tipo específico de dado, ou seja, variáveis do tipo INT somente
armazenam números inteiros, já as variáveis do tipo CHAR armazenam além de números inteiros,
também letras e outros caracteres.
Constantes tem a mesma função das variáveis dentro do programa, a diferença básica é que não
podemos modificar o seu valor inicialmente atribuído. Elas são úteis quando precisamos armazenar
algum dado que, se modificado, dificulta ou impede o prosseguimento correto da tarefa.
Exemplo:
// Definindo duas constantes por meio do pré processador da aplicação
#define PI 3.13
#define NUM 10
// Definindo duas constantes utilizando a palavra-chave 'const'
const int ANO = 2011;
const float VALOR = 29.90;
Registro
Cada vez que criamos uma variável em um software, estamos
também criando um ou mais registros de memória que são
formados por conjuntos de bits.
Como a memória RAM é volátil, um registro fica disponível
pelo programa até o momento que o computador é desligado
ou que o programa solicite explicitamente que esse dado seja
inutilizado. A volatilidade diz respeito à capacidade do
componente de memória manter determinado dado
armazenado enquanto existe energia fluindo pelos seus
barramentos. Quando, por algum motivo, a energia deixa de
fluir pelos barramentos da memória (computador desligou, reiniciou), os dados armazenados são perdidos.
Cada posição de memória (bit) possui um endereço formado por um número hexadecimal:



Vetores


Quando queremos armazenar mais de um dado em uma única variável, podemos utilizar um vetor.
Também conhecidos como arrays ou arranjos, os vetores armazenam a quantidade especificada de
valores do tipo de dados declarado.
A quantidade de elementos de um vetor não pode ser alterada depois que o vetor for declarado. Da
mesma forma, o vetor não poderá armazenar mais valores do que a quantidade máxima declarada.
Quando um vetor é declarado, a porção de memória RAM necessária para seu armazenamento é
alocada e permanece desta forma até que o programa seja fechado.
Exemplos:
// declarando um vetor de inteiros de 5 posições
int vetor[5];
// declarando um vetor de caracteres de 3 posições
char letras[3] = {'a','b','c'};
// declarando e inicializando um vetor de inteiros de 7 posições
int idades[] = {15, 18, 23, 25, 30, 32, 38};

Matrizes


Quando precisamos armazenar um conjunto de dados que tem relação com um outro conjunto de
dados com formato de tabela, podemos criar uma matriz.
A fim de exemplificar, vamos imaginar a seguinte tabela de dados:



A tabela acima nada mais é do que uma matriz de dados, ignorando-se o cabeçalho de cada coluna.
Para declarar uma matriz utilizamos a seguinte sintaxe:
// declarando a matriz 4x3 (4 linhas e 3 colunas)
int clientes[4][3];
// declarando e inicializando a matriz acima
int clientes[4][3] = {{1,0,2},{2,1,1},{3,0,4},{4,2,5}}
// outra forma de declarar e inicializar a matriz acima
int clientes[][] = {{1,0,2},{2,1,1},{3,0,4},{4,2,5}}

Funções


Sempre que em seu código fonte aparecer um mesmo trecho de código repetido, quer dizer que
você deveria substituí-lo por uma função.
Fazendo o reaproveitamento do código, você tem a vantagem de simplificação do código fonte além
da facilidade de manutenção do mesmo.
Formato geral de uma função em C:

retorno_da_funcao nome_da_funcao (lista_de_parametros) {
// conteúdo da função
{
Exemplos de funções:
void escrever(){
printf(“Olá mundo”);
{
void soma(int a, int b){
int resultado = a+b;
printf(“O resultado da soma é: %d”, resultado);
void soma(int a, int b){
printf(“O resultado da soma de %d com %d é: %d”, a,b,a+b);
{
int soma(int a, int b){
return a+b;
{






PROGRAMAÇÃO I.


 Por: Ronaldo Paranhos .


Como percebi, muitos estão com dificuldades em compreender a definição da matéria classes e objetos, então, fiz uma breve explicação com base no que compreendi ate agora e inclui exemplos do mesmo.

Estou disponibilizando para vocês. Espero que gostem e por favor, sigam o blog. Pois postarei mais artigos relacionados.

Façam o Download clicando aqui, ou na imagem em baixo. 
Obrigado.






terça-feira, 15 de fevereiro de 2011

MWC 2011 - Tablets e Smartphones reproduzem e gravam 3D.




A LG apresentou nesta segunda-feira (14/2) o Optimus 3D e o Optimus Pad, smartphone e tablet que são capazes de captar imagens e vídeos em 3D e reproduzí-los sem a necessidade de óculos especiais.
Os produtos foram exibidos durante a Mobile World Congress 2011, principal evento de tecnologias móveis que acontece nesta semana em Barcelona, na Espanha.
Para o efeito 3D sem óculos, a LG utilizou uma tecnologia de barreira paralaxe, que coloca uma série de camadas em frente à tela LCD para bloquear a luz. Isso garante que cada olho veja uma imagem diferente.

Veja no vídeo abaixo: 


quinta-feira, 10 de fevereiro de 2011

Rotina e programação


Vida rotineira;     


    Ontem, 09, comecei a ter a mesma sensação do ano que passou. A sensação da rotina. 
Os mesmo rituais do dia a dia. Isso é chato. Não deixem se pegar pela rotina. 
A rotina é inimiga da perfeição. 
    A rotida de acordar todos os dias a mesma hora. Repetir as dezenas de coisas que fazemos todos os dias. Acordar do mesmo jeito que faz-nos esquecer quem realmente somos, quem fomos e quem realmente queremos ser.
    Nós caímos em uma armadilha, todos os dias, em que prometemos para nós mesmo que mudaremos, que vamos levantar, erguer a cabeça e gritar de peito aberto quem realmente somos.
    Mas na manha seguinte ao acordar, aquele mesmo que faz-nos esquecer quem realmente somos, quem fomos e quem realmente queremos ser.
A rotina retorna.
    “Acordamos”, de fato, realmente acordamos ? Creio eu que não.
Continuamos a dormir e o que acontece é o levantamento do nosso corpo pelas rotinas do dia após dia.
Bem isso é só a minha opnião. =) 

"O corpo é que paga quando a cabeça não tem juízo”




Caminho à Programação;

   Vamos ao que interessa. 
Na mesma noite, fui à Universidade, e tive aula de programação, isso mesmo, a tão falada programação, e como não tenho nenhum arquivo de programação aqui no blog, resolvi criar uma página - podem visualizá-la aqui ou ir na abas matérias lá em cima - sobre programação. Ainda não está pronta mas está a caminho, desde a lógica à programação em si.               
Todos os dias que eu estiver tempo escreverei um pouco até chegar na matéria onde estou estudando na faculdade.   
   Ontem também tive aula de Economia e Finanças, não vou falar sobre o mesmo. É chato. E não tem nada a ver com o conteúdo do blog. 









segunda-feira, 7 de fevereiro de 2011

Volta as aulas e trote universitário.

Volta as aulas.

     Ontem, 07, foi meu primeiro dia de aula deste ano. As aulas recomeçaram. O primeiro dia de aula é sempre aquela ansiedade: rever os amigos, novos professores, novas pessoas. Dessa vez não foi diferente, estava muito ansioso para ver todo mundo, chegando lá, revi, e só. Pronto. Quero férias de novo. 
     Não quero férias pelo motivos das pessoas, nem dos professores tampouco por causa dos novos calouros. E sim por que eu quero continuar na 'vida mansa'. Acordar tarde, dormir tarde, não ter compromisso no outro dia. É tão bom. Hoje a aula foi tranquila, apenas conversa, uma apresentação do professor e mais nada. Mas, só de pensar em estudar para Cálculo, Estatística, Programação, já me deixa de cabelo em pé - literalmente -, mas sem a volta das aulas esse blog não teria continuidade por falta de assunto. 
     Mas, falando de hoje, tive aula de estatística. Aula não, o professor não fez a sacanagem de dar aula já no primeiro dia, só nos conhecemos e pronto. Estão dispensados. Esperaremos no decorrer da semana para ver como vai ser. 



                      
Trote.

   Voltemos a falar de hoje. Logo depois que acabaram as aulas, foi a hora do famoso trote - sem aquelas babaquices, ok ? - onde raspam o cabelo dos 'Bichos', jogam tinta, etc. Muito massa. Legal, conheci alguns dos novos calouros, aceitaram na boa as brincadeiras pois não houve nenhuma sacanagem. 
Deixo algumas fotos aqui para vocês verem... 
Abraços, e até amanhã. 



quinta-feira, 3 de fevereiro de 2011

Se linguagens de programação fossem religiões...

     
     Achei esse texto muito interessante em um fórum e resolvi traduzir(google) e posta-lo aqui.
Podem confirir o Original clicando Aqui

"Se linguagens de programação fossem religiões"
(Inspirado por "Se linguagens de programação fossem carros")

     C seria o Judaismo - é antiga e restritiva, mas o mundo está familiarizado com suas leis e respeita-os. Você não pode ser converter a ele - ou você começa do inicio, ou você irá achar que é tudo insano. Além disso, quando as coisas dão errado, muitas pessoas estão dispostas a culpar os problemas do mundo por isso.

     Java seria o Cristianismo Fundametalista - É teoricamente baseado no C, mas ele foge de muitas das velhas leis que ele não sente de todo originais. Em vez disso, adiciona suas proprias regras rigidas, assim seus seguidores se sentirão superiores ao original. Não somente estão certos de que essa é a melhor linguagem do mundo, como estão prontos para queimar quem os desagradar.

     PHP seria como o Cristianismo não praticante - Luta com Java pelo mercado da web. Tem vários conceitos de C e Java, mas apenas aqueles que realmente gosta. Não é coerente como as outras linguagens, mas pelo menos leh deixa muita mais livre e ostensivamente mantém a essencia da idéia. Além disso, todo o conceito do "goto hell" (vai para o inferno) foi abandonado.

     C++ seria como o Islamismo - Pegou C e não só manteve todas as suas leis como adicionou um novo conjunto de leis no topo dessas. É tão versatil que pode ser usado na criação de qualquer coisa, de grandes atrocidades a lindos trabalhos de arte. Seus seguidores estão convictos que essa é a ultima linguagem universal, e ficam irritados com quem discordar deles. Além disso, se você insultar eles ou seu criador, você provavelmente será ameaçado de morte pelos seguidores mais radicais.

     C# é como os Mormons - A primeira vista, é como o Java, mas ao olhar mais de perto, você verá que é controlada por somente uma corporação ( que muitos seguidores do Java dizem ser malvada), e alguns conceitos teologicos são levemente diferentes. Você suspeitaria que ela provavelmente é legal, se você não fosse discriminado por todos os seguidores de Java por seguir ele.

     Lisp é como o Budismo - Ele não tem sintaxe, não tem centralização de dogmas, e não possuem santos. O universo inteiro está ai ao seu alcançe - só se você estiver esclarecido o suficiente para pega-lo. Alguns dizem que não é uma linguagem, outros dizem que é a unica linguagem que faz sentido.

     Haskell é como o Taoismo - Ele é tão diferente das outras linguagens que muitas pessoas não entendem como alguem produz algo util com isso. Seus seguidores acreditam que esse é o caminho correto para a sabedoria, mas essa sabedoria está além do alcançe da maioria dos mortais.

     Erlang
 seria como o Hinduismo - Essa é outra estranha linguagem que quem olha não consegue ve-la ser util, mas diferente da maioria das linguagens modernas, foi construida no conceito de multiplos e simultaneos santos.

     Perl é como o Voodoo - Uma incompreensivel seria de encatamentos de arcanos que envolve sangue de cabras e corrompe sua alma permanentemente. Frequentemente usada quando seu chefe quer uma tarefa urgente para as 21hrs de sexta.

     Lua seria como Wicca - Uma linguagem panteísta que pode facilmente ser adaptada para diferentes culturas ou locais. Seu código é muito liberal, e permite o uso de técnicas que podem ser descritas como mágicas pelas mais tradicionais linguagens. Tem uma estranha ligação com a lua.

     Ruby seria como o Novo paganismo - Uma mistura de diferentes linguagens e ideias que foi socado dentro de algo conhecido como linguagem. Seus adeptos estão crescendo rapidamente, com isso muitas pessoas olham para ele com suspeitas, são normalmente pessoas bem intencionadas sem intenção de prejudicar ninguém.

     Python seria como o Humanismo - Simples, sem restrições, e tudo que você precisa para segui-lo é o senso comum. Muitos dos seguidores afirmam-se livres dos encargos impostos por outras linguagens, e que redescobriram o prazer de programar. Há quem diga que é somente uma forma de pseudo-código.

     COBOL é como o Antigo Paganismo - Teve um tempo que comandou uma vasta região e foi muito importante, mas nos dias de hoje está praticamente morto, para o bem de todos nós. Emboram muitos ainda estejam marcados por seus rituais, há muitos que insistem em mante-lo vivo.

     APL seria como Cientologia - Existem muitas pessoas que clamam para segui-lo, mas você sempre suspeitará que é uma grande e elaborada pirraça que irá fugir do seu controle.

     LOLCODE seria como Pastafarianism(WTF!?!?) - Uma exoterica, nascida na internet e que ninguem leva a serio, ignorando todos os esforços para desenvolve-la e dissemina-la.

     Visual Basic
 seria como o Satanismo - Exceto que você realmente não precisa vender sua alma para ser um satanista.

     Desculpem-me pelos erros, se alguma coisa ficou traduzida errada xinguem o Google
=) 

Escola adota tablet.

     
     Hoje eu estava lendo em um jornal uma escola de pré-vestibular no interior de São Paulo, Campinas, que não vai usar livros e sim Tablets da Apple. A sala que tem capacidades para 100 alunos, terá 100 tablets - óbvio, né ? - e ao final do cursinho o tablet ficará com o aluno, para ajudar na universidade.

     Acho muito boa a iniciativa, apesar que, o jeito que anda essas redes sociais, acredito eu que, metade dos alunos vão estar no orkut/twitte/facebook ao invés de estar aprendendo o que é um 'embrião' ou descobrir 'aonde está o x'. O preço da mensalidade é bem salgado também: 1470,00 R$. Um aumento de 50% em relação ao ano anterior.

     No entando, vamos ver o que vai dá. Eu gostei da iniciativa. Aô UEMG, vamos fazer essa graça, vai... =)

quarta-feira, 2 de fevereiro de 2011

Toliminado!!!

   
   Vou sair fora do assunto do blog para uma boa causa.

TOLIMA 2 X 0 time da marginal

Hahaha.

Google x Microsoft


     Este duelo de gigantes continua. Ontem, 01, tivemos a notícia de mais uma 'briga' entre as duas gigantes no ramo de tecnologia. Segundo a Google, os engenheiros estavam desconfiados do buscador da Microsoft - Bing - há algum tempo, desde o ano passado. E na manhã de ontem, ela postou no site 'Searchengineland', acusando a Microsoft de plagiar os resultados de busca. Matt Cutts, engenheiro chefe da equipe de webspam da Google, disse que teria feito uma armadilha para provar que estavam plagiando. 

     Os engenheiros da Google foram instruídos a realizar buscas por termos inéditos, para os quais não havia resultado de busca, enquanto a empresa produzia páginas que atendessem apenas àquele termo. Ao verem que esse resultado estava sendo duplicado no Bing, tiveram certeza de que havia algum mecanismo informando ao buscador da Microsoft sobre a pesquisa e que resultado teria de aparecer. Por sua vez, Shum, engenheiro chefe da Microsoft, disse que não tem nada de errado, e que os resultados atendem o que os usuários estão em busca. Além de citar que a Google armou isso para prejudica-los.



    Ainda não se sabe o que vai acontecer, o que nos resta é aguardar... 

Tecnologia e a(s) sua(s) cara(s).

                                                                              
     Em qualquer pessoa, e na maioria dos momentos da vida a tecnologia está presente.  A existência do mesmo faz com que nós usufruamos e nos faz ficarmos preguiçosos pela facilidade que ela nos proporciona. Destarte, tem pessoas que usam com um certo exagero, e acabam criando um certo 'vício' dentro delas. Também tem os que são descriminados e de uma certa forma excluídos da sociedade por não usufruir da mesma. 

     As pessoas mais jovens, sem dúvida alguma, são os que mais usam e os que mais são beneficiados por ela. Tem capacidade de aprendizagem mais rápido que os demais por viver em um mundo já informatizado, assim, absorvem informações mais rápido.
     Nos dias de hoje, não encontra mais um adolescente se quer sem um celular e um meio para se conectar a internet. Concordamos também que é imprescindível viver com ela. A rapidez com que a mensagem chega é impressionante. Antigamente o que demoravam, dias, semanas e até meses, hoje, demoram apenas alguns minutos... 

     Uma coisa que não é diferente na tecnologia é o fato de que tudo em exagero não faz bem. Hoje temos até 5 bilhões de usuários na internet, um absurdo. Se metade desses usuários resolverem entrar na internet no mesmo momento seria a mesma coisa que metade da população de são paulo resolverem sair de casa de carro, ou seja: um congestionamento quase imensurável.  E muitas - eu digo, Muitas - páginas de internet pode servir como banalização, por soltarem mentiras, fofocas entre outros. Não dá para averiguar site por site. 

     Há quem diga, por exemplo, que é melhor dizer certas coisas por telefone ou via internet, mas há outras pessoas que dizem que essa relação humano-computador-humano afeta a relação pessoa-pessoa. Não se expressam de maneira clara, prejudicando a relação interpessoal. 

     Na verdade é que, os computadores, celulares e máquinas, foram, e são criadas justamente para ajudar e melhorar a vida das pessoas. Com certeza a vida de muitas pessoas melhoraram após o advento dos mesmos. Portanto não devemos reclamar do advento e a evolução deles.

terça-feira, 1 de fevereiro de 2011

Inauguração

                                                                            
    É com grande satisfação que inauguro o blog Sifrutal. Venho através do mesmo, escrever sobre tecnologia e Sistemas de informação. Peço a ajuda de todos os que frequentarem na ajuda da divulgação.
   Obrigado a todos.
                                                                            Um bom começo de ano a todos,
                                                                                                             Feliz 2011.

Para começar o blog, deixo a música do Gilberto Gil. 


Pela Internet 
Criar meu web site 

Fazer minha home-page 
Com quantos gigabytes 
Se faz uma jangada 
Um barco que veleje 


Que veleje nesse infomar 

Que aproveite a vazante da infomaré 

Que leve um oriki do meu velho orixá 
Ao porto de um disquete de um micro em Taipé 

Um barco que veleje nesse infomar 
Que aproveite a vazante da infomaré 
Que leve meu e-mail até Calcutá 
Depois de um hot-link 
Num site de Helsinque 
Para abastecer 

Eu quero entrar na rede 
Promover um debate 
Juntar via Internet 
Um grupo de tietes de Connecticut 

De Connecticut acessar 
O chefe da milícia de Milão 
Um hacker mafioso acaba de soltar 
Um vírus pra atacar programas no Japão 

Eu quero entrar na rede pra contactar 
Os lares do Nepal, os bares do Gabão 
Que o chefe da polícia carioca avisa pelo celular 
Que lá na praça Onze tem um videopôquer para se joga

Redes Sociais SI Frutal

Twitter Delicious Facebook Digg Stumbleupon Favorites More