math-exercises 3.0.152 → 3.0.153

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (116) hide show
  1. package/lib/exercises/exercise.d.ts +2 -0
  2. package/lib/exercises/exercise.d.ts.map +1 -1
  3. package/lib/exercises/math/calculLitteral/equation/index.d.ts +1 -1
  4. package/lib/exercises/math/calculLitteral/equation/index.d.ts.map +1 -1
  5. package/lib/exercises/math/calculLitteral/equation/index.js +1 -1
  6. package/lib/exercises/math/calculLitteral/equation/square/equationSimpleSquare.d.ts +10 -0
  7. package/lib/exercises/math/calculLitteral/equation/square/equationSimpleSquare.d.ts.map +1 -0
  8. package/lib/exercises/math/calculLitteral/equation/square/equationSimpleSquare.js +183 -0
  9. package/lib/exercises/math/calculLitteral/equation/square/equationSquareWithSteps.d.ts +10 -0
  10. package/lib/exercises/math/calculLitteral/equation/square/equationSquareWithSteps.d.ts.map +1 -0
  11. package/lib/exercises/math/calculLitteral/equation/square/equationSquareWithSteps.js +173 -0
  12. package/lib/exercises/math/calculLitteral/equation/square/index.d.ts +3 -0
  13. package/lib/exercises/math/calculLitteral/equation/square/index.d.ts.map +1 -0
  14. package/lib/exercises/math/calculLitteral/equation/square/index.js +2 -0
  15. package/lib/exercises/math/functions/sqrt/squareRootCalculation.d.ts.map +1 -1
  16. package/lib/exercises/math/functions/sqrt/squareRootCalculation.js +4 -2
  17. package/lib/exercises/math/geometry/euclidian/homothetyFactorFromPoints.d.ts +15 -0
  18. package/lib/exercises/math/geometry/euclidian/homothetyFactorFromPoints.d.ts.map +1 -0
  19. package/lib/exercises/math/geometry/euclidian/homothetyFactorFromPoints.js +301 -0
  20. package/lib/exercises/math/geometry/euclidian/index.d.ts +7 -0
  21. package/lib/exercises/math/geometry/euclidian/index.d.ts.map +1 -1
  22. package/lib/exercises/math/geometry/euclidian/index.js +7 -0
  23. package/lib/exercises/math/geometry/euclidian/pinPointFromAxialOrCentralSymmetry.d.ts +21 -0
  24. package/lib/exercises/math/geometry/euclidian/pinPointFromAxialOrCentralSymmetry.d.ts.map +1 -0
  25. package/lib/exercises/math/geometry/euclidian/pinPointFromAxialOrCentralSymmetry.js +406 -0
  26. package/lib/exercises/math/geometry/euclidian/pinPointFromRotation.d.ts +18 -0
  27. package/lib/exercises/math/geometry/euclidian/pinPointFromRotation.d.ts.map +1 -0
  28. package/lib/exercises/math/geometry/euclidian/pinPointFromRotation.js +315 -0
  29. package/lib/exercises/math/geometry/euclidian/pinPointFromTranslation.d.ts +20 -0
  30. package/lib/exercises/math/geometry/euclidian/pinPointFromTranslation.d.ts.map +1 -0
  31. package/lib/exercises/math/geometry/euclidian/pinPointFromTranslation.js +314 -0
  32. package/lib/exercises/math/geometry/euclidian/pinSegmentFromRotation.d.ts +18 -0
  33. package/lib/exercises/math/geometry/euclidian/pinSegmentFromRotation.d.ts.map +1 -0
  34. package/lib/exercises/math/geometry/euclidian/pinSegmentFromRotation.js +387 -0
  35. package/lib/exercises/math/geometry/euclidian/recognizeAngleFromRotation.d.ts +18 -0
  36. package/lib/exercises/math/geometry/euclidian/recognizeAngleFromRotation.d.ts.map +1 -0
  37. package/lib/exercises/math/geometry/euclidian/recognizeAngleFromRotation.js +309 -0
  38. package/lib/exercises/math/geometry/euclidian/recognizeHomothetyCenter.d.ts +17 -0
  39. package/lib/exercises/math/geometry/euclidian/recognizeHomothetyCenter.d.ts.map +1 -0
  40. package/lib/exercises/math/geometry/euclidian/recognizeHomothetyCenter.js +301 -0
  41. package/lib/exercises/math/geometry/euclidianConstructions/buildPointFromAxialSymetry.d.ts.map +1 -1
  42. package/lib/exercises/math/geometry/euclidianConstructions/buildPointFromAxialSymetry.js +22 -8
  43. package/lib/exercises/math/geometry/euclidianConstructions/buildPointFromCentralSymmetry.d.ts +11 -0
  44. package/lib/exercises/math/geometry/euclidianConstructions/buildPointFromCentralSymmetry.d.ts.map +1 -0
  45. package/lib/exercises/math/geometry/euclidianConstructions/buildPointFromCentralSymmetry.js +169 -0
  46. package/lib/exercises/math/geometry/euclidianConstructions/index.d.ts +2 -0
  47. package/lib/exercises/math/geometry/euclidianConstructions/index.d.ts.map +1 -1
  48. package/lib/exercises/math/geometry/euclidianConstructions/index.js +2 -0
  49. package/lib/exercises/math/geometry/euclidianConstructions/placeHomothetyCenter.d.ts +16 -0
  50. package/lib/exercises/math/geometry/euclidianConstructions/placeHomothetyCenter.d.ts.map +1 -0
  51. package/lib/exercises/math/geometry/euclidianConstructions/placeHomothetyCenter.js +309 -0
  52. package/lib/exercises/math/probaStat/stats1var/averageWithClasses.d.ts +9 -0
  53. package/lib/exercises/math/probaStat/stats1var/averageWithClasses.d.ts.map +1 -0
  54. package/lib/exercises/math/probaStat/stats1var/averageWithClasses.js +140 -0
  55. package/lib/exercises/math/probaStat/stats1var/averageWithTableWithContext.d.ts +8 -0
  56. package/lib/exercises/math/probaStat/stats1var/averageWithTableWithContext.d.ts.map +1 -0
  57. package/lib/exercises/math/probaStat/stats1var/averageWithTableWithContext.js +113 -0
  58. package/lib/exercises/math/probaStat/stats1var/index.d.ts +2 -0
  59. package/lib/exercises/math/probaStat/stats1var/index.d.ts.map +1 -1
  60. package/lib/exercises/math/probaStat/stats1var/index.js +2 -0
  61. package/lib/exercises/math/scratch/index.d.ts +3 -0
  62. package/lib/exercises/math/scratch/index.d.ts.map +1 -1
  63. package/lib/exercises/math/scratch/index.js +3 -0
  64. package/lib/exercises/math/scratch/scratchListElemAtIndex.d.ts +13 -0
  65. package/lib/exercises/math/scratch/scratchListElemAtIndex.d.ts.map +1 -0
  66. package/lib/exercises/math/scratch/scratchListElemAtIndex.js +189 -0
  67. package/lib/exercises/math/scratch/scratchListElemAtIndex2.d.ts +23 -0
  68. package/lib/exercises/math/scratch/scratchListElemAtIndex2.d.ts.map +1 -0
  69. package/lib/exercises/math/scratch/scratchListElemAtIndex2.js +207 -0
  70. package/lib/exercises/math/scratch/scratchListFilter.d.ts +13 -0
  71. package/lib/exercises/math/scratch/scratchListFilter.d.ts.map +1 -0
  72. package/lib/exercises/math/scratch/scratchListFilter.js +397 -0
  73. package/lib/exercises/math/spaceGeometry/basis/findSpacePointOnRectangularPrism.d.ts +14 -0
  74. package/lib/exercises/math/spaceGeometry/basis/findSpacePointOnRectangularPrism.d.ts.map +1 -0
  75. package/lib/exercises/math/spaceGeometry/basis/findSpacePointOnRectangularPrism.js +347 -0
  76. package/lib/exercises/math/spaceGeometry/basis/index.d.ts +1 -0
  77. package/lib/exercises/math/spaceGeometry/basis/index.d.ts.map +1 -1
  78. package/lib/exercises/math/spaceGeometry/basis/index.js +1 -0
  79. package/lib/exercises/math/spaceGeometry/index.d.ts +2 -0
  80. package/lib/exercises/math/spaceGeometry/index.d.ts.map +1 -1
  81. package/lib/exercises/math/spaceGeometry/index.js +2 -0
  82. package/lib/exercises/math/spaceGeometry/sections/areaOfConeSection.js +3 -3
  83. package/lib/exercises/math/spaceGeometry/solids/index.d.ts +3 -0
  84. package/lib/exercises/math/spaceGeometry/solids/index.d.ts.map +1 -0
  85. package/lib/exercises/math/spaceGeometry/solids/index.js +2 -0
  86. package/lib/exercises/math/spaceGeometry/solids/recognizeSolidFrom3D.d.ts +15 -0
  87. package/lib/exercises/math/spaceGeometry/solids/recognizeSolidFrom3D.d.ts.map +1 -0
  88. package/lib/exercises/math/spaceGeometry/solids/recognizeSolidFrom3D.js +440 -0
  89. package/lib/exercises/math/spaceGeometry/solids/recognizeSolidFromSolidPattern.d.ts +11 -0
  90. package/lib/exercises/math/spaceGeometry/solids/recognizeSolidFromSolidPattern.d.ts.map +1 -0
  91. package/lib/exercises/math/spaceGeometry/solids/recognizeSolidFromSolidPattern.js +1089 -0
  92. package/lib/exercises/math/spaceGeometry/sphere/index.d.ts +3 -0
  93. package/lib/exercises/math/spaceGeometry/sphere/index.d.ts.map +1 -0
  94. package/lib/exercises/math/spaceGeometry/sphere/index.js +2 -0
  95. package/lib/exercises/math/spaceGeometry/sphere/pickIsPointInSphereOrBall.d.ts +9 -0
  96. package/lib/exercises/math/spaceGeometry/sphere/pickIsPointInSphereOrBall.d.ts.map +1 -0
  97. package/lib/exercises/math/spaceGeometry/sphere/pickIsPointInSphereOrBall.js +127 -0
  98. package/lib/exercises/math/spaceGeometry/sphere/sphereLatLonReading.d.ts +14 -0
  99. package/lib/exercises/math/spaceGeometry/sphere/sphereLatLonReading.d.ts.map +1 -0
  100. package/lib/exercises/math/spaceGeometry/sphere/sphereLatLonReading.js +390 -0
  101. package/lib/geogebra/geogebraConstructor.d.ts +2 -0
  102. package/lib/geogebra/geogebraConstructor.d.ts.map +1 -1
  103. package/lib/geogebra/geogebraConstructor.js +6 -0
  104. package/lib/index.d.ts +178 -5
  105. package/lib/index.d.ts.map +1 -1
  106. package/lib/math/geometry/point.d.ts +6 -0
  107. package/lib/math/geometry/point.d.ts.map +1 -1
  108. package/lib/math/geometry/point.js +28 -0
  109. package/lib/tree/nodes/equations/equalNode.d.ts +1 -1
  110. package/lib/tree/nodes/equations/equalNode.d.ts.map +1 -1
  111. package/lib/tree/nodes/equations/equalNode.js +0 -1
  112. package/lib/tree/utilities/nodeSimplifier.d.ts +1 -1
  113. package/lib/utils/arrays/arrayZip.d.ts +2 -0
  114. package/lib/utils/arrays/arrayZip.d.ts.map +1 -0
  115. package/lib/utils/arrays/arrayZip.js +12 -0
  116. package/package.json +1 -1
