ADSense1

Mostrando postagens com marcador Programação. Mostrar todas as postagens
Mostrando postagens com marcador Programação. Mostrar todas as postagens

terça-feira, 15 de abril de 2014

Algoritmo de Multiplicação em Binário Simples

Estou replicando aqui, uma dica muito boa dada pelo Wagner lip em seu blog.
Consideremos que a nossa multiplicação tenha dois operadores, A e B.
Digamos que A=1537 e B=723
O resultado esperado é 1527 x 723 = 1104021
Vamos nomear uma variável R como sendo o resultado.

1) R=0
2) Shift A um bit para a direita
3) Se ocorreu carry bit, ou seja, A “era” impar, some B em R
4) Shift B um bit para a esquerda
5) Repita 2-4 até A ser zero.
Pronto, R contém o resultado de A x B
A técnica é somar o valor atual de B em R, só quando A é impar, e desprezar B quando A é par.

Duvida? Veja:
              A                  B                    R

Isso é muito simples, não é

sábado, 12 de abril de 2014

Vídeo-aulas sobre programação em linguagem C


Vídeos Tutoriais sobre programação em C, elaborados pelo prof. Dr. André Backes

Clique nos links para assistir:
<Introdução>  <Declaração de Variáveis>  <Printf>  <Scanf>  <Operadores de Atribuição>  <Constantes>  <Operadores Aritméticos>  <Comentários>  <Pré e Pós Incrementos>  <Atribuição Simplificada>  <Operadores Relacionais>  <Operadores Lógicos>  <Comando If>  <Comando Else>  <Aninhamento If-Else>  <Operador Ternário (?)>  <Comando SWITCH>  <Comando WHILE>  <Comando FOR>  <Comando Do-While>  <Aninhamento de Repetições>  <Comando Break>  <Comando Continue>  <Comando Go To>  <Array/Vetor>  <Array/Matriz>  <Array Multidimensional>  <inicialização de Arrays>  <Somando um Array>  <Maior Valor de um Array>  <Strings: Conceitos Básicos>  <Strings: Biblioteca string.h>  <Strings: Invertendo uma string>  <Strings: Contando Caracteres Específicos>  <Struct: Introdução>  <Struct: Trabalhando com estruturas>  <Struct: Array de Estruturas>  <Aninhamento de Estruturas>  <Unions: Introdução>  <Unions: Exemplos>  <Enum>  <Typedef>  <Função – Visão Geral>  <Função – Parâmetros>  <Função – Corpo>  <Função – Retorno>  <Função – Passagem por Valor>  <Função – Passagem por Referência>  <Função – Array como parâmetro>  <Função – Struct como parâmetro>  <Recursão pt.1 – Definição>  <Recursão pt.2 – Funcionamento>  <Recursão pt.3 – Cuidados>  <Recursão pt.4 – Soma de 1 até N>  <Ponteiros pt.1 – Conceito>  <Ponteiros pt.2 – Operações>  <Ponteiros pt.3 – Ponteiro Genério>  <Ponteiros pt.4 – Ponteiros e Arrays>  <Ponteiros pt.5 – Ponteiro para Ponteiro>  <Alocação Dinâmica pt.1 – Introdução>  <Alocação Dinâmica pt.2 – Sizeof>  <Alocação Dinâmica pt.3 – Malloc>  <Alocação Dinâmica pt.4 – Calloc>  <Alocação Dinâmica pt.5 – Realloc>  <Alocação Dinâmica pt.6 – Alocação de Matrizes>  <Arquivos pt.1 – Introdução>  <Arquivos pt.2 – Arquivos Texto e Binário>  <Arquivos pt.3 – Abrir e Fechar>  <Arquivos pt.4 – fputc>  <Arquivos pt.5 - fgetc>  <Arquivos pt.6 - Trabalhando com Arquivos>  <Arquivos pt.7 - EOF>  <Arquivos pt.8 - fputs>  <Arquivos pt.9 - fgets>  <Arquivos pt.10 - fwrite>  <Arquivos pt.11 - fread>  <Arquivos pt.12 - fprintf>  <Arquivos pt.13 - fscanf>  <Arquivos pt.14 - fseek e rewind>  <Parâmetros da main>  <Limpando o buffer do teclado>  <Exercício 01 – Triângulo de Floyd>  <Exercício 02>  <Exercício 03>  <Exercício 04>  <Exercício 05>  <Exercício 06>  <Exercício 07>  <Exercício 08>  <Usando o debugger>  <Strings: cuidado com o tamanho da string!>


