Ádám, az első zenei zsenitől a mai temperált hangrendszerig XXXI.

 

Futtatható Java-kód a temperált hangfrekvenciák kiszámítására

 

Ebben a rövid Java-kódban az előző fejezetekben felvázolt temperált hangfrekvencia-értékeket írjuk ki egy egyszerű konzolos alkalmazás formájában. Kiváló platform erre az Eclipse Luna nevű szoftverfejlesztési környezet, amely a program futtatását is gond nélkül képes megoldani. Az alább felvázolt algoritmus egyébként része egy készülő Java-programozási módszertannak, amely az Interneten 2016. nyarától lesz elérhető a www.informatika-programozas.hu címen.

 

import java.math.*;

public class Main {
    public static void main(String[] args) {

    String [] hangNev = new String [12];
    {
        hangNev[0] = "Aisz/B";
        hangNev[1] = "H";
        hangNev[2] = "C";
        hangNev[3] = "Cisz/Desz";
        hangNev[4] = "D";
        hangNev[5] = "Disz/Esz";
        hangNev[6] = "E";
        hangNev[7] = "F";
        hangNev[8] = "Fisz/Gesz";
        hangNev[9] = "G";
        hangNev[10] = "Gisz/Asz";
    }


    double hangA = 440;
    for(int i = 0; i <= 4; i++){
        hangA /= 2;
    }
    double[] hangATomb = new double[10];
    System.out.print("Zenei 'A' hangok: \n");
    for(int i = 0; i <= 9; i++){
        hangATomb[i] = hangA;
        hangA *= 2;
        System.out.print(hangATomb[i] + ", ");
    }

    System.out.println();

    double gyokkitevo = 12;
    double eredmeny = Math.pow(2, 1/gyokkitevo);
    System.out.println("\nA temperálás képletének állandó értéke: \n" + eredmeny);
    for(int i = 0; i < 9; i++){
        double hang = hangATomb[i];
        System.out.println("\n" + hangATomb[i] + " és "

                                    + hangATomb[i+1] + " Hz-es 'A' hangok között:");
        for(int j = 0; j <= 10; j++){
            hang *= eredmeny;
            System.out.println(hang + " (" + hangNev[j] + ")");
            }
        }
    }
}

 

Végeredmény:

Zenei 'A' hangok:
13.75, 27.5, 55.0, 110.0, 220.0, 440.0, 880.0, 1760.0, 3520.0, 7040.0,

A temperálás képletének állandó értéke:
1.0594630943592953

13.75 és 27.5 Hz-es 'A' hangok között:
14.56761754744031 (Aisz/B)
15.433853164253879 (H)
16.351597831287418 (C)
17.32391443605451 (Cisz/Desz)
18.354047994837977 (D)
19.44543648263006 (Disz/Esz)
20.601722307054377 (E)
21.82676446456275 (F)
23.124651419477157 (Fisz/Gesz)
24.49971474885934 (G)
25.95654359874658 (Gisz/Asz)

27.5 és 55.0 Hz-es 'A' hangok között:
29.13523509488062 (Aisz/B)
30.867706328507758 (H)
32.703195662574835 (C)
34.64782887210902 (Cisz/Desz)
36.708095989675954 (D)
38.89087296526012 (Disz/Esz)
41.203444614108754 (E)
43.6535289291255 (F)
46.249302838954314 (Fisz/Gesz)
48.99942949771868 (G)
51.91308719749316 (Gisz/Asz)

55.0 és 110.0 Hz-es 'A' hangok között:
58.27047018976124 (Aisz/B)
61.735412657015516 (H)
65.40639132514967 (C)
69.29565774421803 (Cisz/Desz)
73.41619197935191 (D)
77.78174593052024 (Disz/Esz)
82.40688922821751 (E)
87.307057858251 (F)
92.49860567790863 (Fisz/Gesz)
97.99885899543736 (G)
103.82617439498632 (Gisz/Asz)

110.0 és 220.0 Hz-es 'A' hangok között:
116.54094037952248 (Aisz/B)
123.47082531403103 (H)
130.81278265029934 (C)
138.59131548843607 (Cisz/Desz)
146.83238395870382 (D)
155.5634918610405 (Disz/Esz)
164.81377845643502 (E)
174.614115716502 (F)
184.99721135581726 (Fisz/Gesz)
195.99771799087472 (G)
207.65234878997265 (Gisz/Asz)

220.0 és 440.0 Hz-es 'A' hangok között:
233.08188075904496 (Aisz/B)
246.94165062806206 (H)
261.6255653005987 (C)
277.18263097687213 (Cisz/Desz)
293.66476791740763 (D)
311.126983722081 (Disz/Esz)
329.62755691287003 (E)
349.228231433004 (F)
369.9944227116345 (Fisz/Gesz)
391.99543598174944 (G)
415.3046975799453 (Gisz/Asz)

440.0 és 880.0 Hz-es 'A' hangok között:
466.1637615180899 (Aisz/B)
493.8833012561241 (H)
523.2511306011974 (C)
554.3652619537443 (Cisz/Desz)
587.3295358348153 (D)
622.253967444162 (Disz/Esz)
659.2551138257401 (E)
698.456462866008 (F)
739.988845423269 (Fisz/Gesz)
783.9908719634989 (G)
830.6093951598906 (Gisz/Asz)

880.0 és 1760.0 Hz-es 'A' hangok között:
932.3275230361799 (Aisz/B)
987.7666025122483 (H)
1046.5022612023947 (C)
1108.7305239074885 (Cisz/Desz)
1174.6590716696305 (D)
1244.507934888324 (Disz/Esz)
1318.5102276514801 (E)
1396.912925732016 (F)
1479.977690846538 (Fisz/Gesz)
1567.9817439269978 (G)
1661.2187903197812 (Gisz/Asz)

1760.0 és 3520.0 Hz-es 'A' hangok között:
1864.6550460723597 (Aisz/B)
1975.5332050244965 (H)
2093.0045224047894 (C)
2217.461047814977 (Cisz/Desz)
2349.318143339261 (D)
2489.015869776648 (Disz/Esz)
2637.0204553029603 (E)
2793.825851464032 (F)
2959.955381693076 (Fisz/Gesz)
3135.9634878539955 (G)
3322.4375806395624 (Gisz/Asz)

3520.0 és 7040.0 Hz-es 'A' hangok között:
3729.3100921447194 (Aisz/B)
3951.066410048993 (H)
4186.009044809579 (C)
4434.922095629954 (Cisz/Desz)
4698.636286678522 (D)
4978.031739553296 (Disz/Esz)
5274.0409106059205 (E)
5587.651702928064 (F)
5919.910763386152 (Fisz/Gesz)
6271.926975707991 (G)
6644.875161279125 (Gisz/Asz)