1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
|
#include <windows.h>
#include <math.h>
#include <stdio.h>
#include <iostream>
using namespace std;
/* Définition des contantes à l'octave 0 et de chaque fréquence */
#define C0 16.35 // DO
#define D0 18.35 // RE
#define E0 20.60 // MI
#define F0 21.83 // FA
#define G0 24.50 // SOL
#define A0 27.50 // LA
#define B0 30.87 // SI
#define RATIO_OCTAVE 2
int main()
{
float notes[] = {C0, D0, E0, F0, G0, A0, B0};
float current_note;
float frequency;
float freq_octave;
int idx;
int octave;
for(octave=1 ; octave<=7 ; octave++){
freq_octave = pow(RATIO_OCTAVE, octave);
for(idx=0 ; idx<7 ; idx++){
current_note = notes[idx];
frequency = current_note * freq_octave;
printf("%f\n", frequency);
Beep( frequency, 250);
}
}
system("PAUSE");
return EXIT_SUCCESS;
} |
Partager