Prüfenbutton

Für Fragen von Einsteigern und Programmieranfängern...
Tuningmax
Beiträge: 9
Registriert: Do 10. Jun 2021, 12:32
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit

Re: Prüfenbutton

Beitrag von Tuningmax »

aro hat geschrieben:
Do 10. Jun 2021, 16:16
Hallo,
das kann nicht funktionieren!

Schaue Dir die Zeile
j := pos(Klartext,Alphabet);
genau an.

J vom Type Integer soll die Position eines Zeichens bekommen.


Hey,
Kann ich das eine pos Umbenennen um für den prüfen Button pos zu verwenden?

Lg

Tuningmax
Beiträge: 9
Registriert: Do 10. Jun 2021, 12:32
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit

Re: Prüfenbutton

Beitrag von Tuningmax »

Winni hat geschrieben:
Do 10. Jun 2021, 20:24
Hi!

Thandor hat das Ganze dankenswerterweise schon mal strukturiert.

Daran hab ich mich auf die Schnelle gehalten und mal ein Project draus gemacht.

Lies Dir das aber durch und versuche es zu verstehen.

Folgende Tricks wurden angewandt:

Das Edit1 hat eine maximale Länge von 1. So können gar keine längeren Eingaben getätigt werden.
Man muss nur prüfen, ob die Eingabe leer ist.

Zweitens ist die Eingabe auf ecUppercase gestellt - so werden automatisch Großbuchstaben eingegeben.
Die fehlerhafte Eingabe von Kleinbuchstaben ist ausgeschlossen.

Hoffe es hilft.
Winni
Hey Winnie,

Ja ich verstehe jetzt mehr oder weniger wie es funktioniert aber pos wird mir als Fehler angezeigt... is das,weil pos schon davor mal verwendet wurde?

Lg

Tuningmax
Beiträge: 9
Registriert: Do 10. Jun 2021, 12:32
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit

Re: Prüfenbutton

Beitrag von Tuningmax »

aro hat geschrieben:
Sa 12. Jun 2021, 11:34
Hallo,

von mir würde Tuningmax eine glatte 6 bekommen, wenn er die Arbeit so abgibt !

Die Aufgabenstellung lautete ganz klar "tue es" und nicht "suche dir jemanden der es für dich tut und gib es für deine eigene Leistung aus".

Das sich Abschreiben nicht lohnt kann man doch jeden Tag in den Nachrichten hören, wenn ein Minister seinen Doktortitel zurückgeben muss.

Das hat doch nichts mehr mit Hilfestellung zu tun.
Wenn der Lehrer das Programm mit den bisherigen Leistungen vergleicht erkennt er sofort, das damit etwas nicht stimmt.
Aber vielleicht verfolgt er ja sogar das Thema in diesem Forum.


Hey,
Ich kann dich verstehen...

Wenn es dich aber beruhigt Winni hat mir geholfen, da ich es jetzt zwar verstehe, kann jedoch sein Programm nicht so abschreiben/kopieren aber ich verstehe deine Bedenken...

Aber eine Frage, war dir Kritik/die „Ansage“ an mich oder winni?

Lg

Benutzeravatar
six1
Beiträge: 782
Registriert: Do 1. Jul 2010, 19:01

Re: Prüfenbutton

Beitrag von six1 »

mit "J vom Type Integer soll die Position eines Zeichens bekommen."
meinte Winni, dass du mal genauer auf "EINES Zeichens" schauen sollst.
Du möchtest doch die Position von EINEM Zeichen in einem String finden.

Was übergibst du als Zeichen zum Suchen an "pos"?
j := pos(Klartext,Alphabet);

Ist "Klartext" EIN Zeichen?
Gruß, Michael

Tuningmax
Beiträge: 9
Registriert: Do 10. Jun 2021, 12:32
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit

Re: Prüfenbutton

Beitrag von Tuningmax »

six1 hat geschrieben:
Di 15. Jun 2021, 10:13
mit "J vom Type Integer soll die Position eines Zeichens bekommen."
meinte Winni, dass du mal genauer auf "EINES Zeichens" schauen sollst.
Du möchtest doch die Position von EINEM Zeichen in einem String finden.

Was übergibst du als Zeichen zum Suchen an "pos"?
j := pos(Klartext,Alphabet);

Ist "Klartext" EIN Zeichen?


Nein es ist eine Zeichenkette...

Also muss ich das ändern!?

Ok danke dir

Lg max

Benutzeravatar
six1
Beiträge: 782
Registriert: Do 1. Jul 2010, 19:01

Re: Prüfenbutton

Beitrag von six1 »

Um auf einzelne Elemente eines String zuzugreifen, musst du eine Schleife durchlaufen.

Code: Alles auswählen

var
  x, j:integer;
begin
  for x := 1 to length(Klartext) do
  begin
    j := pos(Klartext[x],Alphabet);
    // weiterer Code, welcher mit "j" arbeitet
    // wenn j > 0 dann ist das Zeichen Klartext[x] in Alphabet enthalten! 
    if (j > 0) then
    begin
      // hier musst du das Zeichen Klartext[x] aus Alphabet entfernen oder sonstige Bedingungen deiner Anforderungen erfüllen
    end;
  end;
end;
Gruß, Michael

Tuningmax
Beiträge: 9
Registriert: Do 10. Jun 2021, 12:32
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit

Re: Prüfenbutton

Beitrag von Tuningmax »

six1 hat geschrieben:
Di 15. Jun 2021, 10:35
Um auf einzelne Elemente eines String zuzugreifen, musst du eine Schleife durchlaufen.

Code: Alles auswählen

var
  x, j:integer;
begin
  for x := 1 to length(Klartext) do
  begin
    j := pos(Klartext[x],Alphabet);
    // weiterer Code, welcher mit "j" arbeitet
    // wenn j > 0 dann ist das Zeichen Klartext[x] in Alphabet enthalten! 
    if (j > 0) then
    begin
      // hier musst du das Zeichen Klartext[x] aus Alphabet entfernen oder sonstige Bedingungen deiner Anforderungen erfüllen
    end;
  end;
end;



Ok super ich danke dir

Antworten