segunda-feira, 3 de junho de 2013

FINAL DO ANO LECTIVO

Gostam da vista? Espero que sim, porque queremos agradecer a todos pelo vosso apoio e dedicação e para avisar que nas próximas semanas estaremos neste belo sitio e a desfrutar das nossas mais que merecidas férias.
OBRIGADO A TODOS E ESPERO QUE TAMBÉM TENHAM UMAS MARAVILHOSAS FÉRIAS :D


Trabalhos de Visual Basic

Nesta apresentação vamos-vos mostrar os nossos mais recentes trabalhos realizados no âmbito de Aplicações Informáticas :D

FICHA 7
Com esta ficha queremos auxiliar os nosso seguidores no calculo da área de retângulos.



FICHA 8
Desenvolvemos este programa a fim de auxiliar o calculo do perímetros de retângulos.



FICHA 10
Este ficha permite nos avaliar se realmente és um adulto!




FICHA 11
Esta ficha tem como finalidade a avaliação dos alunos.




FICHA 12
Tem aqui um aulixiar para permitir o calculo do valor dos cd's que tem que pagar.



FICHA 13
Disponiblizamos mais um programa que permite converter de classificações.


FICHA 14
Caso tenha dúvidas em relação ao seu índice de massa corporal, nós fornecemos o progama que te vai auxiliar nessa situação.



FICHA 15
Fornecemos agora um progama que vos pode auxiliar no estudo da estrutura If..Then




quinta-feira, 11 de abril de 2013

Visual Basic - Projetos

Com o início da actividade de funcionamento com o programa Visual Basic temos aqui os nossos mais recentes trabalhos :D       




 espero que gostem

quinta-feira, 4 de abril de 2013

Programa e Algoritmo

Um algoritmo é, num certo sentido, um programa abstrato — dizendo de outra forma, um programa é um algoritmo concretizado. No entanto, os programas são, à exceção dos menores, visualizados mais facilmente como uma coleção de algoritmos menores combinados de um modo único — da mesma forma que uma casa é construída a partir de componentes.
Dessa forma, um algoritmo é uma descrição de como um computador pode ser levado a executar uma operação simples e específica, como, por exemplo, uma ordenação. Um programa, por outro lado, é uma entidade que na verdade implementa uma ou mais operações de forma que seja útil para as pessoas.

Linguagens de Programação

Linguagem-máquina

Para os humanos a interação não seria completamente nada sem o alfabeto e os números não é mesmo? Mas com os computadores isso é um pouco diferente. Chamada de "linguagem binaria", os famosos 1 e 0 é o que dão origem a essa linguagem. Entenda um pouco sobre como ela funciona.
Para entender melhor como funciona essa TRADUÇÃO da linguagem humana para a linguagem de máquina, como assim é chamada, é preciso saber o alfabeto binário (não necessariamente decorá-lo).
Cada algarismo 1 ou 0, é chamado de bit (binary digit) e para que se forme um dígito são necessários oito bits e cada conjunto de oito bits é chamado de byte, normalmente. Veja o alfabeto binário:


A 01000001 B 01000010 C 01000011 D 01000100 E 01000101 F 01000110
G 01000111 H 01001000 I 01001001 J 01001010 K 01001011 L 01001100
M 01001101 N 01001110 O 01001111 P 01010000 Q 01010001 R 01010010
S 01010011 T 01010100 U 01010101 V 01010110 W 01010111 X 01011000 Y 01011001 Z 01011010 

Essa é a codificação ASCII (American Standard Code for Information Interchange ou Código Padrão Americano para Intercâmbio de Informações) e é a mais usada.
Se você pedir um comando para que, por exemplo, seja encontrado todos os números primos até um inteiro n, nossa estratégia tem de seguir uma lógica como se fosse usada na aula de matemática, no caso.


Linguagem Assembly

O Assembly foi provavelmente a primeira linguagem de programação da história, surgida na década de 50, época em que os computadores ainda usavam válvulas. A idéia do assembly é usar um comando em substituição a cada instrução de máquina.

No assembly, cada uma destas instruções, equivale a uma instrução do processador. Ao invés de usar instruções como 10101011 você pode usar outras bem mais fáceis de entender e de memorizar, como add, div, mul, and, or, not, etc. Você também pode criar variáveis, que são pequenos espaços na memória RAM reservados para guardar algum tipo de dado, que o programa precisará mais tarde. Você pode usar aquelas instruções que citei para lidar com elas. Por exemplo, a instrução "add" faz com que o processador some duas variáveis; "add x, y" por exemplo, soma os valores de x e y.
Apesar de ser exaustivamente trabalhoso, você pode perfeitamente desenvolver pequenos programas em assembly, para isso só vai precisar de um compilador e bastante paciência para aprender.
O compilador transforma o código escrito em assembly em linguagem de máquina, que finalmente poderá ser entendida pelo processador.
Existem também os decompiladores, que fazem o trabalho inverso, de transformar um programa já compilado, em um código em linguagem assembly. Este recurso é chamado de engenharia reversa. É assim que conseguem crackear programas, quebrar códigos de proteção (como o do DVD), etc. Claro que para isso, é preciso alguém que conheça muito de assembly e que tenha disposição para ficar estudando o código até encontrar o que procura.
Por causa desta característica de permitir trabalhar diretamente com as instruções do processador, o assembly é chamado de linguagem de baixo nível. Existem também linguagens de alto nível, como C++ ou Pascal, onde é possível usar várias funções já prontas ou mesmo ferramentas visuais, como o Kdeveloper ou o Kylix, que são ainda mais fácies.




