Gyakorlati alapok
A PU, bocsánat a PI értéke
A kör legfontosabb tulajdonságainak kiszámításához csupán 2 bemeneti adatra van szükségünk, a sugárra (r - radius)...
...és a PI értékére (3.1415926535). Ebből már ki tudjuk számítani a kör 3 legáltalánosabb tulajdonságát:
-
Kör átmérője = 2 * r
-
Kör kerülete = 2 * r * PI
-
Kör területe = r2 * PI
2 képletben is szereplő PI azt sejteti, hogy a kör tulajdonságaiban tetten érhető egy rejtett azonosság, ez pedig a PI (π), amely a körkerület és körátmérő aránya.
A keletkezett szám irracionális szám, tehát nem írható fel 2 szám hányadosaként, ennek ellenére közelített értékét (3.1415926535) vígan használjuk fel a hétköznapokban és a mérnöki számítások alapját képezi.
Most írjunk egy olyan rövid programot, amelyik azt bizonyítja be, hogy a PI értéke (irracionális tulajdonsága ellenére) mindig nagyjából azonos. Ilyen összehasonlítást egyébként már tettünk a Egy középkori zseni: Signore Fibonacci című fejezetben, csak az aranyarány vonatkozásában.
A többit már viszonylag könnyű leprogramoznunk. Matematikailag nézve 2 db képletünk van, ezeket kell implementálnunk:
-
Kör átmérője = 2 * r
-
Kör kerülete = 2 * r * PI
A PI konstans, nem változtatható értékként deklaráljuk (final double PI = 3.1415926535;). A körsugár (r) a for ciklus i léptetője lesz, hiszen szekvenciálisan listázni akarjuk a kimeneti adatokat. Ezt 20 egység hosszban tervezzük megtenni. Célunkat akkor érjük el, ha minden listázott érték (nagyjából) ugyanaz lesz.
public class Main {
public static void main(String[] args) {
final double PI = 3.1415926535;
double piKeresett = 0;
for(int i = 1; i <= 20; i++){
double kerulet = 2 * i * PI;
double atmero = 2 * i;
piKeresett = kerulet / atmero;
System.out.println(i + " egységnyi
sugárnál a PI értéke: " + piKeresett);
}
}
}
Végeredmény:
1 egységnyi sugárnál a PI értéke: 3.1415926535
2 egységnyi sugárnál a PI értéke: 3.1415926535
3 egységnyi sugárnál a PI értéke: 3.1415926535
4 egységnyi sugárnál a PI értéke: 3.1415926535
5 egységnyi sugárnál a PI értéke: 3.1415926535
6 egységnyi sugárnál a PI értéke: 3.1415926535
7 egységnyi sugárnál a PI értéke: 3.1415926535000005
8 egységnyi sugárnál a PI értéke: 3.1415926535
9 egységnyi sugárnál a PI értéke: 3.1415926535
10 egységnyi sugárnál a PI értéke: 3.1415926535
11 egységnyi sugárnál a PI értéke: 3.1415926535
12 egységnyi sugárnál a PI értéke: 3.1415926535
13 egységnyi sugárnál a PI értéke: 3.1415926535
14 egységnyi sugárnál a PI értéke: 3.1415926535000005
15 egységnyi sugárnál a PI értéke: 3.1415926535
16 egységnyi sugárnál a PI értéke: 3.1415926535
17 egységnyi sugárnál a PI értéke: 3.1415926535
18 egységnyi sugárnál a PI értéke: 3.1415926535
19 egységnyi sugárnál a PI értéke: 3.1415926535
20 egységnyi sugárnál a PI értéke: 3.1415926535
Kis kódtömöritéssel 3 db változódeklaráció is kizárható, hiszen a System.out.println() függvény bemeneti paraméterként képes fogadni számításokat is:
public class Main {
public static void main(String[] args) {
final double PI = 3.1415926535;
for(int i = 1; i <= 20; i++){
System.out.println(i + " egységnyi sugárnál a PI értéke: " + (2 * i * PI) / (2
* i));
}
}
}
Végeredmény:
1 egységnyi sugárnál a PI értéke: 3.1415926535
2 egységnyi sugárnál a PI értéke: 3.1415926535
3 egységnyi sugárnál a PI értéke: 3.1415926535
4 egységnyi sugárnál a PI értéke: 3.1415926535
5 egységnyi sugárnál a PI értéke: 3.1415926535
6 egységnyi sugárnál a PI értéke: 3.1415926535
7 egységnyi sugárnál a PI értéke: 3.1415926535000005
8 egységnyi sugárnál a PI értéke: 3.1415926535
9 egységnyi sugárnál a PI értéke: 3.1415926535
10 egységnyi sugárnál a PI értéke: 3.1415926535
11 egységnyi sugárnál a PI értéke: 3.1415926535
12 egységnyi sugárnál a PI értéke: 3.1415926535
13 egységnyi sugárnál a PI értéke: 3.1415926535
14 egységnyi sugárnál a PI értéke: 3.1415926535000005
15 egységnyi sugárnál a PI értéke: 3.1415926535
16 egységnyi sugárnál a PI értéke: 3.1415926535
17 egységnyi sugárnál a PI értéke: 3.1415926535
18 egységnyi sugárnál a PI értéke: 3.1415926535
19 egységnyi sugárnál a PI értéke: 3.1415926535
20 egységnyi sugárnál a PI értéke: 3.1415926535
A helyes kiértékelési sorrend érdekében a műveleteket zárójeleznünk kell:
(2 * i * PI) / (2 * i)
Nem vagyok matematikus, ám a PI értékének bizonyítása felvet egy alapjában véve matematikai-logikai problémát. A fenti rutinokban a PI értékének kváziállandóságát magával a PI felhasználásával bizonyítottuk be. Ez azonban -ha jól azonosítom be-, egy petitio principii (körkörös érvelés), mert magával a kérdéses dologgal próbálom a dolgot bebizonyítani. Mivel nem vagyok matematikus, sajnos a jelen pillanatban nem tudom bizonyítani a PI-t másképpen, csakis a kör kerületének és átmérőjének arányaként. Ám világos, hogy a helyes bizonyítási érveléshez a PI alapjait más matematikai eszközökből kell levezetnünk.