Was ist hier genau das Problem (Programmieren = p5.js)?

Ich habe ein Problem mit dem programmieren, da angeblich p5js sagt: There's an error due to \"keyIsDown\" not being defined in the current scope (on line 36 in jspg?

Ich habe mal meinen Code hineinkopiert und hoffe, dass jemand hier mir helfen kann. (Ist ein Projekt für die Schule).

Ich würde gerne das Programm, wie es hier steht, ohne Probleme es zum laufen zu bringen.

let v;

let b;

let n;

let m;

let vGeschwindigkeit;

let bGeschwindigkeit;

let nGeschwindigkeit;

let mGeschwindigkeit;

function setup() {

createCanvas(310, 400);

background('lightgray');

v = -200;

b = -200;

n = -200;

m = -200;

vGeschwindigkeit = random(6); // Eine Zufallszahl zuordnen

bGeschwindigkeit = random(6); // Eine Zufallszahl zuordnen

nGeschwindigkeit = random(6); // Eine Zufallszahl zuordnen

mGeschwindigkeit = random(6); // Eine Zufallszahl zuordnen

}

function draw() {

background(240); // Löscht Bild

rect(10, v, 65, 100);

fill('black');

rect(85, b, 65, 100);

fill('black');

rect(160, n, 65, 100);

fill('black');

rect(235, m, 65, 100);

fill('white');

circle(mouseX, mouseY, 10); // Mauszeigerkreis

fill('black');

}

if (keyIsDown(82)) { //taste r -> Spiel neu

setup();

}

if (mouseIsPressed) {

  rgbFarbwerte = get(mouseX, mouseY);

  if (rgbFarbwerte[0] > 0) {

  v = -200;

  b = -200;

  n = -200;

  m = -200; //Falls man den Hintergrund drückt, dann soll das Spiel nochmal von Anfang an wieder starten.

  }

}

if (mouseIsPressed) {

if (10 < mouseX && mouseX < 75 &&

v < mouseY && mouseY < v + 100) {

v = -200; //Taste 1 geht in die Ausgangslage

vGeschwindigkeit = random(6); //ändert Geschwindigkeit nochmal

}

}

if (mouseIsPressed) {

if (85 < mouseX && mouseX < 150 &&

b < mouseY && mouseY < b + 100) {

b = -200; //Taste 2 geht in die Ausgangslage

bGeschwindigkeit = random(6); //ändert Geschwindigkeit nochmal

}

}

if (mouseIsPressed) {

if (160 < mouseX && mouseX < 225 &&

n < mouseY && mouseY < n + 100) {

n = -200; //Taste 1 geht in die Ausgangslage

nGeschwindigkeit = random(6); //ändert Geschwindigkeit nochmal

}

}

if (mouseIsPressed) {

if (235 < mouseX && mouseX < 310 &&

m < mouseY && mouseY < m + 100) {

m = -200; //Taste 1 geht in die Ausgangslage

nGeschwindigkeit = random(6); //ändert Geschwindigkeit nochmal

}

}

v = v + vGeschwindigkeit;

if (v > height) {

v = -100;

vGeschwindigkeit = random(6); // Eine Zufallszahl zuordnen für Taste 1

}

b = b + bGeschwindigkeit;

if (b > height) {

b = -100;

bGeschwindigkeit = random(6); // Eine Zufallszahl zuordnen für Taste 2

}

n = n + nGeschwindigkeit;

if (n > height) {

n = -100;

nGeschwindigkeit = random(6); // Eine Zufallszahl zuordnen für Taste 3

}

m = m + mGeschwindigkeit;

if (m > height) {

m = -100;

mGeschwindigkeit = random(6); // Eine Zufallszahl zuordnen für Taste 4

}

PC, Computer, programmieren, JavaScript, Informatik, Programmiersprache
Einfaches JavaScript-Spiel per Tastendruck neu starten?

Wir hatten in der Schule den Auftrag ein einfaches JavaScript-Spiel zu programmieren. Ich will das Programm nun durch einen Druck auf die Taste "R" neu starten. Hier ist der Code:

