Đã Đóng

Taschenrechner Erstellen

Realisieren Sie die Eingabe einer Fließkommazahl über das Tastenfeld eines Taschenrechners.

Lernziele:

Sie können die Funktionalität einer Anwendungslogik analysieren

Sie können die Anwendungslogik unabhängig von einer Oberfläche umsetzen

Sie sind in der Lage, die Funktionstauglichkeit der Anwendungslogik mit Testfällen nachzuweisen

Sie haben die Fähigkeit, eine Oberfläche nach einfachen Kriterien der Nutzbarkeit zu gestalten

Sie können die Oberfläche mit der Funktionslogik verknüpfen

Zur Aufgabe

Wenn Sie bei einem realen Taschenrechner eine Zahl eingeben, so geschieht das Zeichen für Zeichen über das Tastenfeld. Wir gehen bei dieser Aufgabe von folgendem Verhalten bei der Eingabe einer Zahl aus:

Es ist die Eingabe von Kommazahlen möglich; die Eingabe einer Zahl in wissenschaftlicher Notation (z.B. 1,234E4) ist nicht zulässig

Die soweit eingegebene Zahl wird im Display des Taschenrechners angezeigt; es erfolgt während der Eingabe keine Umwandlung in die wissenschaftliche Notation, so wird z.B. die Zahl 123456 nicht als 1,23456E+5 dargestellt, ebenso werden Tausenderstellen nicht durch Punkte abgesetzt, z.B. wird 1024 nicht als 1.024 dargestellt.

Die Anzahl der Zeichen zur Eingabe und Darstellung ist begrenzt; sie ist vom Grundsatz von der Anwendungsentwickler:in frei definierbar

Die Eingabe einer Zahl erfolgt vorzeichenlos

Es gibt eine "Entfernen"-Taste (eine Art undo), die das letzte Zeichen rechts in der Zahlendarstellung entfernt; wird das letzte Zeichen entfernt, bleibt eine 0 übrig (man kann das Display in dem Sinne also nicht "leer" machen)

Es gibt eine Löschtaste (ein clear),

Die Eingabelogik

Die zeichenweise Eingabe einer Kommazahl folgt dem beiliegenden Interface [login to view URL]:

interface FloatInput {

boolean put(char c); // input char by char, true if char is accepted

float getFloat(); // get float value of input for computations

void undo(); // undo last input if there are chars left

String toString(); // get string representation of input

}

Realisieren Sie die Klasse FloatNumber in der Datei [login to view URL], die das Interface FloatInput implementiert.

Die Klasse darf neben den Interface-Methoden keine weiteren Methoden haben. Die Klasse muss erfolgreich alle mitgelieferten Testfälle bestehen. Bitte legen Sie die beiliegende Testdatei [login to view URL] im gleichen Ordner ab wie Ihre Realisierung [login to view URL] und das Interface [login to view URL], so dass die Tests mit der JShell ausführbar sind:

jshell -R-ea [login to view URL]

Hinweis: Eventuelle package-Anweisungen in Ihren Java-Quellcodedateien werden zwar als Fehler von der JShell angemerkt, die JShell arbeitet dennoch die folgenden Codezeilen in den Dateien ab. Lassen Sie sich davon nicht irritieren. Wenn Sie einen AssertionError ohne die Angabe des fehlgeschlagenen Tests haben, dann handelt es sich um ein assert in der Testdatei ohne Nachrichtenanteil, d.h. ohne die Ergänzung wie z.B. : "Test 3";.

Kĩ năng: Tiếng Đức, HTML5, Java, Javascript, Dịch thuật

Xem nhiều hơn: api interface using c#, api interface using c, Build an analyser interface using C#, user interface in C, 2. Architecture diagram. 3. User Interface Wireframe or the frontend design. 4. data flow design / ER diagrams if any, c# process.start return value, c++ assignment operator return value, c# datatable update column value for all rows, interface in c#, system perfect joomla 3 user interface and jquery includer, graphical device interface in c#, opencv 3.0 face detection c++, interface in c++, interface in c++ geeksforgeeks, c++ multimap sort by value, interface in c# with real time example, interface in c# with example code project, interface in c# interview questions, digital weighing scale with rs232 interface in c#, how to make a command line interface in c

Về Bên Thuê:
( 0 nhận xét ) Germany

ID dự án: #19399573

4 freelancer đang chào giá trung bình €20 cho công việc này

benni25

Hello, Benni Translation Services is providing translation service since 13 years. Our translation is done manually and professionally we guarantee unique output Error Free. Please specify your deadline, content, and Thêm

€8 EUR trong 1 ngày
(823 Nhận xét)
7.8
RachitGroup

Hallo, Ich habe die Auftragsdetails sorgfältig durchgelesen und bin mir absolut sicher, dass ich dieses Projekt sehr gut machen kann. Wir bieten an - Kostenloses Add-On bei jedem Projekt + 6 Monate Support nach Abs Thêm

€33 EUR trong 10 ngày
(0 Nhận xét)
0.0
GoodByteG

Hi! Die Implementierung wird kein Problem sein, ähnliche Aufgaben werden bereits im Bachelor Studium gestellt. Falls Fragen oder Anmerkungen aufkommen kann ich diese gerne auf Deutsch oder Englisch beantworten. The Thêm

€24 EUR trong 2 ngày
(0 Nhận xét)
0.0
LukasDroste

Ich bin studierter Medieninformatiker und möchte Ihnen dabei helfen, Ihr Projekt kostengünstig und schnell umzusetzen. Mit freundlichen Grüßen, Lukas Droste

€14 EUR trong 2 ngày
(0 Nhận xét)
0.0