vaja 3 predvecer
This commit is contained in:
@@ -0,0 +1,47 @@
|
||||
#include "knjiznica/bitmap.h"
|
||||
#include "cplxlib.h"
|
||||
#include "stdio.h"
|
||||
#include "math.h"
|
||||
|
||||
#define resolution 3400
|
||||
const double dimension = 1.7;
|
||||
const double orbit = 2.0;
|
||||
|
||||
unsigned char canvas[resolution][resolution]; // platno za risanje
|
||||
|
||||
unsigned char iteratePolynomial(cplx z0, cplx c)
|
||||
{
|
||||
cplx z = z0;
|
||||
for (unsigned i = 0; i<255; i++)
|
||||
{
|
||||
z = cprod(z, z);
|
||||
z = csum(z, c);
|
||||
if (sqrt((z.re*z.re)+(z.im*z.im)) > orbit) return i+1;
|
||||
}
|
||||
return 255;
|
||||
}
|
||||
|
||||
int main(void)
|
||||
{
|
||||
cplx c;
|
||||
double a,b;
|
||||
printf("Vnesi adicijsko konstanto polinoma: ");
|
||||
scanf("%lf%lfi", &a, &b);
|
||||
puts("Iteriram:");
|
||||
c.re = a;
|
||||
c.im = b;
|
||||
for(unsigned p = 0; p < resolution; p++)
|
||||
{
|
||||
printf(".");
|
||||
for(unsigned q = 0; q < resolution; q++)
|
||||
{
|
||||
cplx z0;
|
||||
z0.re = ((dimension/resolution) * p * 2) - dimension;
|
||||
z0.im = -(((dimension/resolution) * q * 2) - dimension);
|
||||
canvas[p][q] = iteratePolynomial(z0, c);
|
||||
}
|
||||
}
|
||||
shraniBMP(canvas, resolution, resolution, "julia.bmp");
|
||||
printf("\n\n Končano. Slika shranjena\n");
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user