Wäre es nicht mal wieder an der Zeit...

Hier kann alles mögliche diskutiert werden. Themen zu Purebasic sind hier erwünscht.
Flames und Spam kommen ungefragt in den Mülleimer.
Benutzeravatar
STARGÅTE
Kommando SG1
Beiträge: 7028
Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Kontaktdaten:

Re: Wäre es nicht mal wieder an der Zeit...

Beitrag von STARGÅTE »

Du auch 7x7 ^^

656

Code: Alles auswählen

EnableExplicit
Global a,d,f,j,m,n,c.s,h.s,i.s
Macro U
h=Input()
EndMacro
Macro W
EndIf
EndMacro
OpenConsole()
Print("Filename (blank to use std in)...?")
U
If h
OpenFile(1,h)
Repeat
i+ReadString(1)
Until Eof(1)
Else
U
While h
i+h
U
Wend
W
h=i
While h
m+1
h=Mid(i,m,1)
If FindString("+-<>.,[]",h)
c+h
j-((Asc(h)/23)!3-3)/3
W
Wend
i="Uneven brackets"
If j=0   
Dim k(d)
For m=0 To Len(c)
n=PeekA(@c+m)-44
i=""
Select n
Case -1,1
k(f)-n
Case 2
Print(Chr(k(f)))
Case 0
If h=i
U
W
k(f)=Asc(h)
h=Mid(h,2)
Case 16,18
f+n-17   
If f<0
i="Memory pointer out of range"
Break
W
d+9
ReDim k(d)
Case 47,49
a=(k(f)XOr n/49)!1*(48-n)
j=a
While j
m+a
j-((PeekA(@c+m)/23)!3-3)/3
Wend
EndSelect
Next
W
Print(i+RSet("Press ENTER to exit",22,#LF$))
U
PS: Im übrigen stürtzt der Code inzwischen ab, wenn man einen falschen Dateinamen eingibt.
Das vor in Versionen davor nicht der Fall, wer hat da n Sicherheitsabfrage gekillt? ^^
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Sirius-2337
Beiträge: 71
Registriert: 29.05.2010 20:55

Re: Wäre es nicht mal wieder an der Zeit...

Beitrag von Sirius-2337 »

655

Code: Alles auswählen

EnableExplicit
Global a,d,f,j,m,n,c.s,h.s,i.s
Macro U
h=Input()
EndMacro
Macro W
EndIf
EndMacro
OpenConsole()
Print("Filename (blank to use std in)...?")
U
If ReadFile(1,h)
Repeat
i+ReadString(1)
Until Eof(1)
Else
U
While h
i+h
U
Wend
W
h=i
While h
m+1
h=Mid(i,m,1)
If FindString("+-<>.,[]",h)
c+h
j-((Asc(h)/23)!3-3)/3
W
Wend
i="Uneven brackets"
If j=0   
Dim k(d)
For m=0 To Len(c)
n=PeekA(@c+m)-44
i=""
Select n
Case -1,1
k(f)-n
Case 2
Print(Chr(k(f)))
Case 0
If h=i
U
W
k(f)=Asc(h)
h=Mid(h,2)
Case 16,18
f+n-17   
If f<0
i="Memory pointer out of range"
Break
W
d+1
ReDim k(d)
Case 47,49
a=(k(f)XOr n/49)!1*(48-n)
j=a
While j
m+a
j-((PeekA(@c+m)/23)!3-3)/3
Wend
EndSelect
Next
W
Print(i+RSet("Press ENTER to exit",22,#LF$))
U
PS: Im übrigen stürtzt der Code inzwischen ab, wenn man einen falschen Dateinamen eingibt.
Das vor in Versionen davor nicht der Fall, wer hat da n Sicherheitsabfrage gekillt? ^^
Er stürtz auch ab wenn man einfach zweimal Enter drückt.
Benutzeravatar
7x7
Beiträge: 591
Registriert: 14.08.2007 15:41
Computerausstattung: ganz toll
Wohnort: Lelbach

Re: Wäre es nicht mal wieder an der Zeit...

Beitrag von 7x7 »

STARGÅTE hat geschrieben:Du auch 7x7 ^^
>_< :D
- alles was ich hier im Forum sage/schreibe ist lediglich meine Meinung und keine Tatsachenbehauptung
- unkommentierter Quellcode = unqualifizierter Müll
Benutzeravatar
7x7
Beiträge: 591
Registriert: 14.08.2007 15:41
Computerausstattung: ganz toll
Wohnort: Lelbach

Re: Wäre es nicht mal wieder an der Zeit...

Beitrag von 7x7 »

@Sirius-2337
Du hast einen Bock drin bei "If ReadFile(1,h)" ! Die Abfrage, ob Standard-input oder Fileinput gewählt wurde fehlt! Läuft nicht...!
edit:Nehme alles zurück...läuft doch! Sorry!
- alles was ich hier im Forum sage/schreibe ist lediglich meine Meinung und keine Tatsachenbehauptung
- unkommentierter Quellcode = unqualifizierter Müll
Benutzeravatar
STARGÅTE
Kommando SG1
Beiträge: 7028
Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Kontaktdaten:

Re: Wäre es nicht mal wieder an der Zeit...

Beitrag von STARGÅTE »

@Sirius-2337

Jo, das heißt es wurde gegen die regeln verstoßen, dass die Ausgabe erhalten bleibt.
Und nun?

Egal hier noch mal zwei weniger, der IMA ist trotzdem noch da, wenn der c-String leer ist.

653

Code: Alles auswählen

EnableExplicit
Global a,d,f,j,m,n,c.s,h.s,i.s
Macro U
h=Input()
EndMacro
Macro W
EndIf
EndMacro
OpenConsole()
Print("Filename (blank to use std in)...?")
U
If ReadFile(1,h)
Repeat
i+ReadString(1)
Until Eof(1)
Else
U
While h
i+h
U
Wend
W
h=i
While h
m+1
h=Mid(i,m,1)
If FindString("+-<>.,[]",h)
c+h
j-((Asc(h)/23)!3-3)/3
W
Wend
i="Uneven brackets"
If j=0   
Dim k(d)
m=@c
While PeekA(m)
n=PeekA(m)-44
i=""
Select n
Case -1,1
k(f)-n
Case 2
Print(Chr(k(f)))
Case 0
If h=i
U
W
k(f)=Asc(h)
h=Mid(h,2)
Case 16,18
f+n-17   
If f<0
i="Memory pointer out of range"
Break
W
d+1
ReDim k(d)
Case 47,49
a=(k(f)XOr n/49)!1*(48-n)
j=a
While j
m+a
j-((PeekA(m)/23)!3-3)/3
Wend
EndSelect
m+1
Wend
W
Print(i+RSet("Press ENTER to exit",22,#LF$))
U
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8808
Registriert: 29.08.2004 20:20
Computerausstattung: Ryzen 7 5800X, 64 GB DDR4-3200
Ubuntu 24.04.2 LTS
GeForce RTX 3080 Ti
Wohnort: Saarbrücken

Re: Wäre es nicht mal wieder an der Zeit...

Beitrag von NicTheQuick »

Eigentlich gelte die Codes nicht mehr, wenn dadurch Fehler entstehen. Was ist denn letzte Code ohne Fehler? Hab den Überblick verloren und gerade zu wenig Zeit das durchzutesten. ^^
Sirius-2337
Beiträge: 71
Registriert: 29.05.2010 20:55

Re: Wäre es nicht mal wieder an der Zeit...

Beitrag von Sirius-2337 »

NicTheQuick hat geschrieben:Eigentlich gelte die Codes nicht mehr, wenn dadurch Fehler entstehen. Was ist denn letzte Code ohne Fehler? Hab den Überblick verloren und gerade zu wenig Zeit das durchzutesten. ^^
Man könnte auch wieder Code einbauen, damit es wieder funktioniert wie Anfangs und mit dem Code weitermachen.
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Re: Wäre es nicht mal wieder an der Zeit...

Beitrag von ts-soft »

Wenn morgen das Forum ausfällt, sollte der Countdown entsprechende verlängert werden, nicht das jemand seine
ultrakurze Version nicht mehr einreichen kann, bloß weil das Forum für ein paar stunden down ist.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: Wäre es nicht mal wieder an der Zeit...

Beitrag von RSBasic »

ts-soft hat geschrieben:Wenn morgen das Forum ausfällt, [...]
Das wusste ich ja noch garnicht. Das lese ich jetzt erst gerade: http://www.purebasic.fr/english/viewtop ... 14&t=49706
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8808
Registriert: 29.08.2004 20:20
Computerausstattung: Ryzen 7 5800X, 64 GB DDR4-3200
Ubuntu 24.04.2 LTS
GeForce RTX 3080 Ti
Wohnort: Saarbrücken

Re: Wäre es nicht mal wieder an der Zeit...

Beitrag von NicTheQuick »

644

Code: Alles auswählen

EnableExplicit
Global a,d,f,j,m,n,c.s,h.s,i.s
Macro U
h=Input()
EndMacro
Macro W
EndIf
EndMacro
OpenConsole()
Print("Filename (blank to use std in)...?")
U
If ReadFile(1,h)
Repeat
i+ReadString(1)
Until Eof(1)
Else
U
While h
i+h
U
Wend
W
h=i
While h
m+1
h=Mid(i,m,1)
If FindString("+-<>.,[]",h)
c+h
j-((Asc(h)/23)!3-3)/3
W
Wend
i="Uneven brackets"
If j=0
Dim k(d)
m=@c
While PeekA(m)
n=PeekA(m)-44
i=""
k(f)-n&1*n*(1-n/47)
If Not n
If h=i
U
W
k(f)=Asc(h)
h=Mid(h,2)
W
If n>15
If n>46
a=(k(f)XOr n/49)!1*(48-n)
j=a
While j
m+a
j-((PeekA(m)/23)!3-3)/3
Wend
Else
f+n-17
If f<0
i="Memory pointer out of range"
Break
W
d+1
ReDim k(d)
W
W
If n=2
Print(Chr(k(f)))
W
m+1
Wend
W
Print(i+RSet("Press ENTER to exit",22,#LF$))
U
Antworten