PHP :: Aufgabe #269 :: Lösung #1

1 Lösung Lösung öffentlich
#269

Überholen: benötigte Strecke und Dauer berechnen

Anfänger - PHP von Waldgeist - 22.04.2020 um 10:55 Uhr
Es soll ein Programm für die Berechnung von Überhol-weg und Überhol-zeit (bei angenommener konstanten Geschwindigkeit) erstellt werden.

Dazu werden die Länge der beiden Fahrzeuge (l1 und l2) und deren Geschwindigkeit (v1 und v2) angegeben.

Aus diesen Daten ermitteln wir den Sicherheitsabstand (a).
Dieser soll der halben Geschwindigkeit entsprechen. Also bei 100 km/h sind 60 m Sicherheitsabstand einzuhalten.

Die benötigte Strecke berechnen wir dann nach folgender Formel:

s = v1 / (v1−v2) * (l1+l2+2*a)

Weitere Information findet ihr hier: Video


Viel Spaß!

#1
vote_ok
von Exception (7090 Punkte) - 11.05.2020 um 19:25 Uhr
main.php
Quellcode ausblenden PHP-Code
<?php

array_shift($argv); // remove script name

if (sizeof($argv) !== 4) {
  die('Error: 4 arguments expected, ' . sizeof($argv) . ' provided.' . PHP_EOL);
}

$length0    =  floatval($argv[0]); 
$length1    =  floatval($argv[1]); 
$velocity0  =  floatval($argv[2]);
$velocity1  =  floatval($argv[3]);

if ($velocity0 === $velocity1) {
  die('Error: Both cars have the same speed.' . PHP_EOL);
}
elseif ($velocity0 < $velocity1) {
  die('Error: Second car is faster.' . PHP_EOL);
}

$saftyDistance = $velocity0 / 2;

$result = $velocity0 / ($velocity0 - $velocity1) * ($length0 + $length1 + 2 * $saftyDistance);

var_dump($result);

Konsolenausgabe:

php main.php 10.0 10.0 100.0 101.0
Error: Second car is faster.

php main.php 10.0 10.0 100.0 10.0
float(133.33333333333)

php main.php 10.0 10.0 100.0 100.0
Error: Both cars have the same speed.

php main.php 10.0 10.0 101.0 100.0
float(12221)

Kommentare:

Für diese Lösung gibt es noch keinen Kommentar

Bitte melden Sie sich an um eine Kommentar zu schreiben.
Kommentar schreiben