@Rouslan943

Как будет на php этот рубинный код?

for i in (1..7).reverse_each do
    puts "Осталось #{i} секунд#{case i 
                                  when 2..4 then "ы" 
                                  when 1 then "а" 
                                  else "" 
                                end }..."
    sleep(1)
  end
  puts "Готово!
  • Вопрос задан
  • 283 просмотра
Решения вопроса 4
@itxor
PHP/Golang/VueJS Developer
<?php

        for ($i = 7; $i >= 1; $i--) {
            $ending = '';
            if ($i === 1) {
                $ending = 'a';
            } elseif ($i  >= 2 && $i <= 4) {
                $ending = 'ы';
            }
            echo "Осталось {$i} секунд{$ending} ...\n";
            sleep(1);
        }
        echo "Готово!";
Ответ написан
Комментировать
DevMan
@DevMan
foreach(range(7, 1) as $i) {
	echo "Осталось {$i} секунд";
	switch($i) {
		case($i >= 2 && $i <=4):
			echo "ы";
			break;
		case($i == 1):
			echo "а";			
	}
	echo "...", PHP_EOL;
	sleep(1);
}
echo "Готово!";
Ответ написан
@RivalCode
for ($i=7; $i > 0; $i--) { 
    print "Осталось $i секунд".(($i>=5)?"":($i==1?"а":"ы"))."\n";
    // sleep(1);
}
print "Готово!\n";
Ответ написан
Комментировать
npanuhin
@npanuhin
for ($i = 7; $i >= 1; $i--) {
	$end = "";
	switch ($i) {
		case 1:
			$end = "а";
			break;
		case 2: case 3: case 4:
			$end = "ы";
			break;
	}
	echo "Осталось $i секунд" . $end;
	// echo "<br>";
	
	sleep(1);
}
echo "Готово!";
// echo "<br>";
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы