O Analisador Diferencial Digital (em inglês Digital Differential Analyzer ou simplesmente DDA) é uma implementação digital do analisador diferencial. Os integradores em uma DDA são implementados como acumuladores, com o resultado numérico convertido a uma sequência de pulso pelo overflow do acumulador.
Segue o código para o algoritmo do DDa em C++ #include <cstdlib> #include <iostream> #include <math.h> using namespace std; int x1, x2, yl, y2;
int main( ) { int dx,dy,k; float xin, passos, yin, x, y; cout << "insira x1 e y1: "; cin >> x1 >> yl; cout << "insira x2 e y2: "; cin >> x2 >> y2; dx = x2 - x1; dy = y2 - yl; if( abs( dx ) > abs( dy ) )
passos = abs( dx );
else
passos = abs( dy );
xin = dx / passos; yin = dy / passos; x = x1; y = yl; round( x ), round( y ); for( k=1; k < passos; k++ )
round( xin ), round( yin ); x = x + xin; y = y + yin; round( xin ), round( yin ); cout << "x" << k << ":" << x << " " << "y" << k << ":" << y << endl;
system( "PAUSE" ); return EXIT_SUCCESS; } Categoria:Primeiros computadores Categoria:História do hardware