Nugroho's blog.

## Monday, April 10, 2017

### Another Turtle in Circle

There's always another way to solve something.

So, I have another code for "Turtle in Circle" code, :)

In the script below, I use turtle position to determine if it's still inside circle or not. If it outside circle, instead of send it to zero position, I send it to random position inside circle.

`import turtlefrom random import uniformimport numpy as npturtle.shape("turtle")#turtle.speed(1)x = 0y = 0rmax=40for i in range (1,1000):    a = uniform (-90,90) #angle    turtle.left(a)    d = uniform (-75,75) #distance    x = turtle.xcor()+d*np.cos(a*np.pi/180)    y = turtle.ycor()+d*np.sin(a*np.pi/180)    r = np.sqrt(x*x+y*y)    if r>rmax:        turtle.setx(uniform(-rmax,rmax))        turtle.sety(uniform(-rmax,rmax))        x = 0        y = 0    else:        turtle.forward(d)turtle.exitonclick() `
.

## Sunday, April 9, 2017

### Turtle in Circle

I use previous code and improve it so the turtle could only move at certain circle area.

`import turtlefrom random import uniformimport numpy as npturtle.shape("turtle")#turtle.speed(1)x = 0y = 0for i in range (1,1000):    a = uniform (-90,90) #angle    turtle.left(a)    d = uniform (-75,75) #distance    x += d*np.cos(np.pi*a/180)    y += d*np.sin(np.pi*a/180)    r = np.sqrt(x*x+y*y)    if r>40:        turtle.setx(0)        turtle.sety(0)        x = 0        y = 0    turtle.forward(d)turtle.exitonclick() `
.

### Anti MainStream.

Saat booming sepatu roda, Alfa malah sibuk berlatih skateboard, :D .

## Saturday, April 8, 2017

### Random Turtle Movement.

I use turtle module, the standard module, in Python.

The turtle movement has random direction (angle), and random distance (forward/backward).

`import turtlefrom random import uniformturtle.shape("turtle")turtle.speed(1)for i in range (1,100):    #random angle    a = uniform (-90,90)    turtle.left(a)    #random move    d = uniform (-100,100)    turtle.forward(d)turtle.exitonclick() `
.

### The Power of 10

Rules for Developing Safety-Critical Code:

Avoid complex flow constructs, such as goto and recursion.

All loops must have fixed bounds. This prevents runaway code.

Avoid heap memory allocation.

Restrict functions to a single printed page.

Use a minimum of two runtime assertions per function.

Restrict the scope of data to the smallest possible.

Check the return value of all non-void functions, or cast to void to indicate the return value is useless.

Use the preprocessor sparingly.

Limit pointer use to a single dereference, and do not use function pointers.

Compile with all possible warnings active; all warnings should then be addressed before release of the software.

## Friday, April 7, 2017

### Prime Number on Python

We've done it using Delphi, how about Python? Easy, :)

`for i in range (2,200):    prime = True    for j in range (2,i):        if i%j==0:             prime=False    if prime==True:        print i`
.

### Prime Number on Delphi

Using Delphi to generate prime number? Okay, there's some code out there with

if (i mod 2 <>0) and (i mod 3 <>0) and (i mod 5 <>0) and (i mod 7 <>0) then i is prime.

Don't use that.

That's just for prime number below 100.

Use this instead.

`var i,j:integer;   prime:boolean;begin  for i:=2 to 200 do begin    prime:=true;    for j:=2 to i-1 do begin      if i mod j=0 then prime:=false;    end;    if prime=true then memo1.Lines.Append(intToStr(i));  end;end;`
.

323f (5) amp (1) android (12) apple (7) arduino (18) art (1) assembler (21) astina (4) ATTiny (23) blackberry (4) camera (3) canon (2) cerita (2) computer (106) crazyness (11) debian (1) delphi (39) diary (286) flash (8) fortran (6) freebsd (6) guitar (2) HTML5 (10) IFTTT (7) Instagram (7) internet (12) iOS (5) iPad (6) iPhone (5) java (1) javascript (1) keynote (2) LaTeX (6) lazarus (1) linux (29) lion (15) mac (28) macbook air (8) macbook pro (3) macOS (1) Math (3) mathematica (1) maverick (6) mazda (4) microcontroler (35) music (37) netbook (1) nugnux (6) os x (36) php (1) Physicist (29) Picture (3) programming (189) Python (109) S2 (13) software (7) Soliloquy (125) Ubuntu (5) unix (4) Video (8) wayang (3) yosemite (3)