@@ -65,6 +65,8 @@ export type GeogebraOptions = {
65
65
  commands?: string[];
66
66
  coords: number[];
67
67
  is3D?: boolean;
68
+ projection?: number;
69
+ projectionParam?: number;
68
70
  gridDistance?: [number, number] | false;
69
71
  hideGrid?: boolean;
70
72
  hideAxes?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"exercise.d.ts","sourceRoot":"","sources":["../../src/exercises/exercise.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAInD,eAAO,MAAM,SAAS,GACpB,cAAc,WAAW,EAAE,EAC3B,GAAG,MAAM,EACT,SAAS,MAAM,IAAI,SAQpB,CAAC;AACF,eAAO,MAAM,YAAY,GACvB,OAAO,WAAW,EAAE,EACpB,WAAW,MAAM,EACjB,SAAQ,KAAK,GAAG,KAAa,SAQ9B,CAAC;AACF,eAAO,MAAM,YAAY,GACvB,OAAO,WAAW,EAAE,EACpB,WAAW,MAAM,EACjB,SAAQ,KAAK,GAAG,KAAa,SAQ9B,CAAC;AACF,eAAO,MAAM,iBAAiB,GAC5B,OAAO,WAAW,EAAE,EACpB,WAAW,MAAM,EACjB,SAAQ,KAAK,GAAG,KAAa,SAU9B,CAAC;AAEF,eAAO,MAAM,YAAY,GACvB,OAAO,WAAW,EAAE,EACpB,GAAG,MAAM,EACT,oBAAoB,MAAM,kBAQ3B,CAAC;AAEF,oBAAY,qBAAqB;IAC/B,UAAU,eAAe;IACzB,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,WAAW,gBAAgB;IAC3B,IAAI,SAAS;IACb,UAAU,eAAe;IACzB,MAAM,WAAW;IACjB,GAAG,QAAQ;IACX,IAAI,SAAS;CACd;AACD,oBAAY,mBAAmB;IAC7B,QAAQ,aAAa;IACrB,MAAM,WAAW;IACjB,WAAW,gBAAgB;CAC5B;AACD,MAAM,MAAM,eAAe,GACvB;IACE,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,mBAAmB,CAAC,QAAQ,CAAC;IACnC,MAAM,EAAE,qBAAqB,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,GACD;IACE,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,mBAAmB,CAAC,MAAM,CAAC;IACjC,MAAM,EAAE,qBAAqB,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;CACtB,GACD;IACE,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,mBAAmB,CAAC,WAAW,CAAC;IACtC,MAAM,EAAE,qBAAqB,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB,CAAC;AAEN,MAAM,MAAM,WAAW,GAAG;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,OAAO,CAAC;IACvB,MAAM,EAAE,KAAK,GAAG,KAAK,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,KAAK,CAAC;IACxC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IACjC,KAAK,CAAC,EAAE,mBAAmB,CAAC;IAC5B,KAAK,CAAC,EAAE,mBAAmB,CAAC;IAC5B,KAAK,CAAC,EAAE,mBAAmB,CAAC;IAC5B,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,oCAAoC,CAAC,EAAE,OAAO,CAAC;IAC/C,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAClC,CAAC;AAEF,MAAM,WAAW,QAAQ,CACvB,YAAY,EACZ,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC;IAEtD,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,YAAY,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,IAAI,CAAC,EAAE,CAAC,KAAK,GAAG,QAAQ,CAAC,EAAE,CAAC;IAE5B,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,iBAAiB,CAAC,EAAE,eAAe,CAAC;IACpC,oBAAoB,CAAC,EAAE,eAAe,CAAC;IACvC,KAAK,CAAC,EAAE;QACN,gBAAgB,CAAC,EAAE,OAAO,CAAC;QAC3B,YAAY,CAAC,EAAE;YACb,mBAAmB,EAAE,OAAO,CAAC;YAC7B,gBAAgB,EAAE,OAAO,CAAC;YAC1B,kBAAkB,EAAE,OAAO,CAAC;SAC7B,CAAC;KACH,CAAC;IACF,cAAc,CAAC,EAAE,UAAU,GAAG,QAAQ,CAAC;IACvC,WAAW,EAAE,YAAY,CAAC;IAC1B,OAAO,CAAC,EAAE,QAAQ,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC;CACxB;AAED,MAAM,MAAM,YAAY,CACtB,YAAY,EACZ,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IACpD,CACF,CAAC,EAAE,MAAM,EACT,IAAI,EAAE;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,YAAY,EACvC,OAAO,CAAC,EAAE,QAAQ,KACf,WAAW,EAAE,CAAC;AACnB,MAAM,MAAM,GAAG,CACb,YAAY,EACZ,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IACpD,CACF,aAAa,EAAE,MAAM,EACrB,IAAI,EAAE;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,YAAY,EACvC,OAAO,CAAC,EAAE,QAAQ,KACf,OAAO,CAAC;AACb,MAAM,MAAM,QAAQ,CAClB,YAAY,EACZ,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IACpD,CACF,aAAa,EAAE,MAAM,EAAE,EAAE,EACzB,IAAI,EAAE;IAAE,WAAW,EAAE,MAAM,EAAE,EAAE,CAAA;CAAE,GAAG,YAAY,EAChD,OAAO,CAAC,EAAE,QAAQ,KACf,OAAO,CAAC;AACb,MAAM,MAAM,MAAM,CAChB,YAAY,EACZ,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IACpD,CACF,aAAa,EAAE,MAAM,EAAE,EACvB,IAAI,EAAE;IAAE,SAAS,EAAE,MAAM,EAAE,CAAA;CAAE,GAAG,YAAY,EAC5C,OAAO,CAAC,EAAE,QAAQ,KACf,OAAO,CAAC;AACb,MAAM,MAAM,iBAAiB,CAC3B,YAAY,EACZ,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IACpD,CAAC,IAAI,CAAC,EAAE,QAAQ,KAAK,QAAQ,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;AAC1D,MAAM,MAAM,OAAO,CACjB,YAAY,EACZ,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IACpD,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,QAAQ,KAAK,MAAM,CAAC;AACvD,MAAM,MAAM,aAAa,CACvB,YAAY,EACZ,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IACpD,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,QAAQ,KAAK,MAAM,CAAC;AACvD,MAAM,MAAM,cAAc,CACxB,YAAY,EACZ,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IACpD,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,QAAQ,KAAK,MAAM,CAAC;AACvD,MAAM,MAAM,iBAAiB,CAC3B,YAAY,EACZ,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IACpD,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,QAAQ,KAAK,MAAM,CAAC;AACvD,MAAM,MAAM,SAAS,CACnB,YAAY,EACZ,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IACpD,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,QAAQ,KAAK,MAAM,CAAC;AACvD,MAAM,MAAM,cAAc,CACxB,YAAY,EACZ,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IACpD,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,QAAQ,KAAK,MAAM,EAAE,EAAE,CAAC;AAC3D,MAAM,MAAM,OAAO,CACjB,YAAY,EACZ,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IACpD,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,QAAQ,KAAK,CAAC,KAAK,GAAG,QAAQ,CAAC,EAAE,CAAC;AACrE,MAAM,MAAM,YAAY,CACtB,YAAY,EACZ,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IACpD,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,QAAQ,KAAK,MAAM,EAAE,CAAC;AACzD,MAAM,MAAM,aAAa,CACvB,YAAY,EACZ,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IACpD,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,QAAQ,KAAK,eAAe,CAAC;AAChE,MAAM,MAAM,oBAAoB,CAC9B,YAAY,EACZ,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IACpD,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,QAAQ,KAAK,eAAe,CAAC;AAChE,MAAM,MAAM,kBAAkB,CAC5B,YAAY,EACZ,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,EACtD,eAAe,GAAG,MAAM,IACtB,CAAC,cAAc,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE,QAAQ,KAAK,YAAY,CAAC;AAC1E,MAAM,MAAM,0BAA0B,CACpC,YAAY,EACZ,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IACpD,CACF,WAAW,EAAE,YAAY,EACzB,OAAO,CAAC,EAAE,QAAQ,KACf,QAAQ,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;AACtC,MAAM,MAAM,cAAc,CACxB,YAAY,EACZ,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IACpD,CACF,CAAC,EAAE,QAAQ,CAAC,YAAY,EAAE,QAAQ,CAAC,EACnC,OAAO,CAAC,EAAE,QAAQ,KACf,QAAQ,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;AACtC,MAAM,MAAM,eAAe,CACzB,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IACpD,CAAC,OAAO,EAAE,QAAQ,KAAK;IACzB,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AACF,MAAM,MAAM,QAAQ,CAClB,YAAY,EACZ,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IACpD;IACF,WAAW,EAAE,YAAY,CAAC;IAC1B,OAAO,CAAC,EAAE,QAAQ,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB,CAAC;AACF,MAAM,MAAM,QAAQ,CAClB,YAAY,EACZ,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IACpD,MAAM,QAAQ,CAAC,YAAY,EAAE,QAAQ,CAAC,EAAE,CAAC;AAC7C,KAAK,UAAU,GAAG;IAEhB,wBAAwB,CAAC,EAAE,OAAO,CAAC;CACpC,CAAC;AACF,MAAM,WAAW,QAAQ,CACvB,YAAY,EACZ,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC;IAEtD,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,EAAE,OAAO,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,OAAO,CAAC,EAAE,eAAe,EAAE,CAAC;IAC5B,SAAS,CAAC,EAAE,GAAG,GAAG,OAAO,GAAG,UAAU,CAAC;IACvC,SAAS,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,QAAQ,KAAK,QAAQ,CAAC,YAAY,EAAE,QAAQ,CAAC,EAAE,CAAC;IAC9E,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,UAAU,CAAC,EACP,KAAK,GACL,KAAK,GACL,MAAM,GACN,KAAK,GACL,YAAY,GACZ,UAAU,GACV,WAAW,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,YAAY,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,YAAY,EAAE,QAAQ,CAAC,CAAC;IAC5E,aAAa,CAAC,EAAE,GAAG,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IAC5C,kBAAkB,CAAC,EAAE,QAAQ,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IACtD,gBAAgB,CAAC,EAAE,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IAClD,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,OAAO,EAAE,eAAe,GAAG,QAAQ,GAAG,UAAU,GAAG,gBAAgB,CAAC;IACpE,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,cAAc,CAAC,EAAE,cAAc,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IACxD,iBAAiB,CAAC,EAAE,iBAAiB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IAC9D,OAAO,CAAC,EAAE,OAAO,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IAC1C,aAAa,CAAC,EAAE,aAAa,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IACtD,OAAO,CAAC,EAAE,OAAO,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IAC1C,SAAS,CAAC,EAAE,SAAS,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IAC9C,cAAc,CAAC,EAAE,cAAc,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IAExD,YAAY,CAAC,EAAE,YAAY,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IACpD,aAAa,CAAC,EAAE,aAAa,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IACtD,oBAAoB,CAAC,EAAE,oBAAoB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IACpE,kBAAkB,CAAC,EAAE,kBAAkB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IAChE,0BAA0B,EAAE,0BAA0B,CACpD,YAAY,EACZ,QAAQ,CACT,CAAC;IACF,MAAM,CAAC,EAAE,cAAc,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IAChD,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAE,CAAC;IAC1E,QAAQ,CAAC,EAAE,QAAQ,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;CAC7C"}
1
+ {"version":3,"file":"exercise.d.ts","sourceRoot":"","sources":["../../src/exercises/exercise.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- export * from "./equationSimpleSquare.js";
2
1
  export * from "./fractionEquation.js";
3
2
  export * from "./multiplicationEquation.js";
4
3
  export * from "./firstDegreeEquation.js";
@@ -13,4 +12,5 @@ export * from "./proportionEquation.js";
13
12
  export * from "./solveByFactorizingWithIdRmq3.js";
14
13
  export * from "./equationFromFrenchDescription.js";
15
14
  export * from "./firstDegree/index.js";
15
+ export * from "./square/index.js";
16
16
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/calculLitteral/equation/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0BAA0B,CAAC;AACzC,cAAc,mCAAmC,CAAC;AAClD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,iCAAiC,CAAC;AAChD,cAAc,oCAAoC,CAAC;AACnD,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,mCAAmC,CAAC;AAClD,cAAc,oCAAoC,CAAC;AACnD,cAAc,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/calculLitteral/equation/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0BAA0B,CAAC;AACzC,cAAc,mCAAmC,CAAC;AAClD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,iCAAiC,CAAC;AAChD,cAAc,oCAAoC,CAAC;AACnD,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,mCAAmC,CAAC;AAClD,cAAc,oCAAoC,CAAC;AACnD,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC"}
@@ -1,4 +1,3 @@
1
- export * from "./equationSimpleSquare.js";
2
1
  export * from "./fractionEquation.js";
3
2
  export * from "./multiplicationEquation.js";
4
3
  export * from "./firstDegreeEquation.js";
@@ -13,3 +12,4 @@ export * from "./proportionEquation.js";
13
12
  export * from "./solveByFactorizingWithIdRmq3.js";
14
13
  export * from "./equationFromFrenchDescription.js";
15
14
  export * from "./firstDegree/index.js";
15
+ export * from "./square/index.js";
@@ -0,0 +1,10 @@
1
+ import { Exercise } from "../../../../../exercises/exercise.js";
2
+ type Identifiers = {
3
+ randNbr: number;
4
+ };
5
+ type Options = {
6
+ solutionType: string[];
7
+ };
8
+ export declare const equationSimpleSquare: Exercise<Identifiers, Options>;
9
+ export {};
10
+ //# sourceMappingURL=equationSimpleSquare.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"equationSimpleSquare.d.ts","sourceRoot":"","sources":["../../../../../../src/exercises/math/calculLitteral/equation/square/equationSimpleSquare.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAmBT,MAAM,6BAA6B,CAAC;AAwBrC,KAAK,WAAW,GAAG;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAgLF,KAAK,OAAO,GAAG;IACb,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB,CAAC;AAqBF,eAAO,MAAM,oBAAoB,EAAE,QAAQ,CAAC,WAAW,EAAE,OAAO,CAgB/D,CAAC"}
@@ -0,0 +1,183 @@
1
+ import { GeneratorOptionTarget, GeneratorOptionType, addValidProp, propWhile, shuffleProps, tryToAddWrongProp, } from "../../../../../exercises/exercise.js";
2
+ import { getDistinctQuestions } from "../../../../../exercises/utils/getDistinctQuestions.js";
3
+ import { Rational } from "../../../../../math/numbers/rationals/rational.js";
4
+ import { SquareRoot } from "../../../../../math/numbers/reals/real.js";
5
+ import { randint } from "../../../../../math/utils/random/randint.js";
6
+ import { EquationSolutionNode } from "../../../../../tree/nodes/equations/equationSolutionNode.js";
7
+ import { OppositeNode } from "../../../../../tree/nodes/functions/oppositeNode.js";
8
+ import { NumberNode } from "../../../../../tree/nodes/numbers/numberNode.js";
9
+ import { DiscreteSetNode } from "../../../../../tree/nodes/sets/discreteSetNode.js";
10
+ import { coinFlip } from "../../../../../utils/alea/coinFlip.js";
11
+ import { isInt } from "../../../../../utils/isInt.js";
12
+ import { random } from "../../../../../utils/alea/random.js";
13
+ import { discreteSetParser } from "../../../../../tree/parsers/discreteSetParser.js";
14
+ import { handleVEAError } from "../../../../../utils/errors/handleVEAError.js";
15
+ import { doWhile } from "../../../../../utils/doWhile.js";
16
+ const squares = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12].map((el) => el ** 2);
17
+ const higherFactor = (n) => {
18
+ for (let i = Math.floor(Math.sqrt(n)); i > 0; i--)
19
+ if (n % i ** 2 === 0)
20
+ return i;
21
+ return 1;
22
+ };
23
+ const getInstruction = (identifiers) => {
24
+ const { randNbr } = identifiers;
25
+ return `Résoudre l'équation :
26
+
27
+ $$
28
+ x^2 = ${randNbr}
29
+ $$`;
30
+ };
31
+ const getHint = () => {
32
+ return `L'équation $x^2 = k$ :
33
+
34
+ - n'admet pas de solution si $k<0$ ;
35
+ - admet une solution si $k=0$, qui est $0$ ;
36
+ - admet deux solutions si $k>0$, qui sont $-\\sqrt{k}$ et $\\sqrt{k}$.
37
+ `;
38
+ };
39
+ const getAnswer = (identifiers) => {
40
+ const { randNbr } = identifiers;
41
+ let solutionsSet;
42
+ if (randNbr < 0) {
43
+ solutionsSet = new DiscreteSetNode([]);
44
+ }
45
+ else if (randNbr === 0) {
46
+ solutionsSet = new DiscreteSetNode([new NumberNode(0)]);
47
+ }
48
+ else {
49
+ const tree = new SquareRoot(randNbr).simplify().toTree();
50
+ solutionsSet = new DiscreteSetNode([new OppositeNode(tree), tree]);
51
+ }
52
+ const answer = new EquationSolutionNode(solutionsSet).toTex();
53
+ return answer;
54
+ };
55
+ const getCorrection = (identifiers) => {
56
+ const { randNbr } = identifiers;
57
+ const answer = getAnswer(identifiers);
58
+ return `
59
+ ${randNbr < 0
60
+ ? `L'équation $x^2 = ${randNbr}$ n'admet pas de solution, car $${randNbr}$ est négatif. Ainsi, $${answer}$.`
61
+ : randNbr === 0
62
+ ? `L'équation $x^2 = 0$ admet une unique solution : $0$. En effet, $0$ est le seul nombre qui au carré est égal à $0$. Ainsi, $${answer}$.`
63
+ : `Puisque $${randNbr}>0$, l'équation $x^2 = ${randNbr}$ admet deux solutions : $-\\sqrt{${randNbr}}$ et $\\sqrt{${randNbr}}$.
64
+
65
+ ${new SquareRoot(randNbr).isSimplifiable()
66
+ ? `Or, $\\sqrt{${randNbr}}=${new SquareRoot(randNbr)
67
+ .simplify()
68
+ .toTree()
69
+ .toTex()}$.`
70
+ : ""}
71
+
72
+ Ainsi, $${answer}$.
73
+ `}
74
+ `;
75
+ };
76
+ const getEquationSimpleSquare = (opts) => {
77
+ let randNbr;
78
+ const type = random(opts?.solutionType ?? ["Entiers", "Racines carrées", "Ensemble vide"]);
79
+ if (type === "Ensemble vide") {
80
+ randNbr = randint(-20, 0);
81
+ }
82
+ else if (type === "Racines carrées") {
83
+ randNbr = doWhile(() => randint(2, 100), (x) => Math.sqrt(x) === Math.floor(Math.sqrt(x)));
84
+ }
85
+ else {
86
+ randNbr = random(squares);
87
+ }
88
+ const identifiers = { randNbr };
89
+ return getQuestionFromIdentifiers(identifiers);
90
+ };
91
+ const getQuestionFromIdentifiers = (identifiers) => {
92
+ const question = {
93
+ instruction: getInstruction(identifiers),
94
+ answer: getAnswer(identifiers),
95
+ keys: ["S", "equal", "lbrace", "semicolon", "rbrace", "varnothing"],
96
+ answerFormat: "tex",
97
+ identifiers,
98
+ hint: getHint(identifiers),
99
+ correction: getCorrection(identifiers),
100
+ };
101
+ return question;
102
+ };
103
+ const getPropositions = (n, { answer, randNbr }) => {
104
+ const propositions = [];
105
+ addValidProp(propositions, answer);
106
+ const half = new Rational(randNbr, 2).simplify().toTree();
107
+ if (randNbr < 0) {
108
+ tryToAddWrongProp(propositions, `S=\\left\\{-\\sqrt{${-randNbr}}\\right\\}`);
109
+ tryToAddWrongProp(propositions, `S=\\left\\{\\sqrt{-${-randNbr}}\\right\\}`);
110
+ tryToAddWrongProp(propositions, new EquationSolutionNode(new DiscreteSetNode([half])).toTex());
111
+ }
112
+ else if (isInt(Math.sqrt(randNbr))) {
113
+ const sqrt = Math.sqrt(randNbr);
114
+ tryToAddWrongProp(propositions, `S=\\left\\{${sqrt}\\right\\}`);
115
+ tryToAddWrongProp(propositions, new EquationSolutionNode(new DiscreteSetNode([half])).toTex());
116
+ propWhile(propositions, n, () => {
117
+ const tempAns = sqrt + randint(-sqrt + 1, 7, [0]);
118
+ tryToAddWrongProp(propositions, coinFlip()
119
+ ? `S=\\left\\{-${tempAns};${tempAns}\\right\\}`
120
+ : `S=\\varnothing`);
121
+ });
122
+ }
123
+ else {
124
+ const sqrtTree = new SquareRoot(randNbr).simplify().toTree();
125
+ const factor = higherFactor(randNbr);
126
+ const radicand = randNbr / factor ** 2;
127
+ tryToAddWrongProp(propositions, new EquationSolutionNode(new DiscreteSetNode([sqrtTree])).toTex());
128
+ tryToAddWrongProp(propositions, new EquationSolutionNode(new DiscreteSetNode([half])).toTex());
129
+ propWhile(propositions, n, () => {
130
+ const tempFactor = factor + randint(-factor + 1, 7, [0]);
131
+ const tempRadicand = radicand + randint(-radicand + 1, 7, [0]);
132
+ tryToAddWrongProp(propositions, coinFlip()
133
+ ? `S=\\left\\{-${tempFactor}\\sqrt{${tempRadicand}};${tempFactor}\\sqrt{${tempRadicand}}\\right\\}`
134
+ : `S=\\varnothing`);
135
+ });
136
+ }
137
+ return shuffleProps(propositions, n);
138
+ };
139
+ const isAnswerValid = (ans, { answer }) => {
140
+ try {
141
+ const parsed = discreteSetParser(ans);
142
+ if (!parsed)
143
+ return false;
144
+ return "S=" + parsed.simplify().toTex() === answer;
145
+ }
146
+ catch (err) {
147
+ return handleVEAError(err);
148
+ }
149
+ };
150
+ const options = [
151
+ {
152
+ id: "solutionType",
153
+ label: "Type de solutions",
154
+ target: GeneratorOptionTarget.generation,
155
+ type: GeneratorOptionType.multiselect,
156
+ defaultValue: ["Entiers", "Racines carrées", "Ensemble vide"],
157
+ values: ["Entiers", "Racines carrées", "Ensemble vide"],
158
+ },
159
+ ];
160
+ const validateOptions = (opts) => {
161
+ if (opts?.solutionType?.length === 0)
162
+ return {
163
+ valid: false,
164
+ message: "Veuillez choisir au moins un type de solution.",
165
+ };
166
+ return { valid: true, message: "" };
167
+ };
168
+ export const equationSimpleSquare = {
169
+ id: "equationSimpleSquare",
170
+ connector: "=",
171
+ label: "Résoudre une équation du second degré du type $x^2 = a$",
172
+ isSingleStep: false,
173
+ generator: (nb, opts) => getDistinctQuestions(() => getEquationSimpleSquare(opts), nb),
174
+ qcmTimer: 60,
175
+ freeTimer: 60,
176
+ getPropositions,
177
+ isAnswerValid,
178
+ subject: "Mathématiques",
179
+ hasHintAndCorrection: true,
180
+ getQuestionFromIdentifiers,
181
+ options,
182
+ validateOptions,
183
+ };
@@ -0,0 +1,10 @@
1
+ import { Exercise } from "../../../../../exercises/exercise.js";
2
+ type Identifiers = {
3
+ a: number;
4
+ b: number;
5
+ c: number;
6
+ d: number;
7
+ };
8
+ export declare const equationSquareWithSteps: Exercise<Identifiers>;
9
+ export {};
10
+ //# sourceMappingURL=equationSquareWithSteps.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"equationSquareWithSteps.d.ts","sourceRoot":"","sources":["../../../../../../src/exercises/math/calculLitteral/equation/square/equationSquareWithSteps.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAeT,MAAM,6BAA6B,CAAC;AAgBrC,KAAK,WAAW,GAAG;IACjB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX,CAAC;AAmKF,eAAO,MAAM,uBAAuB,EAAE,QAAQ,CAAC,WAAW,CAkBzD,CAAC"}
@@ -0,0 +1,173 @@
1
+ import { addValidProp, shuffleProps, tryToAddWrongProp, propWhile, } from "../../../../../exercises/exercise.js";
2
+ import { getDistinctQuestions } from "../../../../../exercises/utils/getDistinctQuestions.js";
3
+ import { randint } from "../../../../../math/utils/random/randint.js";
4
+ import { equationResolutionTex } from "../../../../../tree/nodes/equations/equalNode.js";
5
+ import { sqrt } from "../../../../../tree/nodes/functions/sqrtNode.js";
6
+ import { add } from "../../../../../tree/nodes/operators/addNode.js";
7
+ import { frac } from "../../../../../tree/nodes/operators/fractionNode.js";
8
+ import { multiply } from "../../../../../tree/nodes/operators/multiplyNode.js";
9
+ import { substract } from "../../../../../tree/nodes/operators/substractNode.js";
10
+ import { discreteSetParser } from "../../../../../tree/parsers/discreteSetParser.js";
11
+ import { coinFlip } from "../../../../../utils/alea/coinFlip.js";
12
+ import { probaLawFlip } from "../../../../../utils/alea/probaLawFlip.js";
13
+ import { handleVEAError } from "../../../../../utils/errors/handleVEAError.js";
14
+ const getPropositions = (n, { answer, a, b, c, d }) => {
15
+ const propositions = [];
16
+ addValidProp(propositions, answer);
17
+ if (coinFlip())
18
+ tryToAddWrongProp(propositions, `S=\\varnothing`);
19
+ if (coinFlip())
20
+ tryToAddWrongProp(propositions, `S=\\left\\{0\\right\\}`);
21
+ const k = frac(substract(d, b), substract(a, c)).simplify();
22
+ if (coinFlip())
23
+ tryToAddWrongProp(propositions, sqrt(k).simplify().toTex());
24
+ propWhile(propositions, n, () => {
25
+ const rand = randint(-10, 10, [0]);
26
+ tryToAddWrongProp(propositions, `S=\\left\\{-${rand};${rand}\\right\\}`);
27
+ });
28
+ return shuffleProps(propositions, n);
29
+ };
30
+ const getAnswer = (identifiers) => {
31
+ const { a, b, c, d } = identifiers;
32
+ const k = frac(substract(d, b), substract(a, c));
33
+ const kEv = k.evaluate();
34
+ if (kEv < 0)
35
+ return "S=\\varnothing";
36
+ if (kEv === 0)
37
+ return "S=\\left\\{0\\right\\}";
38
+ else {
39
+ const squareRoot = sqrt(k).simplify().toTex();
40
+ return `S=\\left\\{-${squareRoot};${squareRoot}\\right\\}`;
41
+ }
42
+ };
43
+ const getInstruction = (identifiers) => {
44
+ const { a, b, c, d } = identifiers;
45
+ return `Résoudre l'équation suivante :
46
+
47
+ $$
48
+ ${add(multiply(a, "x^2"), b)
49
+ .simplify({ forbidFactorize: true })
50
+ .toTex()} = ${add(multiply(c, "x^2"), d)
51
+ .simplify({ forbidFactorize: true })
52
+ .toTex()}
53
+ $$`;
54
+ };
55
+ const getHint = () => {
56
+ return `Commence par regrouper les termes en $x^2$ à gauche, et les autres termes à droite. Puis, utilise la propriété suivante : l'équation $x^2 = k$ :
57
+
58
+ - n'admet pas de solution si $k<0$ ;
59
+ - admet une solution si $k=0$, qui est $0$ ;
60
+ - admet deux solutions si $k>0$, qui sont $-\\sqrt{k}$ et $\\sqrt{k}$.
61
+ `;
62
+ };
63
+ const getCorrection = (identifiers) => {
64
+ const { a, b, c, d } = identifiers;
65
+ const answer = getAnswer(identifiers);
66
+ const k = (d - b) / (a - c);
67
+ const resolutiontex = equationResolutionTex(a.toTree(), b.toTree(), c.toTree(), d.toTree());
68
+ let finalResolutionTex = "";
69
+ finalResolutionTex = resolutiontex.replaceAll("x", "x^2");
70
+ return `On commence par regrouper les termes en $x^2$ d'un côté, et les autres termes de l'autre :
71
+
72
+ $$
73
+ ${finalResolutionTex}
74
+ $$
75
+
76
+ ${k < 0
77
+ ? `L'équation $x^2 = ${k}$ n'admet pas de solution, car $${k}$ est négatif. Ainsi:
78
+
79
+ $$
80
+ ${answer}
81
+ $$`
82
+ : k === 0
83
+ ? `L'équation $x^2 = 0$ admet une unique solution : $0$. En effet, $0$ est le seul nombre qui au carré est égal à $0$. Ainsi :
84
+
85
+ $$
86
+ ${answer}
87
+ $$`
88
+ : `Puisque $${k}>0$, l'équation $x^2 = ${k}$ admet deux solutions : $-\\sqrt{${k}}$ et $\\sqrt{${k}}$.
89
+
90
+ Ainsi :
91
+
92
+ $$
93
+ ${answer}
94
+ $$
95
+ `}`;
96
+ };
97
+ const getKeys = () => {
98
+ return ["S", "equal", "lbrace", "semicolon", "rbrace", "varnothing"];
99
+ };
100
+ const isAnswerValid = (ans, { answer }) => {
101
+ try {
102
+ const parsed = discreteSetParser(ans);
103
+ if (!parsed)
104
+ return false;
105
+ console.log(parsed.simplify().toTex());
106
+ return "S=" + parsed.simplify().toTex() === answer;
107
+ }
108
+ catch (err) {
109
+ return handleVEAError(err);
110
+ }
111
+ };
112
+ const getEquationSquareWithStepsQuestion = () => {
113
+ const a = randint(-10, 10, [0]);
114
+ const c = randint(-10, 10, [a]);
115
+ let b = 0;
116
+ let d = 0;
117
+ const type = probaLawFlip([
118
+ [0, 0.2],
119
+ [1, 0.2],
120
+ [2, 0.6],
121
+ ]);
122
+ //final = d-b / a-c
123
+ //on veut k entier : d-b = k(a-c)
124
+ if (type === 0) {
125
+ //pas de sol
126
+ const k = randint(-5, 0);
127
+ b = randint(-10, 10);
128
+ d = k * (a - c) + b;
129
+ }
130
+ else if (type === 1) {
131
+ //une sol
132
+ b = randint(-10, 10);
133
+ d = b;
134
+ }
135
+ else if (type === 2) {
136
+ //deux sols
137
+ const isPerfectSquare = coinFlip();
138
+ const k = isPerfectSquare ? randint(1, 10) ** 2 : randint(1, 10);
139
+ b = randint(-10, 10);
140
+ d = k * (a - c) + b;
141
+ }
142
+ const identifiers = { a, b, c, d };
143
+ return getQuestionFromIdentifiers(identifiers);
144
+ };
145
+ const getQuestionFromIdentifiers = (identifiers) => {
146
+ return {
147
+ answer: getAnswer(identifiers),
148
+ instruction: getInstruction(identifiers),
149
+ keys: getKeys(identifiers),
150
+ answerFormat: "tex",
151
+ identifiers,
152
+ hint: getHint(identifiers),
153
+ correction: getCorrection(identifiers),
154
+ };
155
+ };
156
+ export const equationSquareWithSteps = {
157
+ id: "equationSquareWithSteps",
158
+ connector: "\\iff",
159
+ label: "Résoudre une équation du type $ax^2 + b = cx^2 + d$",
160
+ isSingleStep: true,
161
+ generator: (nb, opts) => getDistinctQuestions(() => getEquationSquareWithStepsQuestion(opts), nb),
162
+ qcmTimer: 60,
163
+ freeTimer: 60,
164
+ getPropositions,
165
+ isAnswerValid,
166
+ subject: "Mathématiques",
167
+ getInstruction,
168
+ getHint,
169
+ getCorrection,
170
+ getAnswer,
171
+ getQuestionFromIdentifiers,
172
+ hasHintAndCorrection: true,
173
+ };
@@ -0,0 +1,3 @@
1
+ export * from "./equationSimpleSquare.js";
2
+ export * from "./equationSquareWithSteps.js";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/exercises/math/calculLitteral/equation/square/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,8BAA8B,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from "./equationSimpleSquare.js";
2
+ export * from "./equationSquareWithSteps.js";
@@ -1 +1 @@
1
- {"version":3,"file":"squareRootCalculation.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/functions/sqrt/squareRootCalculation.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAeT,MAAM,6BAA6B,CAAC;AAIrC,OAAO,EACL,eAAe,EAEhB,MAAM,qCAAqC,CAAC;AAS7C,KAAK,WAAW,GAAG;IACjB,CAAC,EAAE,eAAe,CAAC;CACpB,CAAC;AAkGF,eAAO,MAAM,qBAAqB,EAAE,QAAQ,CAAC,WAAW,CAmBvD,CAAC"}
1
+ {"version":3,"file":"squareRootCalculation.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/functions/sqrt/squareRootCalculation.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAeT,MAAM,6BAA6B,CAAC;AAIrC,OAAO,EACL,eAAe,EAEhB,MAAM,qCAAqC,CAAC;AAS7C,KAAK,WAAW,GAAG;IACjB,CAAC,EAAE,eAAe,CAAC;CACpB,CAAC;AAoGF,eAAO,MAAM,qBAAqB,EAAE,QAAQ,CAAC,WAAW,CAmBvD,CAAC"}
@@ -35,9 +35,11 @@ const getAnswer = (identifiers) => {
35
35
  const getInstruction = (identifiers) => {
36
36
  const { x } = identifiers;
37
37
  const sqrtExpression = sqrt(reifyAlgebraic(x));
38
- return `Donner le nombre entier correspondant :
38
+ return `Calculer :
39
39
 
40
- $${sqrtExpression.toTex()}$`;
40
+ $$
41
+ ${sqrtExpression.toTex()}
42
+ $$`;
41
43
  };
42
44
  const getHint = (identifiers) => {
43
45
  const { x } = identifiers;
@@ -0,0 +1,15 @@
1
+ import { Exercise } from "../../../../exercises/exercise.js";
2
+ import { PointIdentifiers } from "../../../../math/geometry/point.js";
3
+ type Identifiers = {
4
+ pointsDict: Record<string, PointIdentifiers>;
5
+ nameCenterPoint: string;
6
+ nameSrcPoint: string;
7
+ nameDstPoint: string;
8
+ };
9
+ type Options = {
10
+ isPositiveFactorOnly: boolean;
11
+ factorTypes: string[];
12
+ };
13
+ export declare const homothetyFactorFromPoints: Exercise<Identifiers, Options>;
14
+ export {};
15
+ //# sourceMappingURL=homothetyFactorFromPoints.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"homothetyFactorFromPoints.d.ts","sourceRoot":"","sources":["../../../../../src/exercises/math/geometry/euclidian/homothetyFactorFromPoints.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAmBT,MAAM,6BAA6B,CAAC;AAKrC,OAAO,EAGL,gBAAgB,EACjB,MAAM,8BAA8B,CAAC;AA8DtC,KAAK,WAAW,GAAG;IACjB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAC7C,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AA0SF,KAAK,OAAO,GAAG;IACb,oBAAoB,EAAE,OAAO,CAAC;IAC9B,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB,CAAC;AAyBF,eAAO,MAAM,yBAAyB,EAAE,QAAQ,CAAC,WAAW,EAAE,OAAO,CAiBpE,CAAC"}