aufgabe und vorlage vom 19.3.25

This commit is contained in:
danielvici123
2025-03-19 11:38:25 +01:00
parent 463fd164ed
commit 6ee3cb1211
10 changed files with 405 additions and 0 deletions

View File

@@ -0,0 +1,40 @@
<?php
require_once "personen-class.php";
class Lehrer extends Person{
// Attribute (Member)
private int $gehaltsstufe;
// spezieller (parametrisierter) Konstruktor
public function __construct(string $vn, string $nn, int $gs) {
parent::__construct($vn, $nn);
$this->setGehaltsstufe($gs);
}
// Öffentliche Zugriffsfunktionen
// Setter
public function setGehaltsstufe(int $gs): void {
$this->gehaltsstufe = $gs;
}
// Getter
public function getGehaltsstufe(): int {
return $this->gehaltsstufe;
}
// Sonstige Funktionen
public function ausgabe() { // Funktion ausgabe() der Elternklasse
// überschreibt => erweitern
parent::ausgabe();
echo "Gehaltsstufe: A$this->gehaltsstufe";
echo "</p>";
}
public function befoerdern():bool{
if($this->gehaltsstufe < 16){
$this->gehaltsstufe++;
return true;
}
return false;
}
}
?>

View File

@@ -0,0 +1,61 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<?php
ini_set("display_errors", "on");
require_once "lehrer-class.php";
require_once "schueler-class.php";
require_once "personen-class.php";
// --------------------
// L E H R E R T E S T
// --------------------
echo "<h2>Lehrer</h2>";
$l = new Lehrer("Michael", "Staudt", 13);
$l->ausgabe();
if($l->befoerdern()){
echo "<p>Beförderung erfolgreich!</p>";
echo "Neue Stufe: ".$l->getGehaltsstufe()."</p>";
}else {
echo "<p>Beförderung nicht erfolgreich, da höchste Stufe erreicht</p>";
}
// $l->ausgabe();
$l->befoerdern(); // A15
$l->befoerdern(); // A16
$l->befoerdern(); // A17
$l->befoerdern(); // A18
// A18 -> A19
if($l->befoerdern()){
echo "<p>Beförderung erfolgreich!</p>";
echo "Neue Stufe: ".$l->getGehaltsstufe()."</p>";
}else {
echo "<p>Beförderung nicht erfolgreich, da höchste Stufe erreicht</p>";
}
// ------------------------
// S C H U E L E R T E S T
// ------------------------
echo "<h2>Schüler</h2>";
$s = new Schueler("daniel", "vici123", "2BKI1");
$s->ausgabe();
// --------------------
// P E R S O N T E S T
// --------------------
echo "<h2>Personen</h2>";
$p = new Person("danielvici", "123");
$p->ausgabe();
?>
</body>
</html>

View File

@@ -0,0 +1,5 @@
<?php
// Hab nicht mit geschrieben...
?>

View File

@@ -0,0 +1,42 @@
<?php
class Person { // dient nur zur vererberung, kein objekt erzeugen
// Attribute (Member)
private string $vorname; // # protected, + public, - private
private string $nachname; // #
// spezieller (parametrisierter) Konstruktor
public function __construct(string $vn, string $nn) {
$this->setVorname($vn);
$this->setNachname($nn);
}
// Öffentliche Zugriffsfunktionen
// Setter
public function setVorname(string $vn): void {
$this->vorname = $vn;
}
public function setNachname(string $nn): void {
$this->nachname = $nn;
}
// Getter
public function getVorname(): string {
return $this->vorname;
}
public function getNachname(): string {
return $this->nachname;
}
// Sonstige Funktionen
public function ausgabe() {
echo "<p>";
echo "Vorname: $this->vorname<br>";
echo "Nachname: $this->nachname<br>";
}
}
?>

View File

@@ -0,0 +1,39 @@
<?php
require_once "personen-class.php";
class Schueler extends Person{
// Attribute (Member)
private string $klasse;
// spezieller (parametrisierter) Konstruktor
public function __construct(string $vn, string $nn, string $kl) {
parent::__construct($vn, $nn);
$this->setKlasse($kl);
}
// Öffentliche Zugriffsfunktionen
// Setter
public function setKlasse(string $kl): void {
$this->klasse = $kl;
}
// Getter
public function getKlasse(): string {
return $this->klasse;
}
// Sonstige Funktionen
public function ausgabe() {
parent::ausgabe();
echo "Klasse: $this->klasse";
echo "</p>";
}
public function versetzen():bool{
if($this->klasse == "2BKI1"){
$this->klasse = "2BKI2";
return true;
}
return false;
}
}
?>

View File

@@ -0,0 +1,40 @@
<?php
class Lehrer extends Person{
// Attribute (Member)
private int $gehaltsstufe;
// spezieller (parametrisierter) Konstruktor
public function __construct(string $vn, string $nn, int $gs) {
parent::__construct($vn, $nn);
$this->setGehaltsstufe($gs);
}
// Öffentliche Zugriffsfunktionen
// Setter
public function setGehaltsstufe(int $gs): void {
$this->gehaltsstufe = $gs;
}
// Getter
public function getGehaltsstufe(): int {
return $this->gehaltsstufe;
}
// Sonstige Funktionen
public function ausgabe() {
echo "<p>";
echo "Vorname: $this->vorname<br>";
echo "Nachname: $this->nachname<br>";
echo "Gehaltsstufe: A$this->gehaltsstufe";
echo "</p>";
}
public function befoerdern():bool{
if($this->gehaltsstufe < 16){
$this->gehaltsstufe++;
return true;
}
return false;
}
}
?>

View File

@@ -0,0 +1,61 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<?php
ini_set("display_errors", "on");
require_once "lehrer-class.php";
require_once "schueler-class.php";
require_once "personen-class.php";
// --------------------
// L E H R E R T E S T
// --------------------
echo "<h2>Lehrer</h2>";
$l = new Lehrer("Michael", "Staudt", 13);
$l->ausgabe();
if($l->befoerdern()){
echo "<p>Beförderung erfolgreich!</p>";
echo "Neue Stufe: ".$l->getGehaltsstufe()."</p>";
}else {
echo "<p>Beförderung nicht erfolgreich, da höchste Stufe erreicht</p>";
}
// $l->ausgabe();
$l->befoerdern(); // A15
$l->befoerdern(); // A16
$l->befoerdern(); // A17
$l->befoerdern(); // A18
// A18 -> A19
if($l->befoerdern()){
echo "<p>Beförderung erfolgreich!</p>";
echo "Neue Stufe: ".$l->getGehaltsstufe()."</p>";
}else {
echo "<p>Beförderung nicht erfolgreich, da höchste Stufe erreicht</p>";
}
// ------------------------
// S C H U E L E R T E S T
// ------------------------
echo "<h2>Schüler</h2>";
$s = new Schueler("daniel", "vici123", "2BKI1");
$s->ausgabe();
// --------------------
// P E R S O N T E S T
// --------------------
echo "<h2>Personen</h2>";
$p = new Person("danielvici", "123");
$p->ausgabe();
?>
</body>
</html>

View File

@@ -0,0 +1,42 @@
<?php
class Person {
// Attribute (Member)
private string $vorname;
private string $nachname;
// spezieller (parametrisierter) Konstruktor
public function __construct(string $vn, string $nn) {
$this->setVorname($vn);
$this->setNachname($nn);
}
// Öffentliche Zugriffsfunktionen
// Setter
public function setVorname(string $vn): void {
$this->vorname = $vn;
}
public function setNachname(string $nn): void {
$this->nachname = $nn;
}
// Getter
public function getVorname(): string {
return $this->vorname;
}
public function getNachname(): string {
return $this->nachname;
}
// Sonstige Funktionen
public function ausgabe() {
echo "<p>";
echo "Vorname: $this->vorname<br>";
echo "Nachname: $this->nachname<br>";
echo "</p>";
}
}
?>

View File

@@ -0,0 +1,59 @@
<?php
class Schueler {
// Attribute (Member)
private string $vorname;
private string $nachname;
private string $klasse;
// spezieller (parametrisierter) Konstruktor
public function __construct(string $vn, string $nn, string $kl) {
$this->setVorname($vn);
$this->setNachname($nn);
$this->setKlasse($kl);
}
// Öffentliche Zugriffsfunktionen
// Setter
public function setVorname(string $vn): void {
$this->vorname = $vn;
}
public function setNachname(string $nn): void {
$this->nachname = $nn;
}
public function setKlasse(string $kl): void {
$this->klasse = $kl;
}
// Getter
public function getVorname(): string {
return $this->vorname;
}
public function getNachname(): string {
return $this->nachname;
}
public function getKlasse(): string {
return $this->klasse;
}
// Sonstige Funktionen
public function ausgabe() {
echo "<p>";
echo "Vorname: $this->vorname<br>";
echo "Nachname: $this->nachname<br>";
echo "Klasse: $this->klasse";
echo "</p>";
}
public function versetzen():bool{
if($this->klasse == "2BKI1"){
$this->klasse = "2BKI2";
return true;
}
return false;
}
}
?>

View File

@@ -0,0 +1,16 @@
<?php
$n = 7;
$k = -2;
$i = 0;
while ($n != 1 && $i < 3){
$i++;
if ($n % 2 == 0) {
$n = ($n/2);
echo $n ;
} else {
$n = ((2 $k) + 1) $n + 1;
$k--;
echo $n ;
}
}
?>