3v4l.org

run code in 300+ PHP versions simultaneously
<?php // Função para garantir que o valor digitado seja positivo function lerVendas($ano) { do { echo "Digite o valor das vendas de $ano: "; $venda = trim(fgets(STDIN)); if ($venda <= 0) { echo "O valor deve ser positivo. Tente novamente.\n"; } } while ($venda <= 0); return $venda; } // Leitura dos valores de vendas para os anos 2020, 2021, 2022 e 2023 $vendas = []; $anos = [2020, 2021, 2022, 2023]; foreach ($anos as $ano) { $vendas[$ano] = lerVendas($ano); } // Verificação de quantos anos tiveram crescimento em relação ao ano anterior $crescimentoAnos = 0; for ($i = 1; $i < count($anos); $i++) { if ($vendas[$anos[$i]] > $vendas[$anos[$i - 1]]) { $crescimentoAnos++; } } // Cálculo do crescimento percentual entre 2020 e 2023 $crescimentoPercentual = (($vendas[2023] - $vendas[2020]) / $vendas[2020]) * 100; // Saídas echo "\nO número de anos em que as vendas cresceram em relação ao ano anterior: $crescimentoAnos\n"; echo "O crescimento percentual entre 2020 e 2023 foi de " . number_format($crescimentoPercentual, 2) . "%\n"; ?> <?php // Função para garantir que o valor digitado seja positivo function lerVendas($ano) { do { echo "Digite o valor das vendas de $ano: "; $venda = trim(fgets(STDIN)); if ($venda <= 0) { echo "O valor deve ser positivo. Tente novamente.\n"; } } while ($venda <= 0); return $venda; } // Leitura dos valores de vendas para os anos 2020, 2021, 2022 e 2023 $vendas = []; $anos = [2020, 2021, 2022, 2023]; foreach ($anos as $ano) { $vendas[$ano] = lerVendas($ano); } // Verificação de quantos anos tiveram crescimento em relação ao ano anterior $crescimentoAnos = 0; for ($i = 1; $i < count($anos); $i++) { if ($vendas[$anos[$i]] > $vendas[$anos[$i - 1]]) { $crescimentoAnos++; } } // Cálculo do crescimento percentual entre 2020 e 2023 $crescimentoPercentual = (($vendas[2023] - $vendas[2020]) / $vendas[2020]) * 100; // Saídas echo "\nO número de anos em que as vendas cresceram em relação ao ano anterior: $crescimentoAnos\n"; echo "O crescimento percentual entre 2020 e 2023 foi de " . number_format($crescimentoPercentual, 2) . "%\n"; ?>

Here you find the average performance (time & memory) of each version. A grayed out version indicates it didn't complete successfully (based on exit-code).

VersionSystem time (s)User time (s)Memory (MiB)
8.3.110.0500.01116.28
8.3.100.0480.00016.16
8.3.90.0300.00316.19
8.3.80.0220.01116.48
8.3.70.0280.00316.75
8.3.60.0200.00316.63
8.3.50.0170.00716.50
8.3.40.0160.00617.38
8.3.30.0170.00417.13
8.3.20.0280.00516.88
8.3.10.0120.00717.23
8.3.00.0000.01017.38
8.2.230.0090.00916.27
8.2.220.0290.00016.27
8.2.210.0290.00416.29
8.2.200.0190.00316.46
8.2.190.0170.00416.50
8.2.180.0140.00616.55
8.2.170.0310.00317.13
8.2.160.0300.00017.13
8.2.150.0260.00617.22
8.2.140.0320.00417.48
8.2.130.0130.00817.35
8.2.120.0180.00317.38
8.2.110.0160.00417.25
8.2.100.0200.00017.25
8.2.90.0200.00017.25
8.2.80.0150.01217.25
8.2.70.0170.00317.38
8.2.60.0250.00317.11
8.2.50.0180.00517.25
8.2.40.0230.01517.47
8.2.30.0190.00417.00
8.2.20.0330.00717.48
8.2.10.0160.00417.50
8.2.00.0320.00717.25
8.1.290.0310.01015.86
8.1.280.0190.02315.86
8.1.270.0380.00017.19
8.1.260.0350.01016.99
8.1.250.0300.01117.25
8.1.240.0330.00417.25
8.1.230.0260.01316.98
8.1.220.0300.00917.11
8.1.210.0330.00717.13
8.1.200.0350.00717.00
8.1.190.0380.00516.86
8.1.180.0230.00617.00
8.1.170.0220.00416.99
8.1.160.0270.00717.00
8.1.150.0280.00916.88
8.1.140.0350.00817.00
8.1.130.0350.00316.97
8.1.120.0290.00817.22
8.1.110.0250.00817.13
8.1.100.0260.01317.13
8.1.90.0270.01716.98
8.1.80.0300.01117.00
8.1.70.0260.01116.88
8.1.60.0250.01217.13
8.1.50.0340.00717.25
8.1.40.0280.01417.38
8.1.30.0270.00817.23
8.1.20.0340.01117.09
8.1.10.0290.00617.13
8.1.00.0340.00317.00

preferences:
140.03 ms | 940 KiB | 7 Q