PHP :: Aufgabe #13

3 Lösungen Lösungen öffentlich

Programmier-Basics: Bestellungsüberprüfung

Anfänger - PHP von Freki - 27.12.2012 um 14:55 Uhr
Bobs Schrauben Discount verlangt folgende Preise:

5 Cent pro Schraube
3 Cent pro Mutter
1 Cent pro Unterlegscheibe

Schreiben Sie ein Programm, das den Anwender nach der Anzahl der Schrauben,
Muttern und Beilegscheiben fragt und dann den Gesamtbetrag berechnet und ausgibt.
Zusätzlich überprüft das Programm die Bestellung. Es ist normalerweise ein Fehler, wenn mehr Schrauben als Muttern bestellt werden.
In diesem Fall gibt das Programm die Meldung aus: "Kontrollieren Sie Ihre Bestellung!"
Andernfalls gibt das Programm aus: "Die Bestellung ist okay."
In jedem Fall wird der Gesamtbetrag ausgegeben.

Konsolenausgabe:

Anzahl der Schrauben:
12
Anzahl der Muttern:
8
Anzahl der Unterlegscheiben:
24

Kontrollieren Sie Ihre Bestellung!

Gesamtbetrag: 108

Lösungen:

vote_ok
von Isparia (690 Punkte) - 30.12.2012 um 20:46 Uhr
Quellcode ausblenden HTML-Code
<form action ="aufgabe13.php" method="POST">
    <p>Anzahl Schrauben <input type="text" name="schrauben" /></p>
    <p>Anzahl Muttern <input type="text" name="muttern" /></p>
    <p>Anzahl Scheiben <input type="text" name="scheiben"/></p>
    <p><input type="submit" value="Bestellen" /></p>
</form>

Quellcode ausblenden PHP-Code
<?php
if(isset($_POST["schrauben"])){
$preisSchraube = 0.05;
$preisMutter = 0.03;
$preisUscheibe = 0.01;
$anzSchrauben = intval($_POST["schrauben"]);
$anzMuttern = intval($_POST["muttern"]);
$anzScheiben =intval($_POST["scheiben"]);
$preis = $anzSchrauben * $preisSchraube + $anzMuttern * $preisMutter + $anzScheiben * $preisUscheibe;
if($anzSchrauben !== $anzMuttern){
    if($anzMuttern > $anzSchrauben){
    echo " Sie haben weniger Schrauben als Muttern bestellt!<br/> Bitte Überprüfen sie ihre Bestellung<br/><br/> Der Komplettpreis der Bestellung beträgt : ".$preis." €";
    }
    elseif ($anzSchrauben > $anzMuttern) {
    echo " Sie haben weniger Muttern als Schrauben bestellt!<br/> Bitte Überprüfen sie ihre Bestellung<br/><br/> Der Komplettpreis der Bestellung beträgt : ".$preis." €";
    }
}
else{
       echo "Ihre Bestellung ist in Ordnung <br /><br/><br/> Der Komplettpreis der Bestellung beträgt : ".$preis." €";
       }
}
?>
vote_ok
von syneex (2650 Punkte) - 24.09.2018 um 09:19 Uhr
Quellcode ausblenden PHP-Code
<?php
CONST schraubenPreis = 5;
CONST mutternPreis = 3;
CONST unterlegscheibenPreis = 1;

//Hier wird die Anzahl der Schrauben usw. festgelegt
$anzahlSchrauben = 12;
$anzahlMuttern = 8;
$anzahlUnterlegscheiben = 24;

function displayElements($anzahl1, $anzahl2, $anzahl3)
{
	echo "Anzahl der Schrauben:<br>";
	echo $anzahl1 . "<br>";
	echo "Anzahl der Muttern<br>";
	echo $anzahl2 . "<br>";
	echo "Anzahl der Unterlegscheiben<br>";
	echo $anzahl3 . "<br>";
}
function checkOrder($anzahl1, $anzahl2)
{	
	if($anzahl1 > $anzahl2)
	{
		echo "<br>Kontrollieren Sie ihre Bestellung<br>";
	}
	else
	{
		echo "<br>Ihre Bestellung ist okay!<br>";
	}
}
function calculateSolution($anzahl1, $anzahl2, $anzahl3)
{
	$erg = ($anzahl1 * schraubenPreis) + ($anzahl2 * mutternPreis) + ($anzahl3 * unterlegscheibenPreis);
	echo "<br>Gesamtbetrag: " . $erg;
}

displayElements($anzahlSchrauben, $anzahlMuttern, $anzahlUnterlegscheiben);
checkOrder($anzahlSchrauben, $anzahlMuttern);
calculateSolution($anzahlSchrauben, $anzahlMuttern, $anzahlUnterlegscheiben);
?>


...Das ist zwar nicht die feine Informatiker Art, aber ich bin noch in den Anfängen der Programmierung, deshalb auch diese simple Herangehensweise. :)
vote_ok
von paddlboot (2970 Punkte) - 07.08.2019 um 14:17 Uhr
Quellcode ausblenden PHP-Code
<?php

$schrauben = 12;
echo 'Anzahl der Schrauben: '.$schrauben;

$muttern = 8;
echo '<br/>Anzahl der Muttern: '.$muttern;

$unterlegscheiben = 24;
echo '<br/>Anzahl der Unterlegscheiben: '.$unterlegscheiben;

$gesamtbetrag = $schrauben * 5 + $muttern * 3 + $unterlegscheiben * 1;

if($schrauben > $muttern)
{
	echo '<br/>Kontrollieren Sie Ihre Bestellung!<br/>';
}
else
{
	echo '<br/>Die Bestellung ist okay.<br/>';
}

echo $gesamtbetrag;

?>