Add Lektion4/Multidemsionale Arrays

This commit is contained in:
Tarek Dafay 2023-10-05 13:16:01 +02:00
parent dfa28f143d
commit c2e18f797a
4 changed files with 252 additions and 0 deletions

View File

@ -0,0 +1,41 @@
{
"version": "2.0.0",
"tasks": [
{
"label": "Run Sketch",
"type": "shell",
"group": {
"kind": "build",
"isDefault": true
},
"command": "/home/borsi/Documents/Uni/1_Semester/Prg/processing-4.3/processing-java",
"presentation": {
"echo": true,
"reveal": "always",
"focus": false,
"panel": "dedicated"
},
"args": [
"--force",
"--sketch=${workspaceRoot}",
"--output=${workspaceRoot}/out",
"--run"
],
"windows": {
"type": "process",
"args": [
"--force",
{
"value": "--sketch=${workspaceRoot}",
"quoting": "strong"
},
{
"value": "--output=${workspaceRoot}\\out",
"quoting": "strong"
},
"--run"
]
}
}
]
}

View File

@ -0,0 +1,99 @@
/*
1. Tic Tac Toe
Gegeben ist folgender Code:
String tictactoe [] [] = new String [3][3];
Befülle die Arrays mit Daten. Erweitere den Code so, damit das Programm in der Konsole folgendes ausgibt:
xox
oxo
xox
*/
/*
String tictactoe [] [] = {{"x", "o", "x"}, {"o", "x", "o"}, {"x", "o", "x"}};
for(int x = 0; x < 3; x++) {
for(int y = 0; y < 3; y++) {
print(tictactoe[x][y]);
}
print("\n");
}
*/
/*
2. Tabelle mit Studierenden
Gegeben ist folgender Code:
String studierende[] [] = new String [3][3];
int anzahlMing = 0;
int anzahlIni = 0;
Befülle die Arrays mit Daten. Im ersten Feld der zweiten Dimension des Arrays sollen Vornamen stehen, im zweiten Nachnamen und im dritten der Studiengang (Ming, INI, MMP, etc.).
Somit soll jede Zeile die Daten eines Studierenden enthalten. Lass dir die Daten zeilenweise ausgeben und füge ein Trennzeichen zwischen den Spalten ein (z.N. | oder ~).
Erweitere den Code so, damit das Programm in der Konsole (zum Beispiel) folgendes ausgibt:
Mara | Meier | Ming
Tom | Sawyer | INI
Luke | Skywalker | Ming
Anzahl der Studierenden: 3
Anzahl der Ming-Studierenden: 2
Anzahl der INI-Studierenden: 1
*/
/*
Ein Multidimensionaler Array ist nichts anderes als ein Array in einem Array.
Um in diesem Fall die Möglichkeit zu bieten >= 0 Studenten einzutragen, wird für die erste Dimensionen
die ArrayList benutzt.
Die ArrayList ist anders als der Array nicht an die Größe bei der Initialisierung gebunden.
Da wir wissen das ein Student immer drei Werte hat, wird für die zweite Dimension ein normaler Array benutzt.
Dieser Array wird dann in die ArrayList eingefügt. Zusammen bilden beide Arrays (Unter der Haube ist die ArrayList
auch ein Array) einen Multidimensionalen Array.it
*/
/*
int anzahlMing = 0;
int anzahlIni = 0;
ArrayList<String[]> studenten = new ArrayList<String[]>();
void setup() {
addStudent("Mara", "Meier", "Ming");
addStudent("Tom", "Sawyer", "INI");
addStudent("Luke", "Skywalker", "Ming");
drucken();
}
void addStudent(String vorname, String name, String studiengang) {
String student[] = {vorname, name, studiengang};
studenten.add(student);
if(studiengang == "Ming")
anzahlMing++;
else
anzahlIni++;
}
void drucken() {
for(int i = 0; i < studenten.size(); i++) {
print(studenten.get(i)[0] + " | " + studenten.get(i)[1] + " | " + studenten.get(i)[2] + "\n");
}
print(
"\n" +
"Anzahl der Studierenden: " + (anzahlMing + anzahlIni) + "\n" +
"Anzahl der Ming-Studierenden: " + anzahlMing + "\n" +
"Anzahl der INI-Studierenden: " + anzahlIni + "\n"
);
}
*/

View File

@ -0,0 +1,112 @@
/* autogenerated by Processing revision 1293 on 2023-10-05 */
import processing.core.*;
import processing.data.*;
import processing.event.*;
import processing.opengl.*;
import java.util.HashMap;
import java.util.ArrayList;
import java.io.File;
import java.io.BufferedReader;
import java.io.PrintWriter;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.IOException;
public class Multidimensionale_Arrays extends PApplet {
/*
1. Tic Tac Toe
Gegeben ist folgender Code:
String tictactoe [] [] = new String [3][3];
Befülle die Arrays mit Daten. Erweitere den Code so, damit das Programm in der Konsole folgendes ausgibt:
xox
oxo
xox
*/
/*
String tictactoe [] [] = {{"x", "o", "x"}, {"o", "x", "o"}, {"x", "o", "x"}};
for(int x = 0; x < 3; x++) {
for(int y = 0; y < 3; y++) {
print(tictactoe[x][y]);
}
print("\n");
}
*/
/*
2. Tabelle mit Studierenden
Gegeben ist folgender Code:
String studierende[] [] = new String [3][3];
int anzahlMing = 0;
int anzahlIni = 0;
Befülle die Arrays mit Daten. Im ersten Feld der zweiten Dimension des Arrays sollen Vornamen stehen, im zweiten Nachnamen und im dritten der Studiengang (Ming, INI, MMP, etc.).
Somit soll jede Zeile die Daten eines Studierenden enthalten. Lass dir die Daten zeilenweise ausgeben und füge ein Trennzeichen zwischen den Spalten ein (z.N. | oder ~).
Erweitere den Code so, damit das Programm in der Konsole (zum Beispiel) folgendes ausgibt:
Mara | Meier | Ming
Tom | Sawyer | INI
Luke | Skywalker | Ming
Anzahl der Studierenden: 3
Anzahl der Ming-Studierenden: 2
Anzahl der INI-Studierenden: 1
*/
int anzahlMing = 0;
int anzahlIni = 0;
ArrayList<String[]> studenten = new ArrayList<String[]>();
public void setup() {
addStudent("Mara", "Meier", "Ming");
addStudent("Tom", "Sawyer", "INI");
addStudent("Luke", "Skywalker", "Ming");
drucken();
}
public void addStudent(String vorname, String name, String studiengang) {
String student[] = {vorname, name, studiengang};
studenten.add(student);
if(studiengang == "Ming")
anzahlMing++;
else
anzahlIni++;
}
public void drucken() {
for(int i = 0; i < studenten.size(); i++) {
print(studenten.get(i)[0] + " | " + studenten.get(i)[1] + " | " + studenten.get(i)[2] + "\n");
}
print(
"\n" +
"Anzahl der Studierenden: " + (anzahlMing + anzahlIni) + "\n" +
"Anzahl der Ming-Studierenden: " + anzahlMing + "\n" +
"Anzahl der INI-Studierenden: " + anzahlIni + "\n"
);
}
static public void main(String[] passedArgs) {
String[] appletArgs = new String[] { "Multidimensionale_Arrays" };
if (passedArgs != null) {
PApplet.main(concat(appletArgs, passedArgs));
} else {
PApplet.main(appletArgs);
}
}
}