Entrar
Últimos assuntos
» player não consegue andarpor lovn7 Qui 21 Nov 2024, 13:33
» É possível fazer istó no game maker
por William Lima Qui 21 Nov 2024, 10:56
» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por Lua Sáb 16 Nov 2024, 20:22
» (Resolvido) Cenario longo x Texture Pages
por josuedemoraes Sáb 16 Nov 2024, 15:31
» Kids' band
por Adilson Lucindo Santos Sex 15 Nov 2024, 12:23
» (RESOLVIDO) Engasgos-Troca de Sprites/animações
por josuedemoraes Ter 12 Nov 2024, 01:49
» Block Room - DEMO
por Joton Qua 06 Nov 2024, 22:58
» Game Infinito vertical (subindo)
por macmilam Sáb 26 Out 2024, 12:36
» Retorno da GMBR!!!
por Dancity Ter 22 Out 2024, 16:36
» Máquina de estados
por aminaro Qui 10 Out 2024, 13:33
» como faço pra um objeto colidir com o outro e diminuir a vida do player ?
por josuedemoraes Qui 03 Out 2024, 16:51
» RESOLVIDO: Colisão com objetos moveis
por josuedemoraes Qua 02 Out 2024, 20:28
» Crypt of the Blood Moon
por divin sphere Qua 11 Set 2024, 18:18
» como fazer um objeto seguir?
por divin sphere Dom 18 Ago 2024, 18:08
» Procuro de alguém para Modelar/Texturizar/Animar objetos 3D
por un00brn Dom 11 Ago 2024, 11:10
» Destruição de cenário (estilo DD Tank)
por CoronelZeg Sex 09 Ago 2024, 17:16
» RESOLVIDO-Como destruir uma instancia especifica de um objeto
por josuedemoraes Ter 23 Jul 2024, 00:40
» Automatizar a coleta de id
por GabrielXavier Seg 22 Jul 2024, 18:01
» Preciso de ajuda para concluir um pequeno projeto
por lmoura Qui 27 Jun 2024, 15:45
» ANGULO ACOMPANHAR O OBJETO
por Klinton Rodrigues Qui 27 Jun 2024, 08:34
» Musica reinicia quando sala reinicia
por GabrielXavier Ter 18 Jun 2024, 07:28
» como fazer uma copia de gd
por generico_cube Sex 14 Jun 2024, 15:48
» Square Adventure
por guilherme551 Ter 11 Jun 2024, 09:54
» como posso definir limite de uma variavel
por GabrielXavier Sex 07 Jun 2024, 14:14
» [Resolvido] Dúvida, colisão única de objeto
por vdm842 Sex 24 maio 2024, 09:50
[TRFN]Lógica de Programação
2 participantes
Página 1 de 1
[TRFN]Lógica de Programação
Sobre o tutorial
Esse tutorial foi desenvolvido por mim na tentativa de ajudar aqueles que não compreendem muito bem a programação e como ela funciona. Espero que gostem do tutorial. Esse tutorial está baseado naquilo que aprendi ao longo do tempo buscando conhecimento. Esse tutorial está mais voltado ao Game Maker , porém decidi escreve-lo de forma que fosse possível abranger para outras formas de programar. Vale lembrar que aqui não estou ensinando comandos para programar , mas sim estou tentando mostrar a essência básica dessa arte.
Conceito Inicial
Na programação , existe um raciocínio , cujo é desenvolvido encima de um sistema pre-definido combinado a um leque de opções que dispõe a você. Existem incontáveis formas de raciocínio lógico , logo , na programação é a mesma coisa , já que cada programador tem sua forma/metodologia para trabalhar. Mas tem uma coisa em comum que todo programador
segue : a lógica de programação. Essa lógica-base é uma forma de pensar , que trabalha segundo sua necessidade. Essa lógica não tem formula mágica que a traduz , mas sim algumas regras para a projeção dela. Vale lembrar que a programação está diretamente ligada a matemática.
segue : a lógica de programação. Essa lógica-base é uma forma de pensar , que trabalha segundo sua necessidade. Essa lógica não tem formula mágica que a traduz , mas sim algumas regras para a projeção dela. Vale lembrar que a programação está diretamente ligada a matemática.
Lógica Básica
Em toda linguagem de programação você terá um princípio essencial : estruturas condicionais. Temos por exemplo o IF (SE) que serve para checar uma condição e executar determinada ação. Mas o meu foco não é ensinar sobre cada uma delas , pois já tem tutoriais bem mais explicados sobre cada estrutura , e por isso , vou apenas mostrar a lógica estrutural.
Geralmente você deve pensar em eventos e reações. Como por exemplo :
Nesta frase aleatória que fiz , eu defini um ponto inicial , defini os acontecimentos e as reações/condições. Observe :
Ou seja , esse raciocínio de acontecimentos é a essência de programar. Ai está o macete , pensar em eventos que podem sofrer uma reação ocasionada por uma condição ou acontecimento , as vezes até mesmo como uma reação em cadeia. O resto é apenas variação de funcionalidades... Nada que um breve estudo da linguagem de seu interesse não resolva. Esse exemplo pode ser facilmente transformado em uma estrutura condicional simples (SE) já que tem uma sequencia completa.
Bom , como já falei um pouco da lógica , vou dar um exemplo de sua aplicação , mostrando de uma forma mais clara :
Geralmente você deve pensar em eventos e reações. Como por exemplo :
Estou sem camisa para sair. Comprei uma camisa, vou vestir ela. Se estou vestido com uma
camisa bonita e nova posso ir para festa. Se eu não tiver uma camisa bonita não vou a festa, vou ficar em casa.
camisa bonita e nova posso ir para festa. Se eu não tiver uma camisa bonita não vou a festa, vou ficar em casa.
Nesta frase aleatória que fiz , eu defini um ponto inicial , defini os acontecimentos e as reações/condições. Observe :
1. Estou sem camisa para sair.
2. Comprei uma camisa , vou vestir ela.
3. Se estou vestido com uma camisa bonita e nova posso ir para festa.
4. Se eu não tiver uma camisa bonita não vou a festa , vou ficar em casa.
2. Comprei uma camisa , vou vestir ela.
3. Se estou vestido com uma camisa bonita e nova posso ir para festa.
4. Se eu não tiver uma camisa bonita não vou a festa , vou ficar em casa.
Ou seja , esse raciocínio de acontecimentos é a essência de programar. Ai está o macete , pensar em eventos que podem sofrer uma reação ocasionada por uma condição ou acontecimento , as vezes até mesmo como uma reação em cadeia. O resto é apenas variação de funcionalidades... Nada que um breve estudo da linguagem de seu interesse não resolva. Esse exemplo pode ser facilmente transformado em uma estrutura condicional simples (SE) já que tem uma sequencia completa.
1 = Ponto inicial.
2 = Fato que pode ocorrer.
3 = Se esse determinado fato ocorrer , faço isso.
4 = Senão , faço aquilo.
2 = Fato que pode ocorrer.
3 = Se esse determinado fato ocorrer , faço isso.
4 = Senão , faço aquilo.
Bom , como já falei um pouco da lógica , vou dar um exemplo de sua aplicação , mostrando de uma forma mais clara :
- Código:
DECLARA a; // Ponto inicial.
DEFINE "a" PARA "1"; // Comprei a camisa (exemplo).
SE ("a" FOR IGUAL A "1") {
vou_na_festa; // Se estou vestido com uma camisa bonita e nova posso ir para festa
}
SENÃO {
fico_em_casa; // Se eu não tiver uma camisa bonita não vou a festa , vou ficar em casa.
}
Comandos
Cada uma das plataformas tem seus comandos específicos , sua organização própria e sua metodologia particular , e logo , cada linguagem tem seus comandos próprios e suas funções próprias nas quais sempre resultam na mesma. Os comandos podem ser considerados referências , para executar ações pre-determinadas. No Game Maker por exemplo temos funções , que servem para executar ações (internas ou externas) ou orientar objetos. O mais importante e que você use esse conjunto de comandos em harmonia com a sua metodológica forma de programar/trabalhar.
Algumas dicas
Quando fores programar , lembre-se sempre que você deve pensar em acontecimentos antes de tudo , porque se não há ação não há analise e consequentemente não há reação. Tudo é feito em uma ordem retilínea. Uma dica é também assimilar algumas palavras em português para inglês ou linguá que sua plataforma de trabalho exige. "Mover" por exemplo é "move" no inglês e escrevendo "move" abre-se uma sequencia de comandos que você pode utilizar dentro do Game Maker por exemplo. Vale lembrar que obter essa "lógica ao programar" não é do dia para noite , depende de cada um , pois cada um tem seu modo de fazer arte.
Outra coisa que é fundamental é que você tenha organização , porque senão você pode se perder dentro do seu próprio raciocínio. Já aconteceu comigo por exemplo.
Não aprofundei muito não , porque minha meta era apenas mostrar a base da programação. Não falei de TRUE ou FALSE , VARS ou CONSTANTS pelo fato de já conter tutoriais bem explicados aqui no fórum , apenas mostrei o trabalho mental que existe por traz desses comandos pre-definidos.
Curiosidades
Você sabia que as estruturas condicionais podem ser transformadas em formulas aritméticas segundo a matemática de bool ? Por exemplo , as estruturas condicionais tem seus conectivos em todo caso , seja ele "=" , "&&" (e) , "||" (ou) , ">" (maior que) , "<" (menor que) , "!" (não). Vou mostrar a formula de cada uma na matemática :
"=" : A - B (se resultar zero , continua);
"&&" : A * B (Se resultar um , continua);
"||" : A + B (Se algum dos valores for um , continua);
">" : A - B (Se resultar positivo , continua);
"<" : A - B (Se resultar negativo , continua);
"!" : A (Se era positivo passa a ser negativo e vice-versa);
"&&" : A * B (Se resultar um , continua);
"||" : A + B (Se algum dos valores for um , continua);
">" : A - B (Se resultar positivo , continua);
"<" : A - B (Se resultar negativo , continua);
"!" : A (Se era positivo passa a ser negativo e vice-versa);
Escrito por Túlio Rodrigues de Freitas Nascimento
Até mais ver galera
Última edição por TRFN em Sex 01 Mar 2013, 10:01, editado 17 vez(es)
Re: [TRFN]Lógica de Programação
o Tutorial é bom, porém ele é MUITO curto, mal comecei a ler e já acabei, ele não explica muita coisa, apenas como aplicar a lógica, só que, isso é algo que é relativamente até fácil, não demorei muito a aprender esta lógica, mas do mais, é sempre bom ver um outro ensino similar(via alguns).
---eu queria um Tutorial de Lógica de IA, melhor, se for de Luta, mas um avançado .
---eu queria um Tutorial de Lógica de IA, melhor, se for de Luta, mas um avançado .
Re: [TRFN]Lógica de Programação
Complementei ele e obrigado por ler. Esse tutorial é só para dar uma base , porque tem muita gente que não tem e se frusta ao programar. É só para estender o entendimento do assunto para os experientes e alavancar aquele que nunca teve contato ou não tem afinidade com essa questão.
Última edição por TRFN em Dom 03 Fev 2013, 02:04, editado 1 vez(es)
Re: [TRFN]Lógica de Programação
Gostei dessa ultima parte, não havia pensado muito nessa lado de transformar em mátemática os sinais.
Re: [TRFN]Lógica de Programação
E por isso que eu acho que a lógica vem antes de saber os comandos. Entender com o que se trabalha e fundamental para qualquer tipo de linguagem de programação. Primeiro a lógica , depois a adaptação.theguitarmester escreveu:Gostei dessa ultima parte, não havia pensado muito nessa lado de transformar em matemática os sinais.
Tópicos semelhantes
» [Trancado] Logica de programação
» [Vídeo] Lógica da programação.
» Checando distancia para atirar no mais próximo
» [TRFN]C - Reviravolta
» [TRFN] Folly Cat
» [Vídeo] Lógica da programação.
» Checando distancia para atirar no mais próximo
» [TRFN]C - Reviravolta
» [TRFN] Folly Cat
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos