# Kuudes yritys, lista sanakirjoja, alustetaan pinta-ala
from math import pi

circles = [{'center': (10.0, 20.0), 'radius': 2.5, 'color': (255, 0, 0)},
           {'center': (0.0, -5.0), 'radius': 7.5, 'color': (168, 201, 255)},
           {'center': (10.5, 19.5), 'radius': 3.0, 'color': (255, 0, 0)},
           {'center': (5.0, -5.0), 'radius': 8.5, 'color': (0, 0, 0)}]


def store_area(c):
    c['area'] = pi * c['radius'] ** 2


for c in circles:
    store_area(c)


def info(c):
    print('Ympyrän keskipiste on {}, säde {} ja pinta-ala {}. Sen väri on {}'
          .format(c['center'], c['radius'], c['area'], c['color']))


def intersects(c1, c2):
    (x1, y1) = c1['center']
    (x2, y2) = c2['center']
    ds = (x2 - x1) ** 2 + (y2 - y1) ** 2
    return ds <= c1['radius'] ** 2 or ds <= c2['radius'] ** 2


def same_color(c1, c2):
    return c1['color'] == c2['color']


for i in range(len(circles)):
    info(circles[i])

for i1 in range(len(circles)):
    for i2 in range(i1 + 1, len(circles)):
        if intersects(circles[i1], circles[i2]):
            print('Ympyrät {} ja {} leikkaavat'.format(i1, i2))
        else:
            print('Ympyrät {} ja {} eivät leikkaa'.format(i1, i2))
        if same_color(circles[i1], circles[i2]):
            print('Ympyrät {} ja {} ovat samanväriset'.format(i1, i2))
        else:
            print('Ympyrät {} ja {} ovat eriväriset'.format(i1, i2))