Linguagem de Programação de Alto Nível

Antes de entrar nesse tema, é necessário entender o que é uma linguagem de programação. A gente ouve por aí: Java, SQL, C, C++, Assembly, Basic e muitas outras palavras relacionadas às linguagens de programação. Podemos dizer que a linguagem de programação é uma forma de determinarmos como um dispositivo deve trabalhar. É como se déssemos ordens para esses dispositivos que podem ser simples, como por exemplo, um carregador de pilhas ou mais complexos como um computador. Cada linguagem de programação foi criada com algum objetivo, como por exemplo, facilidade de escrita, facilidade de manutenção, melhora da performance do dispositivo, etc.
Quando falamos em níveis, podemos dizer que uma linguagem de alto nível está muito mais próxima do programador do que do dispositivo, ou seja, é uma linguagem muito mais intuitiva. Existem linguagens onde é feito um diagrama e esse diagrama que nada mais é do que um desenho é convertido para uma linguagem de programação pré-selecionada. Essa é uma linguagem bem mais amigável ao programador devido à sua facilidade de entendimento. Um exemplo de linguagem de alto nível é a linguagem SDL (Specification Design Language).

Já numa linguagem de baixo nível, o programador vai sofrer, pois a linguagem é muito mais voltada ao dispositivo (processador, microcontrolador, etc.). Normalmente envolve números e letras que nada mais são que instruções diretas ao dispositivo. Por exemplo, a instrução “MOV 1, R0” diz para mover o valor “1” para o registrador “0” de um determinado processador. Como vemos, o programador tem que entender não só da linguagem em si, mas de toda a arquitetura do dispositivo que ele irá trabalhar. Um exemplo de linguagem de baixo nível é a linguagem ASSEMBLY.
Então, por quê não se usa sempre a linguagem de alto nível, já que ela é bem mais fácil de programar e dar manutenção?
Às vezes, essa opção não está disponível, pois a performance do dispositivo pode ser prejudicada se for usada uma linguagem de alto nível. Isso também tem a ver com memória: uma linguagem de alto nível, normalmente ocupa mais memória do que uma de baixo nível e aí o fator custo pode ser um obstáculo.
Por quê uma linguagem de baixo nível tem normalmente uma melhor performance do que uma linguagem de alto nível?
Por ser uma linguagem mais próxima ao dispositivo, são necessárias menos conversões dessa linguagem para a “linguagem de máquina” do dispositivo. Quando se escreve uma linguagem de alto nível, muitas conversões são necessárias para alcançar a “linguagem de máquina”, como essa geração é feita de forma automática, o código resultante acaba sendo maior do que se fosse escrito diretamente por um programador usando a linguagem de baixo nível.

Programação

As linguagens de programação são classificadas em duas classes: as linguagens de Alto Nível e as de Baixo Nível.

 
Linguagens de Baixo Nível
As linguagens de Baixo Nível são aquelas voltadas para a máquina, ou seja as que são escritas utilizando as instruções do microprocessador do computador. São genericamente chamadas de linguagens Assembly. Os programas escritos com Alto Nível geralmente podem ser convertidos com programas especiais para Baixo Nível.
Vantagens: Programas são executados com maior velocidade de processamento. Os programas ocupam menos espaço na memória.
Desvantagens: Em geral, programas em Assembly tem pouca portabilidade, isto é, um código gerado para um tipo de processador não serve para outro. Códigos Assembly não são estruturados, tornando a programação mais difícil.

Linguagens de Nível Médio
Estas linguagens são linguagens voltadas ao ser humano e a máquina, ou seja, estas linguagens são uma mistura entre as linguagens de Alto Nível e as de Baixo Nível. Estas linguagens contém comandos muito simples e outros muito complicados, o que torna o seu código não muito difícil e nem tão fácil de se entender. Uma linguagem de Nível Médio são C e C++, existem algumas outras que utilizam o mesmo nível.
Vantagens: Geralmente são linguagens com mais poder, permitindo a criação de jogos e programas com qualidade profissional.
Desvantagens: Alguns comandos tem uma sintaxe muito difícil de se compreender.

Linguagens de Alto Nível
São linguagens voltadas para o ser humano. Em geral utilizam sintaxe mais estruturada tornando o seu código mais fácil de se entender, e de editar programas, elas necessitam de compiladores ou de interpretadores, para executar os comandos de uma certa linguagem.

Vantagens: Por serem compiladas ou interpretadas, tem maior portabilidade podendo ser executados em varias plataformas com pouquíssimas modificações. Em geral, a programação torna-se mais fácil por causa do maior ou menor grau de estruturação de suas linguagens.
Desvantagens: Em geral, as rotinas geradas (em linguagem de maquina) são mais genéricas e portanto mais complexas e por isso são mais lentas e ocupam mais memória.