AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Inkompatible Typen integer boolean

Ein Thema von thechus · begonnen am 24. Dez 2011 · letzter Beitrag vom 25. Dez 2011
Antwort Antwort
Seite 1 von 2  1 2   
thechus

Registriert seit: 17. Dez 2011
30 Beiträge
 
#1

Inkompatible Typen integer boolean

  Alt 24. Dez 2011, 21:18
Liebes Forum,

ich bin hier grad am letzten Schritt meines Verschlüsselungsprogrammes angelangt... und verzweifle an folgender Fehlermeldung:

Inkompatible Typen: 'integer' und 'boolean'


Ich hoffe ihr könnt mir helfen, da ich in Delphi noch nicht sonderlich viel Erfahrung habe.

Code steht unten (Fehlerstelle rot markiert),

Danke und Frohe Weihnachten!!

Delphi-Quellcode:
var
   SchlWort: string;
 
[...]


procedure TForm1.addition(x: integer);
var
 p2, zaehler, i: integer;
 c2: char;
begin
 zaehler := x mod lenSchl +1;
[COLOR="rgb(139, 0, 0)"] c2 := schlwort[zaehler];[/COLOR]
 p2 := pos(c2, ga);
 ga2 := copy(ga,p2,LenA - p2 + 1) + copy(ga,1,p2 - 1)
end;

Geändert von thechus (24. Dez 2011 um 22:15 Uhr) Grund: Korrktur 3
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#2

AW: Inkompatible Typen integer boolean

  Alt 24. Dez 2011, 21:25
Code steht unten (Fehlerstelle rot markiert)
Ich geh mal davon aus, dass du dir deine Beitrag nicht noch mal angeguckt hast nach dem du ihn abgeschickt hast. Und warum postest du den ganzen Code und nicht nur den relevanten Teil?

Wozu die ganzen globalen Variablen? Wenn du schon keine eigen Klasse für den Verschlüsselungsalgorithmus machst, dann pack sie doch zumindest in den Private-Abschnitt der Form Klasse.
Michael
Ein Teil meines Codes würde euch verunsichern.

Geändert von Luckie (24. Dez 2011 um 21:28 Uhr)
  Mit Zitat antworten Zitat
thechus

Registriert seit: 17. Dez 2011
30 Beiträge
 
#3

AW: Inkompatible Typen integer boolean

  Alt 24. Dez 2011, 21:33
Ja du hast recht...
ich war in Eile...

ich hoffe, dass es so besser aussieht.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#4

AW: Inkompatible Typen integer boolean

  Alt 24. Dez 2011, 21:39
Jetzt fehlt natürlich die Information, was schlwort für einen Datentyp hat. Aber davon mal abgesehen hat c2 den Datentyp char. Also müsste in der Fehlermeldung irgendwas mit char auftauchen.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
thechus

Registriert seit: 17. Dez 2011
30 Beiträge
 
#5

AW: Inkompatible Typen integer boolean

  Alt 24. Dez 2011, 21:42
SchWort ist String

Ja, das habe ich mir auch gedacht.
Aber die Fehlermeldung ist die, die ich nannte.

Gruß
thechus
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#6

AW: Inkompatible Typen integer boolean

  Alt 24. Dez 2011, 22:00
logisch, was soll denn das hier werden?
zaehler := x mod lenSchl +1 = 1 Eine Berechnung und am Ende ein Vergleich
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
thechus

Registriert seit: 17. Dez 2011
30 Beiträge
 
#7

AW: Inkompatible Typen integer boolean

  Alt 24. Dez 2011, 22:15
Achja!

dieses "=1" ist versehentlich hineingeraten....
nur muss ich das jetzt hinbekommen dass nicht durch 0 dividiert wird...

compiliere ich den Quellcode und teste das Programm wird mir die Fehlermeldung angezeigt, dass ich durch 0 dividiere.

wüsste jemand eine Antwort? Oder benötigt es dazu weitere Informationen?

Danke für die Hilfe!

Gruß,
thechus
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#8

AW: Inkompatible Typen integer boolean

  Alt 24. Dez 2011, 22:23
Ich sehe in dem von dir geposteten Code keine Division.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
thechus

Registriert seit: 17. Dez 2011
30 Beiträge
 
#9

AW: Inkompatible Typen integer boolean

  Alt 24. Dez 2011, 22:28
Hmm...

Hier die Stelle, an der ich die Prozedur benutze:

Delphi-Quellcode:
var
  Form1: TForm1;
  gt, ka,ga, ga2, schlwort: string;
  lenT, lenA, schluessel, schl, lenSchl: integer;
  c: char;

procedure TForm1.ErzeugeGa();
var
  i, Wert1, Wert2: integer;
  c: char;
begin

    if Edit1.Text = 'then Showmessage('Invalid Key')
    else
    begin
      ga := '';
      addition(i);
      lenA := length(ka);
      SchlWort := Edit1.Text;
      schl := pos(SchlWort[1],ka);
      LenSchl := length(SchlWort);
       if pos(SchlWort[1],ka) = 0 then Showmessage('Invalid Key')
        else
          For i := 1 to LenA do
           begin
             c := ka[i];
             Wert1 := ord(c);
             Wert2 := ((Wert1 - 44)* schl mod 79) + 44;
             ga := ga + chr(Wert2);
          end;
     Panel1.Caption := ga;
     Panel2.Caption := ka;
       end;

    end;
Hoffentlich hilft das etwas...
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#10

AW: Inkompatible Typen integer boolean

  Alt 24. Dez 2011, 23:26
Ich sehe in dem von dir geposteten Code keine Division.
was macht denn wohl mod

und beim Aufruf von addition( i ) ist i noch kein Wert zugewiesen worden, kann also alles mögliche sein (auch 0). Oder soll das ein Zufallsgenerator werden

Ach ja und LenSchl hat bei dem Aufruf auch noch keinen Wert bekommen und da es eine globale Variable ist, hat die wohl den Wert 0.

Somit ist das Verhalten nicht verwunderlich.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)

Geändert von Sir Rufo (24. Dez 2011 um 23:29 Uhr)
  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 18:27 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz