Pygame hängt sich bei while True: loop auf?

Hallo,

ich programmiere gerade ein Spiel in Pygame. Auf jeden Fall möchte ich den Ninja Wurfsternen (&anderen Waffen)Ammo geben, dass man eine bestimmte Anzahl von diesen hat und diese nicht spammen kann. Wenn man Space drückt, wird der Ammo Variable eins abgezogen und wenn der Ammo (heißt es der Ammo? ) höher als 0 ist, wird der Befehl self.shoot() ausgeführt. Jetzt mein Problem: Egal, welche Nummer die Variable hat (außer Null), kann ich einmal schießen und danach nicht mehr, auch wenn ich Space drücke. Ich weiß nur nicht wieso. Wenn ich es in einen while True, loop packe, hängt sich pygame auf. Nur wie kann ich das fixen, dass ich öfter als 1 Mal schießen kann. Hier mein benötigter Code (ohne den While True loop):

class Player(pg.sprite.Sprite):

def __init__(self, game, x, y):

self.weapon = 'blowpipe'

self.shurikan = False

self.blowpipe = False

self.xp = PLAYER_XP

self.shoot_ammo = True

self.BLOWPIPE_AMMO = 5

self.SHURIKAN_AMMO = 5

def get_keys(self):

keys = pg.key.get_pressed()

if keys[pg.K_SPACE]:

if self.weapon == 'blowpipe' and self.shoot_ammo == True:

self.BLOWPIPE_AMMO -= 1

if self.BLOWPIPE_AMMO < 0:

self.BLOWPIPE_AMMO = 0

if self.BLOWPIPE_AMMO == 0:

self.shoot_ammo = False

if self.BLOWPIPE_AMMO > 0:

self.shoot()

if self.weapon == 'shurikan' and self.shoot_ammo == True:

self.SHURIKAN_AMMO -= 1

if self.SHURIKAN_AMMO < 0:

self.SHURIKAN_AMMO = 0

if self.SHURIKAN_AMMO == 0:

self.shoot_ammo = False

if self.SHURIKAN_AMMO > 0:

self.shoot()

def shoot(self):

if self.shoot_ammo == True:

now = pg.time.get_ticks()

if now - self.last_shot > WEAPONS[self.weapon]['rate']:

self.last_shot = now

dir = vec(1, 0).rotate(-self.rot)

EinegleicheListegibtesfürBlowpipe.

pos = self.pos + BARREL_OFFSET.rotate(-self.rot)

self.vel = vec(-WEAPONS[self.weapon]['rate'], 0).rotate(-self.rot)

for i in range(WEAPONS[self.weapon]['count']):

spread = uniform(-WEAPONS[self.weapon]['spread'], WEAPONS[self.weapon]['spread'])

Blowpipe(self.game, pos, dir.rotate(spread))

Außerdem gibt es eine Weapons Liste in einem anderen File:

WEAPONS['blowpipe'] = {'img': 'blowpipe.png',

'speed': 500,

'lifetime': 600,

'rate': 300,

'kickback': 0,

'spread': 5,

'damage': 3,

'size': 'blowpipe',

'count': 1}

Eine ähnliche Liste benutze ich für den Shurikan. Thx

Computer, Mac, programmieren, Informatik, Python, Python 3, Pygame, VS Code
Kann man mit der BASIC-Programmiersprache eine KI erstellen?

Hallo,

es geht um folgendes, ich würde gerne eine KI konstruieren die als Chatbot fungieren soll. Dabei würde ich gerne die Techniken der Künstlichen Intelligenz einsetzen. D.h.: zum Teil voreingegebene Sätze oder Satzstrukturen, und wann sie halt ausgeführt werden, (zum Beispiel bei erwähnen von Wörtern die dazu passen würden), aber eben nicht ganz.

Die KI soll nicht nur Sätze abrufen, die sie in der Datenbank hat, sondern auch Rückschlüsse ziehen können aus Tatsachen, oder Fakten die in der Unterhaltung vorkamen. Ein gutes Beispiel für mein Vorhaben ist das Programm ELIZA das von Joseph Weizanbaum programmiert worden ist. Allerdings würde sich mein Programm darin unterscheiden, dass es aus Unterhaltungen lernt, und somit die Datenbank um Fakten oder Tatsachen ergänzt, die dann in zukünftigen Unterhaltungen einbeziehen kann, (falls notwendig). Kann man das in der Progammiersprache BASIC machen? Ich weiß, dass es auch andere Programmiersprachen gibt, und es auch andere Methoden gibt (z.B.: Python; Maschinelles Lernen; Neuronale Netze) um dem Computer etwas beizubringen.

Aber ich dachte mir, dass so ein Programm oder ähnliches in BASIC zu programmieren, wäre eine gute Herausforderung. Die Frage ist nur ob dies möglich ist, oder ob Einschränkungen in dieser Programmiersprache vorhanden sind, die so etwas unmöglich machen.

Vielen Dank im Vorraus für die Antwort.

Computer, programmieren, Informatik, Programmiersprache, Chatbot, maschinelles Lernen
Ist Wirtschaftsinformatik wirklich der richtige Studiengang für mich?

Liebe Leser,

ich bin in meinem zweiten Semester Informatik und völlig mit dem Stoff überfordert. Leider habe ich keine Freunde, mit denen ich für Klausuren lernen kann, da die paar Personen die Uni geschmissen haben, mit denen ich anfangs befreundet war. Bei uns besteht Wirt.Info aus 75% Wirtschaft, also weniger Mathe - mehr auswenig lernen.

Nun wollte ich zu Wirtschaftsinformatik wechseln, jedoch benötigte ich einen uniinternen Englisch Test, den ich leider nicht bestanden habe. Also fällt der Wechsel zu Wirtschaftsinformatik erst auf das nächste Semester, verbunden mit zusätzlichen Lernen für einen erfolgreichen Versuch.

Leider bekomme ich wenig Untertützung von meiner Familie. Ich bin ein praktischer Mensch und mag eigentlich keine Theorie. Am liebsten würde ich täglich viel Arbeiten, um das verdiente Geld in Aktien und Immobilien zu investieren, damit ich später davon leben kann. Ich habe Angst, ohne einen erreichten Studienabschluss meine Ziele nicht erreichen zu können. Zumindest wird mir ständig eingeprägt, man braucht einen guten Studienabschluss für einen guten Job.

Nun frage ich mich, kann man meine Ziele auch ohne Studium schaffen? Ist es möglich damit 4000 Netto zu verdienen spätenstens vor 35 Jahren? Ich sehe selbstverständlich ein, für mein Geld hart zu arbeiten! Ich weiß nur nicht, wo und womit ich dann anfangen könnte? Ich habe Angst, an der Theorie im Studium zu versagen.

Ich bin dankbar über jeden Tipp den ihr mir geben könnt.

Arbeit, Beruf, Studium, Schule, Informatik, Wirtschaftsinformatik, Ausbildung und Studium, Beruf und Büro
Wäre man zu alt mit 32/33 Jahren mit einem Informatik studium fertig zu werden?

Ich werde im Oktober 25 und habe vor 2 Wochen mit einer außerbetrieblichen Ausbildung zum Einzelhandelskaufmann begonnen. Ich habe leider nichts anderes finden können hier in Hamburg zumal ich nur einen Hauptschulabschluss habe.
Ich bin gebürtiger Stuttgarter und lebe seit knapp 3 Jahren momentan in Hamburg weil Mama hier lebt. Seit der Zeit hier treffe ich komischerweise fast nur Menschen die mich klein machen wollen vermutlich weil ich Ausländer bin mit schwarzen Haaren und Bartwuchs/ türkischer herkunft. Jedenfalls wäre eins meiner Ziele Informatik zu studieren und dann bei Porsche in Stuttgart zu arbeiten als Programmierer, denn ein guter alter bekannter dort im Betrieb arbeitet als IT Manager. Ich denke das wäre das optimalste was ich machen kann um dieses Ziel zu erreichen. Ich frage mich bin ich mit 32/33 Jahren wenn überhaupt nicht zu alt für dieses Ziel? ich sollte glaube ich auch wenigstens Berufserfahrung mitbringen bevor ich direkt bei Porsche nach dem Studium arbeiten kann wenn natürlich der bekannte, eben durch Kontakt, mich reinbringen kann. Es ist eine gute gelegenheit durch den Kontakt eben da reinzukommen denke ich mal. Ich weiß nur nicht was ich mir gerade mit der außerbetrieblichen Ausbildung zum Einzelhandelskaufmann gedacht habe wenn ich später eh viel weiter voran kommen möchte und ich weiß auch nicht ob der erworbene Realschulabschluss durch das erfolgreiche abschließen der kaufmännischen Ausbildung mich auch weiterbringen wird um später Informatik zu studieren, vielleicht wäre es ja doch besser jetzt die 2 jährige Abendrealschule in Stuttgart zu besuchen(in Hamburg gibt es keine freien Plätze mehr) und danach meinen Fachabi zu machen und dann Informatik zu studieren ich würde diesen Studiengang eventuell dann mit 29 beginnen wäre ich spät dran? oder wäre es vielleicht besser durch fernstudium innerhalb 3 1/2Jahren Abitur zu erreichen und dann zu studieren wenn ich das schaffen sollte dann würde ich eben mit 28 Abitur haben und könnte studieren diese variante kostet mich 6.000,-€.

