Mai 3, 2021

Bruchailromantik

Bruchrechnen in JavaScript

Weiterlesen
April 14, 2021

Mal schnell ein paar Zahlen

Mathehausaufgaben aus dem Zufallsgenerator

Weiterlesen
März 12, 2021

Alle Teiler einer Zahl

Mathe in JavaScript

Weiterlesen
Februar 19, 2021

Fun with Excel - Heute: Das liebe Komma

Excel Formeltrenner unterschied C# zur Exceloberfläche

Weiterlesen
Cover Image

Bruchailromantik

Bruchrechnen in JavaScript

Mai 3, 2021 - Lesezeit: 41 Minuten

So, hier jetzt also ein JavaScript für Bruchrechenaufgaben. Das ist diesmal etwas größer, um der Anzeige von Bruchzahlen auch gerecht zu werden und nicht irgendeine komische Schreibweise verwenden zu müssen.

//(
var myCalcer = (NumberToUsetargetElement=> {
  // the brain -> calcing stuff
  function Fraction(zahl) {
    let numerator = 0;
    let denominator = 0;
    for (i = 1truei *= 10) {
      if ((zahl * i) == Math.floor(zahl * i)) {
        numerator = (zahl * i);
        denominator = i;
        break;
      }
    }
    return ([numeratordenominator]);
  }

  function calc_ggt(ab) {
    let h = (a > b) ? b : a;
    for (i = hi > 1i--) {
      if ((a % i) == 0 && (b % i) == 0) {
        return i;
      }
    }
    return 1;
  }
  // the eye -> formatting output
  function writeFraction(zaehlernenner) {
    let outSpan = document.createElement("SPAN");
    outSpan.setAttribute('class''frac');
    outSpan.setAttribute('style''padding-right:5px;');
    outSpan.innerHTML = `<sup>${zaehler}</sup><span>/</span><sub>${nenner}</sub>`;
    targetElement.appendChild(outSpan);
  }

  function writeOperatorOrLine(opToWrite) {
    let outSpan = document.createElement("SPAN");
    outSpan.setAttribute('style''vertical-align:14px;padding-right:5px;');
    outSpan.innerText = opToWrite;
    targetElement.appendChild(outSpan);
  }

  function addcss() {
    let styleHelper = document.createElement("style");
    styleHelper.id = 'styleHelper';
    styleHelper.innerHTML = `span.frac {
          display: inline-block;
          text-align: center;
        }

        span.frac>sup {
          display: block;
          border-bottom: 1px solid;
          font: inherit;
        }

        span.frac>span {
          display: none;
        }

        span.frac>sub {
          display: block;
          font: inherit;
        }`;
    targetElement.appendChild(styleHelper);
  }
  // the hand -> doing things
  let bruch = Fraction(NumberToUse);
  let ggt = calc_ggt(bruch[0], bruch[1]);
  addcss();
  writeOperatorOrLine(NumberToUse);
  writeOperatorOrLine("=");
  writeFraction(bruch[0], bruch[1]);
  writeOperatorOrLine(":");
  writeOperatorOrLine(ggt);
  writeOperatorOrLine("=");
  writeFraction(bruch[0] / ggtbruch[1] / ggt);
};
//)(0.45);
var inputElement = document.createElement("INPUT");
var buttonElement = document.createElement("BUTTON");
var targetOutElement = document.createElement("DIV");
buttonElement.innerHTML = "Calc";
buttonElement.onclick = () => {
  /*
  for(var mainCounter = 1; mainCounter < 100; mainCounter++ ) {
    myCalcer(
      mainCounter /
      Math.pow(10, ("" + mainCounter).length),
      targetElement
    );
    targetElement.appendChild(document.createElement("BR"));
    targetElement.appendChild(document.createElement("BR"));
  }
  */
  targetOutElement.innerHTML = "";
  let numberToUse = parseFloat(inputElement.value.replace(',''.'));
  myCalcer(numberToUsetargetOutElement);
};
targetOutElement.style.backgroundColor = "white";
targetOutElement.style.border = '1px solid black';
targetOutElement.style.borderRadius = '4px';
targetOutElement.style.padding = '10px';
targetOutElement.style.margin = 'auto';
targetOutElement.style.width = '200px';
targetOutElement.style.textAlign = 'center';
document.body.appendChild(inputElement);
document.body.appendChild(buttonElement);
document.body.appendChild(targetOutElement);

Hierbei teilt sich die Funktion myCalcer in 3 Teile. Der erste Teil sind die Berechnungsfunktionen. Der zweite Teil regelt die Ausgabe und der dritte Teil macht die Rechnung. Am Ende kommt noch ein bisschen Styling dazu, damit das auch was hermacht. Kann man direkt in der Konsole benutzen oder hier:

EOF


Cover Image

Mal schnell ein paar Zahlen

Mathehausaufgaben aus dem Zufallsgenerator

April 14, 2021 - Lesezeit: ~1 Minute

Und wieder hilft mir ein kleines Script in Übung zu bleiben.

for(let i =0; i<20; i++){
  var op     = parseInt((Math.random(i)*4).toString()); 
  var x        = parseInt((Math.random(i)*100).toString());
  var y        = parseInt((Math.random(i)*100).toString());
 
  if(op===0)    console.log(x + ' + '+y + ' = ' + (x+y));
  if(op===1)    console.log(x + ' - '+y + ' = ' + (x-y));
  if(op===2)    console.log(x + ' * '+y + ' = ' + (x*y));
  if(op===3)    console.log(x + ' / '+y + ' = ' + (x/y));
}

Aber man sollte natürlich nicht direkt das Ergebnis prüfen. Brüche kann der Gernerator auch nocht nicht. Den gibt es dann beim nächsten Mal.


Cover Image

Alle Teiler einer Zahl

Mathe in JavaScript

März 12, 2021 - Lesezeit: ~1 Minute

Mal schnell alle Teiler einer Zahl zu finden erfordert nicht unbedingt ein großes Programm. Statt dessen kann man das schnell in der Konsole erledigen.

The Power of JavaScript unleashed.

Hier eine einfache schnelle Lösung, CopyUndPaste fertig:


var totest = 120; // hier einfach die Zahl einsetzen.
// ermittelt alle Teiler und gibt sie auf der Konsole aus.
for(let i = 0;i < (totest+1); i++) {
  if(totest % i === 0) {
    console.log(i);
  }
}


Hier noch ein passender Generator für irgendwelche Zahlen.


for(let j = 0;j < 100; j++) {
let teilerCount=0;
for(let i = 0;i < (j+1); i++) {
if(j % i === 0) {
teilerCount++;
}
}
if(teilerCount === 6){
console.log(j); //,teilerCount);
}

}

Cover Image

Fun with Excel - Heute: Das liebe Komma

Excel Formeltrenner unterschied C# zur Exceloberfläche

Februar 19, 2021 - Lesezeit: ~1 Minute

Bei Excel wird bei den Trennoperatoren ein Unterschied zwischen der Oberfläche und Quellcode in Open.Xml gemacht.

QuellCode:

   SUM(A1 , A2)

Oberfläche:

   SUM(A1 ; A2)

In der Öberfläche wird ein Strichpunkt (;) erwartet. Im Quellcode ein Komma (,).