terça-feira, 8 de abril de 2014

Livro sobre Algoritmos: Planning Algorithms

Este livro, disponibilizado pelo autor, Steven M. LaValle, em sua página, apresenta de uma forma unificada os diversos tipos de planejamentos de algoritmos. Este assunto é usado em diversas áreas como robótica, controle e automação, inteligência artificial, computação gráfica, etc.. 








Versões completas em pdf:


Partes e capítulos individuais


PART I: INTRODUCTORY MATERIAL
[pdf]
Chapter 1: Introduction 
[pdf]
Motivation, examples, applications, high-level planning concepts, overview of the book.
Chapter 2: Discrete Planning 
[pdf]
Feasible planning, optimal planning, search algorithms, A*, Dijkstra's algorithm, forward search, backward search, bidirectional search, value iteration, logic-based planning, STRIPS, plan graph, planning as satisfiability.
PART II: MOTION PLANNING
[pdf]
Chapter 3: Geometric Representations and Transformations 
[pdf]
Polygonal, polyhedral, and semi-algebraic models. Rigid-body transformations, 3D rotations, kinematic chains, Denavit-Hartenberg parameters, kinematic trees, nonrigid transformations.
Chapter 4: The Configuration Space 
[pdf]
Topological spaces, manifolds, paths. The C-space of rigid bodies, chains of bodies, and trees of bodies. Configuration space. Quaternions. C-space obstacles, closed kinematic chains, algebraic varieties.
Chapter 5: Sampling-Based Motion Planning 
[pdf]
Metric spaces, measure, random sampling, low-discrepancy sampling, low-dispersion sampling, grids, lattices, collision detection, Rapidly-exploring Random Trees (RRTs), Probabilistic Roadmaps (PRMs), randomized potential fields.
Chapter 6: Combinatorial Motion Planning
[pdf]
Vertical cell decomposition, shortest-path roadmaps, maximum-clearance roadmaps, cylindrical algebraic decomposition, Canny's algorithm, complexity bounds, Davenport-Schinzel sequences.
Chapter 7: Extensions of Basic Motion Planning 
[pdf]
Time varying problems, velocity tuning, multiple-robot coordination, hybrid systems, manipulation planning, protein folding, unknotting, closed chains, Random Loop Generator (RLG), coverage planning, optimal motion planning.
Chapter 8: Feedback Motion Planning 
[pdf]
Navigation functions, smooth manifolds, vector fields, numerical potential functions, optimal navigation functions, compositions of funnels, dynamic programming on continuous spaces.
PART III: DECISION-THEORETIC PLANNING
[pdf]
Chapter 9: Basic Decision Theory 
[pdf]
Optimization and probability review, games against nature, Bayesian classification, zero-sum games, nonzero-sum games, Nash equilibria, utility theory, criticisms of decision theory.
Chapter 10: Sequential Decision Theory 
[pdf]
Sequential games against nature, value iteration, policy iteration, infinite-horizon planning, discounted cost, average cost, reinforcement learning, sequential games.
Chapter 11: Sensors and Information Spaces 
[pdf]
Information spaces and information mappings, sensing uncertainty, discrete and continuous sensors, POMDPs, Kalman filtering, particle filtering, information spaces in games.
Chapter 12: Planning Under Sensing Uncertainty 
[pdf]
Value iteration for planning under sensing uncertainty. Robot localization, mapping, navigation, searching, visibility-based pursuit-evasion, manipulation with sensing uncertainty.
PART IV: PLANNING UNDER DIFFERENTIAL CONSTRAINTS
[pdf]
Chapter 13: Differential Models 
[pdf]
Kinematic constraints, Dubins car, Reeds-Shepp car, differential drives, a car pulling trailers, phase space, rigid-body dynamics, dynamics of a chain of bodies, Newtonian mechanics, Euler-Lagrange equation, variational principles, Hamilton's equations, differential games.
Chapter 14: Sampling-Based Planning Under Differential Constraints 
[pdf]
Phase-space obstacles, nonholonomic planning, kinodynamic planning, trajectory planning, reachability analysis, motion primitives, sampling-based planning, Barraquand-Latombe nonholonomic planner, RRTs, feedback planning, plan-and-transform method, path-constrained trajectory planning, gradient-based trajectory optimization.
Chapter 15: System Theory and Analytical Techniques 
[pdf]
System properties, stability, Lyapunov functions, controllability, STLC, Hamilton-Jacobi-Bellman equation, Pontryagin's maximum principle, Dubins curves, Reeds-Shepp curves, Balkcom-Mason curves, affine control systems, distributions, Frobenius theorem, Chow-Rashevskii theorem, Lie brackets, control Lie algebra, P. Hall basis, steering with piecewise constant inputs, steering with sinusoids.