Was würdet ihr an meiner Stelle machen wollen? ich brauche Ideen und auch wirklich hilfreichende Antworten. Danke

Computer, Software, Schule, Hardware, programmieren, Informatik, Ausbildung und Studium, Beruf und Büro
Informatik Studium. Welches Gerät?

In kürze werde ich mein Informatik Studium anfangen und brauche für dieses natürlich ein Gerät, was den Anforderungen entspricht.

Ich selber habe schon sehr viel nach passenden Geräten geschaut und bin von Surface Produkten sehr überzeugt (vorschläge für andere Produkte erwünscht). Da ich aufjedenfall eine Stifteingabe benutzten möchte fällt die Entscheidung auf ein Surface Pro 6 oder ein Surface Book 2. Ich habe oft gelesen das ein großer Bildschirm wichtig wäre, was natürlich eher für das Surface Book 2 sprechen würde.

Zuhause habe ich allerdings bereits einen sehr guten PC mit zwei Bildschirmen und deswegen bezweifle ich, dass der kleinere Bildschirm des Surface Pro 6 mich einschränken würde. Natürlich habe ich in der Uni keine großen Bildschirme, aber ich glaube kaum, dass ich Stunden lang am Surface programmieren werde. Ich glaube es wird eher dafür benutzt in Vorlesungen zum Beispiel Notizen zu machen.

Von der Leistung denke ich sind beide mit dem i5 Prozessor der 8. Generation ausreichend. (Surface Book 2: Intel® Core™ i5 (8. Generation) 8350U Prozessor 4x 1.70 GHz,,, Surface Pro 6: Intel® Core™ i5 (8. Generation) 8250U Prozessor 4x 1,60 GHz)

Ich würde mich auch über Empfehlungen zu der Speichergröße freuen. Ich selber hatte erstmal an 128GB beim Surface Pro 6 und an 256GB beim Surface Book 2 (128GB beim Surface Book 2 nicht möglich mit dem i5 der 8. Generation) gedacht. 128GB sind glaube ich ausreichend und können ja auch mittels externer Festplatte oder Cloud Diensten wie OneDrive erweitert werden.

Vielen dank schon mal im voraus.

Surface Book 2 40%
Anderes Gerät 40%
Surface Pro 6 20%
Microsoft, Studium, Informatik, Informatikstudium, Surface
Alles hinschmeißen und neu anfangen?

Ich brauche Hilfe, kann nicht mehr!

Ich werde bald 25 Jahre alt und hab bis jetzt nichts im Leben erreicht!

KEINE Ausbildung/Studium/Arbeit/eigene Wohnung/gute freunde!

Hab nur ein kleines Startkapital 5000 Euro und ein Traum welchen ich mir erfüllen will (dazu später)

Warum ich nichts erreicht habe , ganz einfach! Ich habe bis jetzt immer so gelebt wie es meine Eltern wollten! Ausbildung angefangen (die ich nie im Leben machen wollte) Studium angefangen (was ich nie studieren wollte , deswegen auch abgebrochen) und habe dort gearbeitet, wo ich nicht Arbeiten wollte ( hab den Job über freunde von meinen Eltern bekommen und da ich irgendwie Geld verdienen wollte habe ich den Job angenommen)

Ich bin schon fast 25 Jahre alt und hab immer das Leben anderer gelebt und jetzt habe ich eingesehen, dass es nicht mehr so weiter gehen kann..

Ich will einfach weg ! (Ja ich weiß abhauen war noch nie eine Lösung) aber ich brauche einen kompletten neu Anfang (große Veränderung) ich will mein eigenes Weg gehen!

In meiner Stadt hält mich nix mehr auf , keine freunde, keine Wohnung , keine Arbeit , keine Ausbildung , kein Studium , keine gute Beziehung zu meinen Eltern ...

Man lebt ja nur einmal und die 25 Jahre, die ich gelebt habe , waren praktisch umsonst ich habe keine guten Erinnerung an die letzten 25Jahre meines Lebens und wenn ich so weiter mache, wie bis jetzt werde ich irgendwann kurz vor dem Sterben nur bereuen, dass ich nie meine Träume verwirklichen konnte, weil ich einfach Angst hatte es zu wagen .