let start,
ziel,
ballradius,
rgbFarbwerte,
x,
y;
function setup() {
  createCanvas(400, 400);
  background('black');
  stroke("white");
  start = circle(60, 390, 10);
  ziel = circle(40, 390, 10);
  ballradius = 2;
  x = 60;
  y = 390;
}
function draw() {
  //lösche bild
  background("black");
  //zeichne Spielfeld
  fill('white');
  stroke("white");
  rect(20, 300, 80, 100);
  rect(50, 300, 100, 60);
  rect(140, 260, 50, 100);
  rect(140, 240, 120, 40);
  rect(230, 170, 30, 100);
  rect(160, 160, 100, 30);
  rect(160, 40, 20, 120);
  rect(160, 40, 100, 10);
  rect(260, 1, 5, 49);
  //zeichne Start-,Endpunkt
  fill("blue");
  stroke("blue");
  circle(60, 390, 10);
  fill("red");
  stroke("red");
  circle(262.25, 10, 10);
  rgbFarbwerte = get(x, y);
  if (rgbFarbwerte[0] === 0 && rgbFarbwerte[1] === 0 && rgbFarbwerte[2] === 0) {
    background("red");
    console.clear();
    console.log("Game over");
  }
  if (rgbFarbwerte[0] === 255 && rgbFarbwerte[2] === 0) {
    background("green");
    console.clear();
    console.log("You win");
  }
  //zeichne Kreis
  stroke("lightgreen");
  fill("lightgreen");
  circle(x, y, 4);
  //steuere Kreis
  if (keyIsDown(68)) { //taste d -> nach rechts
    x = x + 2;
  }
  if (keyIsDown(65)) { //taste a -> nach links
    x = x - 2;
  }
  if (keyIsDown(87)) { // taste w -> nach oben
    y = y - 2;
  }
  if (keyIsDown(83)) { // taste s -> nach unten
    y = y + 2;
  }
}
Computer, Schule, Technik, programmieren, JavaScript, Informatik
Java - Komponenten aus einem Graph berechnen / Algorithmus?

Hallo, ich arbeite gerade an einem Graphenprogramm und der nächste Schritt ist es ,mir die Zusammenhangskomponenten des Graphes auslesen zu lassen.

Eine dafür notwendige Wegmatrix habe ich schon programmiert:

public void berechneKomponenten()
    {
        
        for (int i = 0; i < Matrix.length; i++)
        {
            for(int j = 0; j < Matrix[i].length; j++)
            {
                if(WegMatrix[i][j] == 1)
                {
                    int buchstabe_int = i+65;
                    char buchstabe_char = (char) buchstabe_int;
                    
                    System.out.print(buchstabe_char + ",");
                }                        
            }        
        }
    }

Die Ausgabe sieht so aus:

A, A, A, B, B, C, C, C, D, D, D, E, E

--------------------------------------------------------

Und das ist im Prinzip auch richtig, denn:

Die Buchstaben (A-E) habe ich zum Verständnis hinzugefügt.
-------------------------------------------------------------------------------------

Meine Wegmatrix hat:

  • 3 A's
  • 2 B's
  • 3 C's
  • 3 D's
  • 2 E's

Verglichen mit meiner Ausgabe:

A, A, A => 3 A's
B, B => 2 B's
C, C, C => 3 C's
D, D, D = > 3 D's
E, E => 2 E's

-----------------------------------

Doch die Ausgabe sollte so aussehen: (Siehe K1 und K2)

bzw so:

Wie schaffe ich das?

Danke!

Bild zum Beitrag
Computer, programmieren, Java, Informatik
Warum wird meine SIM-Karte regelmäßig nicht erkannt?

Hallo liebe Gutefrage.net Community

Sehr häufig (paar mal am Tag) passiert es mir, dass ich mein Handy benutze und plötzlich die Nachricht kommt: "Keine SIM-Karte eingelegt". Zwar wird sie nach wenigen Minuten wieder erkannt, aber es ist dennoch nervig, wenn diese Nachricht aufploppt, während ich mein Handy benutze. Auch wurde die einmal während eines Anrufes nicht erkannt, weshalb dieser Anruf dann natürlich abgebrochen wurde. War schön ärgerlich.

Ich weiß ehrlich gesagt nicht, woran das liegen kann. In den ersten 1-1,5 Jahren hat sich dieses Problem nicht bemerkbar gemacht. Ich habe auch mehrmals überprüft, ob die SIM-Karte auch fest in ihrem Slot sitzt und das tat sie auch. Aktuell bin ich im zweiten Jahr, in dem ich das Samsung Galaxy A50 benutze.

Wenn ich mein Handy auf dem Tisch liegen habe und dann die Karte nicht erkannt wird, wird sie auch nach wenigen Minuten wieder erkannt, OBWOHL ich das Teil nicht einmal angefasst habe. Das ergibt für mich auch keinen wirklichen Sinn.

Ich hoffe, ihr könnt mir eine Erklärung für dieses Problem geben und ggf. auch noch eine Lösung angeben, da es nicht gerade ein schönes Gefühl ist, bei jedem Anruf mit der Angst zu leben, dass der Anruf auf einmal abbrechen kann.

Ich bedanke mich im Voraus für eure Antworten :))

Gruss

Handy, Internet, Smartphone, Technik, Telefon, Elektronik, IT, Anruf, Informatik, SIM-Karte, Technologie

Meistgelesene Beiträge zum Thema Informatik