AGB  ·  Datenschutz  ·  Impressum  







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

String ausgeben

Ein Thema von DelphiDan · begonnen am 29. Sep 2014 · letzter Beitrag vom 30. Sep 2014
Antwort Antwort
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.344 Beiträge
 
Delphi XE2 Professional
 
#1

AW: String ausgeben

  Alt 29. Sep 2014, 20:19
Aber wenn ich die Variablen sehe, schreit das gerade zu nach einem Array oder Liste.
ich denke das ist der zweite Schritt den er machen soll
erst mal soll sein vorhandenes funktionieren - danach kann man optimieren (lernen)
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

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

AW: String ausgeben

  Alt 29. Sep 2014, 20:41
Gegenfrage: wird showmessage ausgeführt?

und sieh Dir mal case an.

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.378 Beiträge
 
Delphi 12 Athens
 
#3

AW: String ausgeben

  Alt 29. Sep 2014, 22:23
Und warum liegen alle Variablen global rum und sind nicht lokal in der Methode deklariert?

Den Sinn der d- und e-Variablen kann ich auch nicht erkennen.
Delphi-Quellcode:
    If zufalldeutsch=1 then
    begin
    editdeutsch.text:=deutsch1;
    editenglisch.text:=englisch1;
    end else
    If zufalldeutsch=2 then
Das mit den Arrays wurde schon gesagt
und für die Edits gibt es FindComponent. (was auch das vorgeschlagene CASE überflüssig machen würde)

