AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Taschenrechner Speicher Problem

Ein Thema von Penelopee · begonnen am 15. Jan 2006 · letzter Beitrag vom 29. Jan 2006
Antwort Antwort
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#1

Re: Taschenrechner Speicher Problem

  Alt 29. Jan 2006, 17:06
Ein Stack bzw. Stapel bzw. Kellerspeicher ist ein Zwischenspeicher für mehrere Items, bei dem du das zuletzt hinzugefügte Item zuerst wieder wegnimmst. Vielleicht läuft dir in diesem Zusammanhang noch das Akronym LIFO über den Weg - Last In First Out.

Benutzen kannst du den von mir skizzierten (extrem primitiven) Stack so:

Delphi-Quellcode:
// (2 * 9 + 3) * 2
Push(2);
Push(Pop * 9);
Push(Pop + 3);
Push(Pop * 2);
ShowMessage(Format('%.2f', [Pop]));
Double ist einer der Fließkomma-Typen aus Delphi, so wie Integer ein Ganzzahl-Typ ist. Da solltest du mal in der Online Hilfe unter Typen nachlesen.

Infix ist einfach die dir geläufige Notation (1 + 1) für eine mathematische Operation, so benannt, weil der Operator zwischen den Operanden steht.

Das bringt uns zu deiner Frage, was denn die einfachste Lösung für dein Klammernproblem wäre. Das dürfte die Lösung sein, bei der die Klammern einfach vermieden werden. Die zugehörige Notation heißt postfix und ist von den HP Taschenrechnern her in der Schule auch als UPN (Umgekehrte Polnische Notation) bekannt. Die obige Rechenaufgabe würde da so notiert:

Code:
 2 9 * 3 + 2 * =
Wie du siehst - keine Klammern, weil unnötig.

Freundliche Grüße vom marabu
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:44 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz