Home | Registrieren | Einloggen | Suchen | Aktuelles


Forum » Sonstige Web-Programmiersprachen » Turbo Pascal Programm, läuft nicht...frö... Antworten
Turbo Pascal Programm, läuft nicht...fröhliche fehlersuche :-)

PvtPayne
Pixelschubser


Beiträge: 4


Hab das Programm jetzt noch mal komplett neu geschrieben!

Gute Nachricht : Es läuft!

Schlechte Nachricht : Nicht so wies soll….



Also Ziel ist es, dass das Programm den code eines anderen Programms einließt und schön formatiert, einrückt usw.

Ich habe mir also eine Liste gemacht mit den Schlüsselworten und diese strings zugewiesen und vergleiche jetzt den code Zeile für Zeile mit diesen schlüsselwörtern. Je nach Wort soll ein Leerzeichen eingefügt bzw. entfernt werden und Leerzeilen eingefügt werden. Das Funktioniert wie folgt: Ich lese die originale Datei ein und schreibe sie in eine neue, schön formatierte…

Das Problem ist jetzt:



Ich weiß nicht wie ich Absätze erstelle (bitte also um nen Tipp )

Und zweitens bekomme ich jedes Mal wenn das Programm durchläuft ne Fehlermeldung das das File nicht zum schreiben geöffnet sei, und ich finde einfach nicht heraus wieso! Jetzt hoffe ich, dass du, als erfahrener TP User das Problem erkennst und mir mitteilst, damit ichs verbessern kann. Ist wirklich wichtig!




hier mein neuer code:

1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
12: 
13: 
14: 
15: 
16: 
17: 
18: 
19: 
20: 
21: 
22: 
23: 
24: 
25: 
26: 
27: 
28: 
29: 
30: 
31: 
32: 
33: 
34: 
35: 
36: 
37: 
38: 
39: 
40: 
41: 
42: 
43: 
44: 
45: 
46: 
47: 
48: 
49: 
50: 
51: 
52: 
53: 
54: 
55: 
56: 
57: 
58: 
59: 
60: 
61: 
62: 
63: 
64: 
65: 
66: 
67: 
68: 
69: 
70: 
71: 
72: 
73: 
74: 
75: 
76: 
77: 
78: 
79: 
80: 
81: 
82: 
83: 
84: 
85: 
86: 
87: 
88: 
89: 
90: 
91: 
92: 
93: 
94: 
95: 
96: 
97: 
98: 
99: 
100: 
101: 
102: 
103: 
104: 
105: 
106: 
107: 
108: 
109: 
110: 
111: 
112: 
113: 
114: 
115: 
116: 
117: 
118: 
119: 
120: 
121: 
122: 
123: 
124: 
125: 
126: 
127:
Program indent;

USES CRT;

VAR
      lzl2,lzl3,lzl4                                 : string;
      lzl1,lzl5                                      : string;
      inF,ouF                                        : text;
      ort                                            : string;
      nl                                             : integer;
      lz1,lz2,lz3,lz4                                : string;
      abs                                            : string;
      i                                              : integer;
      zeile                                          : string;
      z                                              : string;
      abs1,abs2,abs3,abs4,abs5,abs6,abs7,abs8,abs9   : string;
      leer                                           : string;


BEGIN
 nl:=0;
 leer:=(' ');
 lzl1:=('BEGIN');
 lzl2:=('VAR');
 lzl3:=('PROGRAM');
 lzl4:=('USES');
 lzl5:=('CONST');
 lz1:=('BEGIN');
 lz2:=('END;');
 lz3:=('END.');
 lz4:=('do');
 abs1:=(');');
 abs2:=('*)');
 abs3:=('integer;');
 abs4:=('boolean;');
 abs5:=('byte;');
 abs6:=('real;');
 abs7:=('string;');
 abs8:=('text;');
 abs9:=('longint;');




 WRITELN ('Indent, von ********* und ************** ');
 WRITELN ('Dieses Programm formatiert den code ihrer Pascal-Programms');
 delay(5000);
 CLRSCR;
 WRITELN ('Bitte geben sie jetzt den Standort ihrer *.pas datei an');
 READLN (ort);
 ASSIGN (inF,ort);
 WRITELN ('Dies ist der code in seiner urspruenglichen Form');
 delay(4000);
 RESET(inF);
 WHILE NOT eof(inF) DO BEGIN
 	READLN (inF,zeile);
 	WRITELN (zeile);
 end;
 WRITELN ('Um weiter zu machen Taste druecken');
 readln;
 close(inF);

 ASSIGN (ouF,ort);

 WHILE NOT EOF(ouf) DO BEGIN
   WRITE(ouF);
   READLN (ouF,zeile);
   z:=zeile;
   IF z=lzl2 THEN BEGIN
     
     WRITE (' ');
     READ (z);
     write(z);
   END ELSE BEGIN
     IF z=lzl3 THEN BEGIN
      
       WRITE (' ');
       READ (z);
       write(z);    
     END ELSE BEGIN
       IF z=lzl4 THEN BEGIN
         
         WRITE (' ');
	 READ (z);
         write(z);       
       END ELSE BEGIN
         IF z=lzl5 THEN BEGIN
          
           WRITE (' ');
	   READ (z);
           write(z);         
         END ELSE BEGIN
	   IF z=lz1 THEN BEGIN
	     nl:=(nl+1);
	     
             WRITE(leer:(1+nl),z);
	   END ELSE BEGIN
	     IF z=lz2 THEN BEGIN
	       nl:=(nl-1);
	       
               WRITE(leer:(1+nl),z);
	     END ELSE BEGIN
	       IF z=lz3 THEN BEGIN
	         nl:=0;
	         
                 WRITE(leer:(1+nl),z);
	       END ELSE BEGIN
	         IF z=lz4 THEN BEGIN
		   nl:=(nl+1);
	           
                   WRITE(leer:(1+nl),z);


	       END;
             END;
           END;
         END;
       END;
     END;
   END;
  END;
END;
END.




Diese Nachricht wurde geändert von: PvtPayne
  Profil   Editieren   Zitieren

Can
Halbgott


Beiträge: 1330


Mh...das Programm, dass du schreibst, hast du bitter nötig

Ich schaus mir gelegentlich mal an, wenn mir keiner zuvorkommt.

---
"S-púrlawits'chkâ A-ngáse gûrewüdíx" - Zaphrot Bibelprox

  Profil   E-Mail   Editieren   Zitieren

PvtPayne
Pixelschubser


Beiträge: 4


hehe, ich weiß schon was du meinst, der aht beim reinkopieren die formatierung net übernommen...sorry

aber wenn du trotzdem mal gucken könntest WÄRE SUPER!

Ist echt dringend!

  Profil   Editieren   Zitieren

languitar
Foren-Team


Beiträge: 2795


Hab jetzt das ganz mal in den Code-Tag gepackt. Wenn du das da noch mal vernünftig reinkopierst, bleibt auch die Formatierung bestehen.

---
Take a look here!
Lichtblick - Einblick - Ausblick

  Profil   E-Mail   Website   Editieren   Zitieren

PvtPayne
Pixelschubser


Beiträge: 4


ok, hab ich gemacht. dann leg mal los

  Profil   Editieren   Zitieren
 

Antworten
Nach oben