Und die (fehlende) Codevormatierung ist eher als grausam zu bezeichnen.
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (29. Sep 2014 um 22:26 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Puke
Puke

Registriert seit: 7. Nov 2012
123 Beiträge
 
Delphi XE5 Architect
 
#4

AW: String ausgeben

  Alt 29. Sep 2014, 22:59
Ich glaub da war was:
ich bin noch ein "Anfänger" in Delphi
Ach, er ist noch Anfänger. Und warum reiten dann alle (bis auf BUG und p80286) auf ihm rum?

DelphiDan, versuch erstmal den ersten Teil mit einer oder-Verknüpfung zu minimieren (Du musst es noch nicht mit FindComponent machen):
Delphi-Quellcode:
if (deutsch1.text = '') or (deutsch2.text = '') or ... or (englisch11.text = '') or (englisch12.text = '') then
   ShowMessgae('...')
else
begin
  // Hier kommt der Teil ab dem "panel1.visible := false" rein
  panel1.visible := false;
  {...}
end;
Und dann kannst du weitermachen mit der case -Anweisung
Delphi-Quellcode:
case zufallszahl of
 1: begin
       // Hier kommt die Zuweisung dann rein
       editdeutsch.text:=d1;
       editenglisch.text:=e1;
    end;
 2: begin
       // Hier kommt die Zuweisung dann rein
    end;
 {...}
end;
Das wird übersichtlicher und einfacher für dich.

Beste Grüße
Puke
Gruß Puke
  Mit Zitat antworten Zitat
Benutzerbild von BUG
BUG

Registriert seit: 4. Dez 2003
Ort: Cottbus
2.094 Beiträge
 
#5

AW: String ausgeben

  Alt 30. Sep 2014, 03:08
Zitat von Puke:
Und warum reiten dann alle (...) auf ihm rum
Die Kommentare zeigen die nächsten Schritte auf, die DelphiDan mit dem Code gehen sollte.
  • bessere Einrückung
  • die Wiederholungen vermeiden (Array und Schleifen)
  • dann eventuell die globalen Variablen
case wäre zwar eine schönere Krücke, aber erst mit Schleifen bekommt man ein Großteil der Wiederholungen erschlagen.

Es ist halt wirklich "Anfängercode", aber das ist OK für einen Anfänger ... nur möchte man sich eben auch weiterentwickeln und die Kritik in der DP ist dafür aus meiner Erfahrung ein günstiges Mittel. Im Prinzip schreibt jeder mal "gruseligen" Code; die entscheidende Fähigkeit ist es zu erkennen, dass und warum er "gruselig" ist. Es hilft, wenn man es oft genug gesagt bekommt.

Reviewed (~kritisiert) wird der Code, nicht der Programmierer.
In dem Sinne: nicht abschrecken lassen von den Alt-Eingesessenen, wir wollen nur dein Bestes
  Mit Zitat antworten Zitat
Namenloser

Registriert seit: 7. Jun 2006
Ort: Karlsruhe
3.724 Beiträge
 
FreePascal / Lazarus
 
#6

AW: String ausgeben

  Alt 30. Sep 2014, 04:32
Es hat aber auch keinen Sinn, einen Anfänger, der mit einer konkreten Frage ankommt, mit einer Flut an Informationen zu erschlagen, die mit seinem Problem nicht direkt etwas zu tun haben. Eins nach dem anderen... Erst mal den eigenen Ansatz zum Laufen bringen, danach kann man ggf. schauen, ob/wie es besser geht. Genau wie es in Mathe oder anderen Fächern ja auch am effektivsten ist, erst mal eine Aufgabe selbstständig zu bearbeiten und anschließend mit der Musterlösung zu vergleichen, statt gleich in die Musterlösung zu schauen.

Ist doch normal, dass man so anfängt. Meine ersten Programme sahen genau so aus.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.378 Beiträge
 
Delphi 12 Athens
 
#7

AW: String ausgeben

  Alt 30. Sep 2014, 05:04
Reviewed (~kritisiert) wird der Code, nicht der Programmierer.
In dem Sinne: nicht abschrecken lassen von den Alt-Eingesessenen, wir wollen nur dein Bestes
Und ein Teil der "Kritik"/Fragen geht auch manchmal am Schüler vorbei eher an den Lehrer.

Also wenn es da einen gibt, dann die Erklärungen/Fragen auch bitte mal an Diesen weitergeben.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Medium

Registriert seit: 23. Jan 2008
3.688 Beiträge
 
Delphi 2007 Enterprise
 
#8

AW: String ausgeben

  Alt 30. Sep 2014, 09:45
Och Leute. Wenn doch klar von vorne herein angesagt ist, dass hier gerade erst begonnen wird - sehr wahrscheinlich nicht nur mit Delphi, sondern mit Programmieren allgemein - dann liegt schon mal nahe, dass hier die Schule der Aufgabensteller ist. Wenn wir jetzt daher kommen und (durchaus gut gemeinte) Vorschläge machen, wie man alles viel einfacher, besser, schöner und schneller machen könnte, dann verwirrt man nicht nur den TE gewaltig (ich zumindest wäre es), sondern bringt u.U. den Plan des Lehrers völlig durcheinander.

Ja, viele Lehrer an Schulen bringen fragwürdige Dinge bei, aber es ist der, der hier nachher die Noten gibt. Und was könnte jemanden dazu motivieren mit Softwareentwicklung weiter zu machen? Riiiichtig. Gute Noten können da schon mal helfen. Selbst wenn wir es schaffen dem TE die Superdupermusterlösung mit Profisiegel verständlich ans Herz zu legen, wird der Lehrer vermutlich nur eines sagen: An der Aufgabe vorbei, 6. (Leider ist nicht selten auch zu erwarten, dass Lehrer gewisse Konstrukte und Vorgehensweisen nichtmals als solche erkennen.)

Bevor wir hier also anfangen den Code zur Unkenntlichkeit zu refactorn, lasst uns doch lieber mal versuchen hier jemanden NICHT mit überladener (Semi-)Profimentalität zu verschrecken. So sehen Programme am Anfang nun mal aus. Meine auch. Trotzdem ist aus mir was geworden, auch ohne dass mir jemand auf Nachfragen den halben Fachbegriffekatalog der Informatik an die Stirn geklatscht hat.
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  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 09:39 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-2025 by Thomas Breitkreuz