Je ne sais toujours pas manipuler les classes en c++, mais j’ai l’outil qui va me permettre de présenter les lois physique en acoustique et de démontrer par la même que les celtes avaient construit leur alphabet sur les lois physiques. En attendant que j’affine pour pouvoir présenter voici le code qui permet de créer les voyelles et les consonnes
#include <iostream>
#include <fstream>
#include <vector>
#include <array>
#include <bits/stdc++.h>
typedef unsigned char uchar;
/**pour compiler g++ 'main.cpp' -std=c++11 -Wall -Wextra -o 'executable' ********************/
int repet1;
int repet;
int ba1;
int ba2;
void bascule1(int ba1,int ba2,int ba3,int ba4,int ba5,int ba6,int ba7,int ba8,int ba9,int ba10,int ba11,int ba12,int ba13,int ba14,int ba15,int ba16,int ba17,int ba18,int ba19,int ba20,int ba21,int ba22,int ba23,int ba24,int ba25,int ba26,int ba27,int ba28,int ba29,int ba30,int ba31,int ba32,int ba33,int ba34,int ba35,int ba36,int ba37,int ba38,int ba39,int ba40,int ba41,int ba42,int ba43,int ba44,int ba45,int ba46,int ba47,int ba48,int ba49,int ba50,int ba51,int ba52,int ba53,int ba54,int ba55,int ba56,int ba57,int ba58,int ba59,int ba60,int ba61,int ba62,int ba63,int ba64,int ba65,int ba66,int ba67,int ba68,int ba69,int ba70,int ba71,int ba72,int ba73,int ba74,int ba75,int ba76,int ba77,int ba78,int ba79,int ba80,int ba81,int ba82,int ba83,int ba84,int ba85,int ba86,int ba87,int ba88,int ba89,int ba90,int ba91,int ba92,int ba93,int ba94,int ba95,int ba96,int ba97,int ba98,int ba99,int ba100,int ba101,int ba102,int ba103,int ba104,int ba105,int ba106,int ba107,int ba108,int ba109,int ba110,int ba111,int ba112,int ba113,int ba114,int ba115,int ba116,int ba117,int ba118,int ba119,int ba120,int ba121,int ba122,int ba123,int ba124,int ba125,int ba126,int ba127,int ba128,int ba129,int ba130,int ba131,int ba132,int ba133,int ba134,int ba135,int ba136,int ba137,int ba138,int ba139,int ba140,int ba141,int ba142,int ba143,int ba144,int ba145,int ba146,int ba147,int ba148,int ba149,int ba150,int ba151,int ba152,int ba153,int ba154,int ba155,int ba156,int ba157,int ba158,int ba159,int ba160,int ba161,int ba162,int ba163,int ba164,int ba165,int ba166,int ba167,int ba168,int ba169,int ba170,int ba171,int ba172,int ba173,int ba174,int ba175,int ba176,int ba177,int ba178,int ba179,int ba180,int ba181,int ba182,int ba183,int ba184,int ba185,int ba186,int ba187,int ba188,int ba189,int ba190,int ba191,int ba192,int ba193,int ba194,int ba195,int ba196,int ba197,int ba198,int ba199,int ba200,int ba201,int ba202,int ba203,int ba204,int ba205,int ba206,int ba207,int ba208,int ba209,int ba210,int ba211,int ba212,int ba213,int ba214,int ba215,int ba216,int ba217,int ba218,int ba219,int ba220,int ba221,int ba222,int ba223,int ba224,int ba225,int ba226,int ba227,int ba228,int ba229,int ba230,int ba231,int ba232,int ba233,int ba234,int ba235,int ba236,int ba237,int ba238,int ba239,int ba240,int ba241,int ba242,int ba243,int ba244,int ba245,int ba246,int ba247,int ba248,int ba249,int ba250,int ba251,int ba252,int ba253,int ba254,int ba255,int ba256,int ba257,int ba258,int ba259,int ba260,int ba261,int ba262,int ba263,int ba264,int ba265){
unsigned char tabn[244] = {0x0000,0x0001,0x0002,0x0003,0x0004,0x0005,0x0006,0x0007,0x0008,0x0009,0x000A,0x000B,0x000C,0x000D,0x000E,0x000F,0x0010,0x0011,0x0012,0x0013,0x0014,0x0015,0x0016,0x0017,0x0018,0x0019,0x001A,0x001B,0x001C,0x001D,0x001E,0x001F,0x0020,0x0021,0x0022,0x0023,0x0024,0x0025,0x0026,0x0027,0x0028,0x0029,0x002A,0x002B,0x002C,0x002D,0x002E,0x002F,0x0030,0x0031,0x0032,0x0033,0x0034,0x0035,0x0036,0x0037,0x0038,0x0039,0x003A,0x003B,0x003C,0x003D,0x003E,0x003F,0x0040,0x0041,0x0042,0x0043,0x0044,0x0045,0x0046,0x0047,0x0048,0x0049,0x004A,0x004B,0x004C,0x004D,0x004E,0x004F,0x0050,0x0051,0x0052,0x0053,0x0054,0x0055,0x0056,0x0057,0x0058,0x0059,0x005A,0x005B,0x005C,0x005D,0x005E,0x005F,0x0060,0x0061,0x0062,0x0063,0x0064,0x0065,0x0066,0x0067,0x0068,0x0069,0x006A,0x006B,0x006C,0x006D,0x006E,0x006F,0x0070,0x0071,0x0072,0x0073,0x0074,0x0075,0x0076,0x0077,0x0078,0x0079,0x007A,0x007B,0x007C,0x007D,0x007E,0x007F,0x0080,0x0081,0x0082,0x0083,0x0084,0x0085,0x0086,0x0087,0x0088,0x0089,0x008A,0x008B,0x008C,0x008D,0x008E,0x008F,0x0090,0x0091,0x0092,0x0093,0x0094,0x0095,0x0096,0x0097,0x0098,0x0099,0x009A,0x009B,0x009C,0x009D,0x009E,0x009F,0x00A0,0x00A1,0x00A2,0x00A3,0x00A4,0x00A5,0x00A6,0x00A7,0x00A8,0x00A9,0x00AA,0x00AB,0x00AC,0x00AD,0x00AE,0x00AF,0x00B0,0x00B1,0x00B2,0x00B3,0x00B4,0x00B5,0x00B6,0x00B7,0x00B8,0x00B9,0x00BA,0x00BB,0x00BC,0x00BD,0x00BE,0x00BF,0x00C0,0x00C1,0x00C2,0x00C3,0x00C4,0x00C5,0x00C6,0x00C7,0x00C8,0x00C9,0x00CA,0x00CB,0x00CC,0x00CD,0x00CE,0x00CF,0x00D0,0x00D1,0x00D2,0x00D3,0x00D4,0x00D5,0x00D6,0x00D7,0x00D8,0x00D9,0x00DA,0x00DB,0x00DC,0x00DD,0x00DE,0x00DF,0x00E0,0x00E1,0x00E2,0x00E3,0x00E4,0x00E5,0x00E6,0x00E7,0x00E8,0x00E9,0x00EA,0x00EB,0x00EC,0x00ED,0x00EE,0x00EF};
int taba1[69]= {ba1,ba5,ba9,ba13,ba17,ba21,ba25,ba29,ba33,ba37,ba41,ba45,ba49,ba53,ba57,ba61,ba65,ba69,ba73,ba77,ba81,ba85,ba89,ba93,ba97,ba101,ba105,ba109,ba113,ba117,ba121,ba125,ba129,ba133,ba137,ba141,ba145,ba149,ba153,ba157,ba161,ba165,ba169,ba173,ba177,ba181,ba185,ba189,ba193,ba197,ba201,ba205,ba209,ba213,ba217,ba221,ba225,ba229,ba233,ba237,ba241,ba245,ba249,ba253,ba257,ba261,ba265};
int taba2[68]= {ba2,ba6,ba10,ba14,ba18,ba22,ba26,ba30,ba34,ba38,ba42,ba46,ba50,ba54,ba58,ba62,ba66,ba70,ba74,ba78,ba82,ba86,ba90,ba94,ba98,ba102,ba106,ba110,ba114,ba118,ba122,ba126,ba130,ba134,ba138,ba142,ba146,ba150,ba154,ba158,ba162,ba166,ba170,ba174,ba178,ba182,ba186,ba190,ba194,ba198,ba202,ba206,ba210,ba214,ba218,ba222,ba226,ba230,ba234,ba238,ba242,ba246,ba250,ba254,ba258,ba262};
int taba3[68]= {ba3,ba7,ba11,ba15,ba19,ba23,ba27,ba31,ba35,ba39,ba43,ba47,ba51,ba55,ba59,ba63,ba67,ba71,ba75,ba79,ba83,ba87,ba91,ba95,ba99,ba103,ba107,ba111,ba115,ba119,ba123,ba127,ba131,ba135,ba139,ba143,ba147,ba151,ba155,ba159,ba163,ba167,ba171,ba175,ba179,ba183,ba187,ba191,ba195,ba199,ba203,ba207,ba211,ba215,ba219,ba223,ba227,ba231,ba235,ba239,ba243,ba247,ba251,ba255,ba259,ba263};
int taba4[68]= {ba4,ba8,ba12,ba16,ba20,ba24,ba28,ba32,ba36,ba40,ba44,ba48,ba52,ba56,ba60,ba64,ba68,ba72,ba76,ba80,ba84,ba88,ba92,ba96,ba100,ba104,ba108,ba112,ba116,ba120,ba124,ba128,ba132,ba136,ba140,ba144,ba148,ba152,ba156,ba160,ba164,ba168,ba172,ba176,ba180,ba184,ba188,ba192,ba196,ba200,ba204,ba208,ba212,ba216,ba220,ba224,ba228,ba232,ba236,ba240,ba244,ba248,ba252,ba256,ba260,ba264};
int taba5[68]= {ba5,ba9,ba13,ba17,ba21,ba25,ba29,ba33,ba37,ba41,ba45,ba49,ba53,ba57,ba61,ba65,ba69,ba73,ba77,ba81,ba85,ba89,ba93,ba97,ba101,ba105,ba109,ba113,ba117,ba121,ba125,ba129,ba133,ba137,ba141,ba145,ba149,ba153,ba157,ba161,ba165,ba169,ba173,ba177,ba181,ba185,ba189,ba193,ba197,ba201,ba205,ba209,ba213,ba217,ba221,ba225,ba229,ba233,ba237,ba241,ba245,ba249,ba253,ba257,ba261,ba265};
std::vector<std::vector<uchar>> tab = {
{0x0052,0x0049,0x0046,0x0046,0x001C,0x0032,0x0000,0x0000,0x0057,0x0041,0x0056,0x0045,0x0066,0x006D,0x0074,0x0020,0x0010,0x0000,0x0000,0x0000,0x0001,0x0000,0x0001,0x0000,0x0044,0x00AC,0x0000,0x0000,0x0044,0x00AC,0x0000,0x0000,0x0001,0x0000,0x0008,0x0000,0x0064,0x0061,0x0074,0x0061,0x00F8,0x0031,0x0000,0x0000}};
std::ofstream f ("son-o.wav", std::ios::binary);
if(!f) {
std::cerr << "Impossible d'ouvrir le fichier en écriture !" << std::endl;
//return 1;
}
// entete fichier audio
for(std::vector<uchar> v : tab) {
for(uchar c : v) {
f << c;
}
}
for (int i=0; i<66; i++)
{
for (repet1 = (taba1[i]); repet1 < (taba1[i]+2); repet1++) { for (repet = 0; repet < 2; repet++) { f<<tabn[repet1]; } }
for (repet1 = (taba1[i]+2); repet1 < (taba2[i]-8); repet1++) { f<<tabn[repet1];repet1++;repet1++;repet1++; }
for (repet1 = (taba2[i]-8); repet1 < (taba2[i]-2); repet1++) { f<<tabn[repet1]; }
for (repet1 = (taba2[i]-2); repet1 < (taba2[i]); repet1++) { for (repet = 0; repet < 2; repet++) { f<<tabn[repet1]; } }
repet1 = taba2[i]; for (repet = 0; repet < taba3[i]; repet++){ f<<tabn[repet1]; }
// fin monte
for (repet1 = (taba2[i]-1); repet1 > (taba2[i]-3); repet1--) { for (repet = 0; repet < 2; repet++) { f<<tabn[repet1]; } }
for (repet1 = (taba2[i]-3); repet1 > (taba5[i]+8); repet1--) { f<<tabn[repet1];repet1--;repet1--;repet1--; }
for (repet1 = (taba5[i]+8); repet1 > (taba5[i]+2); repet1--) { f<<tabn[repet1]; }
for (repet1 = (taba5[i]+2); repet1 > (taba5[i]); repet1--) { for (repet = 0; repet < 2; repet++) { f<<tabn[repet1]; } }
repet1 = taba5[i]; for (repet = 0; repet < taba4[i]; repet++){ f<<tabn[repet1]; }
// for (repet = 0; repet < taba4[i]; repet++) { f<<taba5[i]; } // fin descend
}
/**********************************************************/
//tab de zone blanche
std::vector<std::vector<uchar>> tab3 = {
{0x0080}};
// 1 tab de zone blanche de fin
repet = 0;
for (repet = 0; repet < 180; repet++) {
for(std::vector<uchar> v : tab3) {
for(uchar c : v) {
f << c;
}
}
}
//2
}
int main (void)
{
bascule1(110,137,6,2,118,140,8,4,118,143,4,4,86,146,4,4,90,152,2,5,97,159,4,2,44,164,4,4,50,176,2,5,64,189,4,2,113,176,3,3,157,201,2,2,21,225,2,2,91,189,2,2,114,225,2,2,4,225,2,2,72,146,2,2, 80,176,2,2,113,225,2,3,4,225,2,2,72,146,2,2,80,176,2,2,113,225,2,3,4,225,2,2,72,146,2,2,80,176,2,2,113,225,2,3,74,225,2,2,72,146,2,2,80,176,2,2,113,225,2,3,4,225,2,2,72,146,2,2,80,176,2,2,113,225,2,3,4,225,2,2,72,146,2,2,80,176,2,2,113,225,2,3,80,187,2,2,113,223,2,3,6,229,2,3,69,189,2,3,112,216,2,2,31,223,2,2,80,115,3,2,110,185,3,2,31,203,3,3,80,212,2,2,71,125,3,2,95,175,3,3,31,182,3,2,45,200,2,2,77,121,3,3,31,166,3,5,134,162,3,3,60,188,7,2,84,159,3,2,31,159,3,3,75,181,5,2,91,157,3,2,85,171,5,12,31,152,3,3,92,165,5,2,102,151,3,5,100,157,3,4,106,150,3,6,128);
return 0;
}
cordialement