Ich brauche einfach große Veränderung ! Ich will mit den 25 Jahren ein komplett neues Leben beginnen damit ich später, wenn meine Zeit gekommen ist und ich sterbe sagen kann; JA ICH HABE VIELE FEHLER IN MEINEM LEBEN GEMACHT ABER EINS KANN ICH SAGEN , ICH BIN GLÜCKLICH MEIN EIGENS WEG GEGANGEN ZU SEIN UND ALLES DAFÜR GEGEBEN MEINE TRÄUME ZU ERREICHEN UND QUASIE MEIN TRAUM GELEBT ZU HABEN . ICH BIN FROH KEIN 0815 LEBEN GEFÜHRT ZU HABEN WIE ES MEINE ELTERN SO WOLLTEN . ES WAR NICHT IMMER EINFACH ABER ES WAR EIN GROßES ABENTEUER WELCHES ICH NIE VEGRESSEN WERDE UN D DAFÜR BIN ICH MIR DANKBAR DIESEB SCHRITT MIT 25 JAHREN GEMACHT ZU HABEN ...

Ich will mein erspartes Geld (ca 5000 Euro) nehmen und in die andere Stadt fahren

und dort mir ein neues Leben aufbauen und mein Traum verwirklichen !

Ich habe mir es so vorgestellt , ich suche mir eine Stadt die etwas weiter weg ist dann fahre ich dahin und wohne für kurze Zeit in einem Hostel, dann finde ich eine Übergangsarbeit (wahrscheinlich McDonalds denn die nehmen jeden auf (; und dann versuche ich so schnell wie möglich eine Wohnung zu finden vlt sogar mithilfe vom Stadt, falls ich alleine es nicht schaffe (:

Und wenn ich eine Arbeit habe, mit der ich mich finanzieren kann und eine Wohnung habe wo ich leben kann , will ich mich versuchen Selbständig zu machen und meine Träume verwirklichen.

Wie findet Ihr mein Vorhaben? Kann man es so machen? Würdet Ihr es auch so machen? Habt Ihr welche Tipps für mich ?

Reise, Leben, Arbeit, Geld verdienen, Selbständigkeit, Wohnung, Freundschaft, Wirtschaft, Ausland, Deutschland, Ausbildung, Business, Traum, Recht, Eltern, Stadt, Auswandern USA, ausziehen, Gesellschaft, Informatik, Selbstmord, neues leben, Videoprogramm, Ausbildung und Studium, Influencer
Logarithmenfunktionen nach asymptotischem Wachstum ordnen?

Guten Abend

Ansatz:

Zunächst erst mal alle unnötig kompliziert gegebenen Funktionen so umschreiben, dass sie sich vergleichen lassen

a (n) = 13n³, kann man nicht mehr vereinfachen

b (n) = log_4 n³ ist nichts anderes als 1,5 log_2 n

c (n) = 9 log_3 n hätt ich jetzt auch nicht weiter vereinfachen können

d (n) = log_2 4 n^4/3 ist nichts anderes als log_2 (4) + log2 (n^3/4), also 2 + 3/4 log_2 n

e (n) = n^log_4 n^4 kann man umschreiben zu n^2 log_2 (n).

Ich hätte die Funktionen also sortiert (von langsam nach schnell):

c < d < b < a < e.

Problem: Mein Tutor meinte die richtige Reihenfolge wäre: d < b < c < e < a.

Ich versteh es nicht. c. hat ja log_3 (n) und das ist ja schon mal langsamer als alles mit log_2 (n). Bei d und b bin ich mir unsicher, weil die ja eigentlich asymptotisch gleich schnell wachsen sollten. b wächst vielleicht bissl schneller weil es mit 1,5 multipliziert wird, während d nur mit 3/4 multipliziert wird.

Großes Kopfzerbrechen bereitet mir die Tatsache, dass e langsamer wachen soll als a. Bei e (n) ist doch das "n" im Exponenten. Auch wenn man im TR z.B. für n = 17 die Funktion e (n) eingibt, also 17^log_4 (17)^4 ist das 2.9210^21, also eine tierisch hoche Zahl. Wärend n = 17 in die Funtkion a(n) eingesetzt, lediglich 1317³ = 63869 ergibt, also viel weniger wächst. Auf desmos kann man die Funktionen plotten, und dort ist e (n) [bzw. ich musste es hier f(n) nennen, weil das Programm den Buchstaben "e" direkt als Euler'sche Phi-Funktion interpretiert] auch viel stärker an der y-Achse dran, also müsste es doch eigentlich stärker wachsen, or?

Bild zum Beitrag
Schule, Mathematik, Informatik, Logarithmus, Potenzen, Theoretische Informatik, Wachstum, Algorithmen und Datenstrukturen

Meistgelesene Beiträge zum Thema Informatik