Taschenrechner

Bild: © 422737 / Pixabay (modifiziert)

Einen besseren Taschenrechner programmieren

Im ersten Beitrag hatte ich gezeigt, wie man mit Hilfe der Postfix, bzw. Polnischen Notation einen einfachen Taschenrechner programmieren kann. Dieser hatte allerdings einige Schwächen, da er einige allgemein anerkannte Rechenregeln wie Punkt-vor-Strich nicht respektiert, mit negativen Zahlen nicht sauber zurecht kommt und auch noch andere Schwächen besitzt. In diesem zweiten Teil sollen diese Mängel ausgebügelt werden und der Taschenrechner deutlich ausgebaut werden.

Die Beispiele zur Programmierung eines Taschenrechners auf dieser Seite sind in JavaScript programmiert. Eine PHP Version folgt.

weiterlesen…Einen besseren Taschenrechner programmieren

Taschenrechner

Bild: © 422737 / Pixabay (modifiziert)

Einen einfachen Taschenrechner programmieren

Für die Überarbeitung meines Würfel Tools @RollButler wollte ich von einem in JavaScript eher schlampig programmierten Tool weg zu einem leistungsfähigerem Code wechseln. Bereits bei der JavaScript Version war die Würfel Anwendung auch als Taschenrechner nutzbar, allerdings nur als Seiteneffekt eines verwendeten Befehls, den ich persönlich für diesen Zweck eher unschön empfinde. Also war der Rückgriff auf längst verdrängtes Wissen aus meinem Studium der Informatik von vor 25 Jahren erforderlich. Ein wenig Recherche im Internet beschleunigte meine grauen Zellen, doch alle angebotenen Lösungen griffen entweder auf das “eval” Kommando zurück, oder ignorierten Punkt-vor-Strichrechnungen. Dabei ist die Lösung doch vergleichsweise einfach.

Im ersten Abschnitt gehe ich auf die Variante mit der eval-Funktion ein, bevor ich danach die bessere Option mit dem Umweg über die Polnischer Notation vorstelle und diese im zweiten Teil noch einmal verbessere.

weiterlesen…Einen einfachen Taschenrechner programmieren

PHP Code

Bild: © Simplu / Pixabay (modifiziert)

Suchen und Ersetzen mit MySQL: REPLACE

In meiner Datenbank für das Content Management System sind auch die Untertitel für die einzelnen Bilder gespeichert. Um den gesetzlichen Anforderungen gerecht zu werden und alle Bilder mit Hinweis auf die Bildautoren korrekt zu kennzeichnen, musste ich einen unschönen Workaround verwenden. In der Konsequenz ist in einigen Datenbankfeldern nun HTML Code eingetragen. Bei einer deutlich dreistelligen Anzahl dieser Felder ist eine manuelle Pflege kaum noch möglich. Mühsam habe ich nun in den vergangenen Wochen die Inhalte dieser Felder halbautomatisch auf ein einheitliches … weiterlesen…

alte Tastatur

Bild: © jking / Pixabay (modifiziert)

Wie man Programmierer an ihrer Tastatur erkennt

Zeig mir deine Tastatur und ich sage Dir, was Du programmierst: C Programmierer: Ihre ‘*’ und ‘;’ Tasten sind abgenutzt. C++ Programmierer: Ihre ‘>’ und ‘<‘ Tasten sind abgenutzt. Lisp Programmierer: Ihre ‘(‘ und ‘)’ Tasten sind abgenutzt. OCaml Programmierer: Ihre ‘;’ Taste ist abgenutzt. ALGOL Programmierer: Ihre ‘:’ und ‘=’ Tasten sind abgenutzt. Forth Programmierer: Ihre ‘:’ und ‘;’ Tasten sind abgenutzt. x86 ASM Programmierer: Ihre ‘%’ Taste ist abgenutzt. Haskell Programmierer: Ihre ‘-‘ und ‘>’ Tasten sind abgenutzt. Ruby Programmierer: … weiterlesen…

Comparing Programming Languages with Women

Assembler – A female track star who holds all the world speed records. She is hard and bumpy, and so is not that pleasant to embrace. She can cook up any meal, but needs a complete and detailed recipe. She is not beautiful or educated, and speaks in monosyllables like “MOV, JUMP, INC”. She has a fierce and violent temper that make her the choice of last resort. FORTRAN – Your grey-haired grandmother. People make fun of her just because she is … weiterlesen…

C Song (Bohemian Rhapsody)

Gesungen zur Musik : Is this the real world? Is this just fantasy? Caught in a LAN-slide No ESC to reality. open(2) your files, Look after your while()s in C; Its just a cheap toy, but dearer than Symphony(tm) With it’s wheezy cough, noisy beep Address clash, little sleep Anything but Windows(tm), Nothing beats class lib’ries to me, To me. Mama, Just killed a RAM Got some static on its pins, Now I don’t see the dust bin, Mama, ‘Write’ had just … weiterlesen…

Write in C (Let it be)

Gesungen zu : When I find my code in tons of trouble, Friends and colleagues come to me, Speaking words of wisdom: “Write in C.” As the deadline fast approaches, And bugs are all that I can see, Somewhere, someone whispers “Write in C.” Write in C, write in C, Write in C, write in C. LISP is dead and buried, Write in C. I used to write a lot of FORTRAN, for science it worked flawlessly, Try using it for graphics! … weiterlesen…

How did the chicken cross the road

NT Chicken Will cross the road in June. No, August. September for sure. OS/2 Chicken It crossed the road in style years ago, but it was so quiet that nobody noticed. Win 95 Chicken You see different colored feathers while it crosses, but cook it and it still tastes like … chicken. Microsoft Chicken (TM) It’s already on both sides of the road. And it just bought the road. OOP Chicken It doesn’t need to cross the road, it just sends a … weiterlesen…

Datenschutz-Einstellung

Cookies und Inhalte Dritter
Wir verwenden Cookies und externe Inhalte, aber Sie haben die Wahl hinsichtlich deren Verwendung! Wenn Sie generell mit dem Setzen von Cookies nicht einverstanden sind, verlassen Sie nun unser Internetangebot. Weitere Informationen zu den Auswirkungen Ihrer Auswahl finden Sie unter Hilfe. Datenschutzerklärung | Impressum

Treffen Sie eine Auswahl um fortzufahren

Ihre Auswahl wurde gespeichert!

Weitere Informationen

Hilfe

Um fortfahren zu können, müssen Sie eine Auswahl treffen. Nachfolgend erhalten Sie eine Erläuterung der verschiedenen Optionen und ihrer Bedeutung.

  • Personalisierte Werbung und Inhalte Dritter:
    Personalisierte Werbung und Inhalte Dritter (Facebook, Twitter & Co.) wird angezeigt, alle Cookies (auch von Drittanbietern) werden gesetzt und das Tracking zugelassen Dies bietet die beste Nutzererfahrung, gibt jedoch viele Daten an Dritte weiter.
  • Allgemeine Werbung und keine Inhalte Dritter:
    Es wird nur allgemeine Werbung eingeblendet und Inhalte Dritter werden geblockt. Cookies werden nur bei technischer Notwendigkeit platziert und das Tracking begrenzt. Dies bietet einen höheren Datenschutz, jedoch eine spartanische Nutzererfahrung.

Sie können Ihre Einstellung jederzeit hier ändern: Datenschutzerklärung. Impressum

Zurück