AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Programm für Octalzahlen in Dezimalzahlen

Ein Thema von SirMaurice · begonnen am 7. Dez 2018 · letzter Beitrag vom 11. Dez 2018
Antwort Antwort
Seite 2 von 2     12
TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
2.049 Beiträge
 
Delphi 10.3 Rio
 
#11

AW: Programm für Octalzahlen in Dezimalzahlen

  Alt 10. Dez 2018, 21:27
Zitat von gammatester:
Hier noch Tip, der wichtiger ist als schöne Formatierung (die nicht vor Logik-Fehlen schützt)
Ja und nein: natürlich schützt schöne Formatierung nicht vor Logikfehlern, sie erleichtert aber oft das Aufspüren solcher Fehler, da sich Dinge dann einfach leichter lesen lassen.

Und zum Case, falls deine kaskadierenden ifs so etwas umsetzen sollten noch ein kurzes Beispiel:

Delphi-Quellcode:
var
  c : Char;
begin
  case c of
    'a': Aufruf1;
    'b': Aufruf2;
    'c'..'e': Aufruf3;
    else
      Aufruf4;
  end;
end;
Dabei ist Aufruf1 bis Aufruf4 jeweils eine Prozedur/Methode oder Funktion die du aufufen möchtest.
'c'..'e' bedeuitet, dass dieser Fall für c, d und e gilt und der else Zewig wird für alle Fälle abgedeckt
in denen c nicht im bereich a-e liegt.
  Mit Zitat antworten Zitat
DieDolly

Registriert seit: 22. Jun 2018
1.973 Beiträge
 
#12

AW: Programm für Octalzahlen in Dezimalzahlen

  Alt 10. Dez 2018, 21:41
noch ein Tipp von mir zu deinem Code: wenn du dir angewöhnst zur Einrückung immer 2 stat wie bei dir
bisher 1 Zeichen zu benutzen, dann ist es nicht nur Delphi/Pascal STandard, sondern erhöht auch die
Lesbarkeit ungemein.
Selber einrücken ist ja sowas von letztes Jahrtausend. Und selbst für Delphi 5 gab es schon den Code Formatter DelForEx. (Wobei ich mich gerade frage, wo man den ggf. noch herbekommt.)

Edit: Internet Archive ist einfach nur gut:

https://web.archive.org/web/20080913.../UK/Delforexp/

Der Download-Link auf der Seite funktioniert auch.
Von mir auch. BITTE setz das begin in eine neue Zeile. Da bluten meine Augen.
Delphi-Quellcode:
  for i:= Length(EOct.Text) downto 1 do
    begin
Das begin gehört nach Delphi-Styleguide in die nächste Zeile. Alles andere ist einfach nur hässlich und kommt aus der C-Gegend.
  Mit Zitat antworten Zitat
gammatester

Registriert seit: 6. Dez 2005
999 Beiträge
 
#13

AW: Programm für Octalzahlen in Dezimalzahlen

  Alt 10. Dez 2018, 22:01
Wenn ich nicht etwas übersehen habe, hat außer mir niemand einen inhaltlichen Beitrag geschrieben.

Leider gibt es hier im Forum immer wieder die störende Tendenz, nicht auf die eigentlichen Fragen und Probleme einzugehen, sondern auf Äußerlichkeiten zu fokussieren (Formatierung, Bezeichner, 'letzte Jahrtausend' usw).

Das bringt für die Problemlösung 0.42% oder so. Wichtig ist ein konsistenter und konstanter Stil, und nicht das, was irgendein Programm automatisch vorschlägt.

Ich weiß, das mein Beitrag jetzt auch das Problem hat, aber nicht zu antworten ist keine Lösung.

BITTE setz das begin in eine neue Zeile. Da bluten meine Augen.
Delphi-Quellcode:
  for i:= Length(EOct.Text) downto 1 do
    begin
Das begin gehört nach Delphi-Styleguide in die nächste Zeile. Alles andere ist einfach nur hässlich und kommt aus der C-Gegend.
Welcher Style-Guide? Nach https://edn.embarcadero.com/article/10280#8.2.4 ist Deine Formatierung inkorrekt.

Geändert von gammatester (10. Dez 2018 um 22:13 Uhr)
  Mit Zitat antworten Zitat
DieDolly

Registriert seit: 22. Jun 2018
1.973 Beiträge
 
#14

AW: Programm für Octalzahlen in Dezimalzahlen

  Alt 10. Dez 2018, 22:12
Ich kann nix für unnötige Leerzeichen. Mein Beitrag zielt darauf ab, dass begin laut Styleguide in die nächste Zeile gehört. Jetzt irgendwelche Fehler in irgendwelchen Leerzeichen zu suchen, nur damit mein Beitrag schlecht gemacht werden kann, gehört aber auch nicht hier her.
Ich könnte auch noch was zu Delphi 5 schreiben aber lassen wir das.

Geändert von DieDolly (10. Dez 2018 um 22:15 Uhr)
  Mit Zitat antworten Zitat
TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
2.049 Beiträge
 
Delphi 10.3 Rio
 
#15

AW: Programm für Octalzahlen in Dezimalzahlen

  Alt 11. Dez 2018, 19:12
Hallo,

natürlich trägt die Formattierung nicht wirklich was zur Lösung des Algorithmus im engeren Sinne bei,
da er aber eine Programmiersprache lernt, sollte er sich gleich von vorne herein eine gute Formatierung
angewöhnen, da es eben die Lesbarkeit und amit die "Analysierbarkeit" erhöht.

Ich denke diese Punkte sind inzwischen jedoch geklärt und wir sollten uns dem Algorithmus zuwenden.

Vielleicht mal einfach nochmal von vorne rekapitulieren wie Stellenwertsysteme funktionieren.
Dezimalzahlen sind ein Stellenwertsystem zur Basis 10, d.h. jede Stelle weiter links hat den 10-fachen
Wert der rechts davon befindlichen Stelle.

Und wie ist das nun mit Oktalzahlen?
Jede Stelle hat den 8-fachen Wert der rechts davon befindlichen.

Man könnte es mittels zwei Zählern umsetzen: einem für den bearbeiteten Index, der läuft von length
des Eingabestrings runter nach 1 (kann also mit einer downto for Schleife abgebildet werden) und einem
Wert-Zähler der nach jeder bearbeiteten Stelle mit 8 multipliziert wird.

Sovil mal als Hinweis von mir.

Grüße

TurboMagic
  Mit Zitat antworten Zitat
gammatester

Registriert seit: 6. Dez 2005
999 Beiträge
 
#16

AW: Programm für Octalzahlen in Dezimalzahlen

  Alt 11. Dez 2018, 19:36
Danke das Du meinen Lösungsvorschlag https://www.delphipraxis.net/1420425-post8.html noch mal in Worte gefaßt hast.
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#17

AW: Programm für Octalzahlen in Dezimalzahlen

  Alt 11. Dez 2018, 21:13
Du hättest auf #2 verweisen sollen.
Gut, ohne Hinweis auf das Horner-Schema vielleicht nicht sofort eingängig, aber da war doch alles klar.


Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 04:41 Uhr.
Powered by vBulletin® Copyright ©2000 - 2022, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf