ZahlenWert Umkehren

Anfängerfragen zum Programmieren mit PureBasic.
andi256
Beiträge: 100
Registriert: 06.11.2004 11:23
Computerausstattung: PB 5.30 (x64) Win7
Wohnort: Österreich

Beitrag von andi256 »

Zahl = 10
Zahl *-1

Debug zahl

Zahl = -10
Zahl *-1

Debug zahl


oder wie RSBasic "/-1"

find ich am schönsten ... ist aber geschmacksache
Benutzeravatar
STARGÅTE
Kommando SG1
Beiträge: 7031
Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Kontaktdaten:

Beitrag von STARGÅTE »

also /-1 ist langsammer, weil Dividieren (auch wenn es 1 ist) lagsammer abläuft als Multiplizieren mit *-1 oder ganz einfach nur ein - davor.

@X360 Andy

ich versteh das prob immer noch nicht ...

Wenn IMMER Punkte abgezogen werden sollen, egal was mal für Punkte hat und was "neu" dazu/weg kommt, dann ist wohl das hier geeignet:

Punkte = Punkte - Abs(NeuePunkte)

Aber wenn einer 90 mehr bekommt und du es trotzdem abziehst, warum vergibst du dann überhaupt minuspunkte und Pluspunkte.

Du kannst doch gleich normal rechnen:

Punkte = Punkte + NeuePunkte

NeuePunkte wäre dann immer negativ, wenn du immer abziehen willst.
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
X360 Andy
Beiträge: 1206
Registriert: 11.05.2008 00:22
Wohnort: Bodensee
Kontaktdaten:

Beitrag von X360 Andy »

Das man immer Minus Punkte bekommt mag zwar unlogisch sein aber man muss bei dem Spiel versuchen immer den "0X/Y Wert" zu treffen.

Wenn der getroffene Punkt unter dem 0X/Y Wert ist sollen pro Einheit Punkte abgezogen werden.

Wenn der Wert über 0X/Y ist sollen aber auch pro Einheit Punkte abzogen werden.

Natürlich gibt es noch andere Faktoren für die Punkte vergabe also es gibt nicht nur Minus Punkte , nur ein Teil der Punkte berechnung ist immer ein Minusakt.


Hoffe man versteht was ich meine, wenn nicht noch ein paar Tage warten , dann kann man es selber nachspielen, dann wird man das hier auch verstehen. :mrgreen:

EDIT ein kleines Bildliches Beispiel
http://www.IMG-Teufel.de/img_punkte2c56952cpng.png.html
Benutzeravatar
X360 Andy
Beiträge: 1206
Registriert: 11.05.2008 00:22
Wohnort: Bodensee
Kontaktdaten:

Beitrag von X360 Andy »

Ups falscher Thread :lol:
Benutzeravatar
STARGÅTE
Kommando SG1
Beiträge: 7031
Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Kontaktdaten:

Beitrag von STARGÅTE »

jo dann wäre aber die Punktezahl gecih dem Abstand zum Mittelpunkt:

Abstand = Sqr(Pow(x-x0,2)+Pow(y-y0))

(x0, y0 ist der Mittelpunkt; x,y der Trefferpunkt)

den Abstand ziehst du dann ganz normal ab:

Punkte = Punkte - Abstand
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
php-freak
Beiträge: 536
Registriert: 07.02.2009 18:08

Beitrag von php-freak »

/-1
^^Ich finde das ist die genialste Lösung!
PureBasic 4.30 (x86)
Benutzeravatar
X360 Andy
Beiträge: 1206
Registriert: 11.05.2008 00:22
Wohnort: Bodensee
Kontaktdaten:

Beitrag von X360 Andy »

php-freak hat geschrieben:
/-1
^^Ich finde das ist die genialste Lösung!
*-1 ist aber schneller (siehe etwas weiter oben bei STARGÅTEs Beitrag)
STARGÅTE hat geschrieben:jo dann wäre aber die Punktezahl gecih dem Abstand zum Mittelpunkt:

Abstand = Sqr(Pow(x-x0,2)+Pow(y-y0))

(x0, y0 ist der Mittelpunkt; x,y der Trefferpunkt)

den Abstand ziehst du dann ganz normal ab:

Punkte = Punkte - Abstand

Danke für deine Hilfe :allright:
Andesdaf
Moderator
Beiträge: 2673
Registriert: 15.06.2008 18:22
Wohnort: Dresden

Beitrag von Andesdaf »

X360 Andy hat geschrieben:Ups falscher Thread :lol:
Wie kann man denn den Thread verwechseln? :freak: :wink:

*-1 ist auch nicht schlecht, und /-1 auch nicht
Win11 x64 | PB 6.20
Benutzeravatar
X360 Andy
Beiträge: 1206
Registriert: 11.05.2008 00:22
Wohnort: Bodensee
Kontaktdaten:

Beitrag von X360 Andy »

Andesdaf hat geschrieben:
X360 Andy hat geschrieben:Ups falscher Thread :lol:
Wie kann man denn den Thread verwechseln? :freak: :wink:
Hab bei dem falschen Thread auf Antworten gedrückt, weil unten jeder Thread gleich aussieht (wohahha) :lol:
Antworten