http://skamason.com/7b9R

http://skamason.com/7b9R

terça-feira, 28 de fevereiro de 2012

[Como ser um Programador] Aula 0

Olá, eu me chamo PhoneBox (Reisen também é um Nick meu) e agora estou neste blog que está crescendo: o Corp-Anti-SEC-Hacker, CASH para os visitantes regulares. Aqui eu pretendo postar mais na categoria de programação, pois devo dizer que eu não muito estudei hacking etc, mas vamos então iniciar o post.

========================================================================

Como Ser Programador - Aula 0

========================================================================

Nesta aula falarei sobre algo que todos programadores e iniciantes em programação precisa saber: Logica de Programação. Mas o que é por puderas Logica de Programação?! Logica de Programação nada mais é que o pensamento apropriado pra programar, o que precisa para programar? Algoritmos. Ou seja, Logica de Programação é a elaboração de algoritmos. Se você aprende a criar algoritmos/logica você já pode começar a aprender a humm... "fazer programas". Lembrando que "Programação" é a criação de algoritmos com linguagens de programações. Vamos  então ao ponto central: Aprender Logica de Programação.

===================================================
 Logica de Programação - o que é, como é, aonde é
===================================================

Vamos falar sobre o que é Logica de Programação com mais detalhes. Eu vou mostrar a vida de um simples adolescente numa manha que tem aula em um simples algoritmo:

Inicio

Nome = Neos
Idade =19
DecisãoTomadaPorNome = 1
Se ('DecisãoTomadaPorNome' = 1)
Ação: Mãe aparece fazendo o caos pra 'Nome' acordar.
Se não
Ação: Mãe fica mó chata por ter um filho de 'Idade' anos que acorda cedo.

Fim

ATENÇÃO! O algoritmo acima foi escrito no modo vida real, ou seja, no psico-código feito por mim, psicólogos acho que devem usar códigos parecidos. Ou seja, algoritmo para definir a ação de um paciente/pessoa etc. 

Isso que vocês viram é um programa que roda na vida de muita gente aí -.-" Vamos explicar tudo:

No inicio vocês viram a palavra "Inicio" isso neste algoritmo significa o inicio do algoritmo, note que no fim tem "Fim" escrito;
Depois vem "Nome=Neos", isso signifca que 'Nome' tem o valor "Neos" e depois o mesmo com Idade e DecisãoTomadaPorNome(o valor desses ultimos é diferente);
Depois vem "Se ('DecisãoTomadaPorNome' = 1)", isso nada mais é que se a condição que está entre parenteses for verdadeira é executada as linhas de codigo seguinte que no caso é "Ação: Mãe aparece fazendo o caos pra 'Nome' acordar.", note que tem "Se não", ou seja, se a condição for falsa o codigo depois de "Se não" será executado que no caso é "Ação: Mãe fica mó chata por ter um filho de 'Idade' anos que acorda cedo. "
Se aparecer algo como 'exemplo', ou seja, palavra dentro de apóstrofos __> ' ; aparece o valor delas, no caso, 'Nome' seria Neos etc. Com o que você sabe olhe o algoritmo/programa e pense nele.

.
.
.
.
.

Já demos tempo, então vou falar: como vocês devem ter visto o programa roda simplesmente num ponto central, que depende do adolescente 'Nome'*. Ou seja, depende da escolha ou dado que 'Nome' enviou. Mas esse tal dado/decisão vem do próprio algoritmo... Correto, a decisão que foi feita emitiu um valor e com isso chegamos a mais uma coisa. Programação Com Dados/Decisões Internas
*vide Atenção!!!

A Programação Com Dados/Decisões Internas nada mais é que a construção de algoritmos sem que o usuário interfere, onde somente o programa que toma decisões. Mas isso é algo praticamente inútil, pra que tomada de decisão quando nada vai afetar tal ação? É mais simples colocar a ação a ser feita logo não? Aqui esta um novo algoritmo em uma nova versão: Programação Com Dados/Decisões Externas.

@Inicio
Nome = nada
Idade = 00
Decisão = nada

Mensagem(Olá, por favor escreva o seu nome e depois pressione enter:)
AtribuirValorDigitadoEm(Nome)
Mensagem(Muito bem, escreva a sua idade e pressione enter:)
AtribuirValorDigitadoEm(Idade)
Mensagem(Vamos falar um pouco da sua vida 'Nome' ? Sim/Não)
AtribuirValorDigitadoEm(Decisão)
Se (Decisão=Sim)
Mensagem('Nome' você tem 'Idade' anos e quer ser um programador.)
Se não
Mensagem(Tchau mal educado!!)
Fim

Vocês viram que neste algoritmo tudo ficou for user, ou seja, para usuários? Decisões e etc dependem do usuário, este é o modo mais usado na construção de algoritmos e programas.
Aqui vemos mais dois comandos que não tinha no algoritmo anterior desse: Mensagem e AtribuirValorDigitadoEm.
Mensagem(...): Exibe o que tá entre parenteses.
AtribuirValorDigitadoEm(explicação): O usuario digita uma palavra ou valor e pressiona enter, a palavra/valor vai ser o valor de 'explicação' neste caso.



Agora acho que vocês tem mais ou menos ideia de como é um algoritmo. Algoritmo nada mais é que passos,decisões etc para resolver algum problema ou fazer alguma ação: Tomar banho, escovar os dentes, limpar o carro de teu pai e ganhar uma graninha ;D etc. Uma dica: Quando for sair ou fazer algo ve se pra fazer aquilo é necessario algum algoritmo, se for, tente fazer um programa/algoritmo aí.

Algoritmos é algo que tá em tudo, desde como fazer rabiscos no papel, escrever, ler, andar de bike, roubar um carro, etc... E algoritmos é algo importante em informatica, pois como falam os sabios programadores:

"Se tu não sabes como fazeres como queres fazer-lo?"

Nenhum comentário:

Postar um comentário