sexta-feira, 9 de novembro de 2012

"DOG": Linguagem de Programação para redes sociais

DOG é uma linguagem de programação desenvolvida para facilitar a criação de aplicativos para redes sociais. Desenvolvida pelo prof. Sep Kamvar, do Media Labs do MIT, depois de se sentir frustrado com as linguagens disponíveis como o Java para programar interações sociais nas redes.

A linguagem DOG, torna a codificação de aplicativos para redes sociais bem mais simples pelo fato de ser uma de alto nível e utilizar uma linguagem descritiva mais natural como seu vocabulário de códigos e funções.

DOG faz parte do the Jabberwocky social computing stack e está programado para ser disponibilizado a partir da primavera de 2013 (hemisfério norte), e será gratuita e open-source.

Fontes:

domingo, 4 de novembro de 2012

Curso básico de programação para sistemas Android


Um curso básico para quem deseja programar para plataforma Android é gratuito e em português, oferecido pela comunidade The Code Bakers.

Para acessar as informações das aulas basta clicar nos títulos abaixo:

Curso básico de programação Android:
Lição   7: Menus e estilos
Lição   8: Temas e imagens
Lição   9: Listas

Curso de criação de aplicações com PhoneGap
Lição   1: Preparando o terreno
Lição  3: Usando plugins
Lição  4: Lidando com arquivos

Curso de SQLite no Android:
Lição   1:  Introdução ao SQLite
Lição   3:  Criando um CRUD no SQLite

terça-feira, 25 de setembro de 2012

Vídeo Aula Processing + Arduino

Vídeo-Aulas sobre Programação com a plataforma Processing para Arduino (o kit de desenvolvimento Open Source que virou febre entre os praticantes de Eletrônica) apresentadas pelo garagista (colaborador do Laboratório de Garagem) Camilo de Lellis Barreto Júnior, muito interessante. Clique nos links das aulas abaixo.


<Aula 1>  <Aula 2>  <Aula 3>


sexta-feira, 14 de setembro de 2012

Processing: Ambiente e Linguagem de Programação

Processing é um ambiente e linguagem de programação open source inicialmente desenvolvido com objetivo de auxiliar o ensino de programação de computadores dentro de um contexto visual. Hoje, Processing é utilizado pelos mais variados profissionais e hobistas, nas mais diversas áreas do conhecimento. É muito utilizado também para a construção de supervisórios nas áreas de Mecatrônica, Automação, Eletrônica.

Entre na página pelo link abaixo. Existem versões para o Windows (32 e 64), Linux (32 e 34) e MacOS X.




LinkWithin

Related Posts Plugin for WordPress, Blogger...