fork download
  1. /*дан текст из нескольких предложений, предложение состоит из русских слов, разделенных пробелами. Написать программу,
  2. переставляющую слова в предложениях в обратном порядке. Знаки препинания в конце предложений (точка,
  3. восклицательный знак) можно не сохранять*/
  4. <?php
  5. //mb_internal_encoding("utf-8");
  6. $text = <<< EOF
  7. дан текст из нескольких предложений предложение состоит из русских слов разделенных пробелами. Написать программу
  8. переставляющую слова в предложениях в обратном порядке. Знаки препинания в конце предложений точка
  9. восклицательный знак можно не сохранять.
  10. EOF;
  11. $pattern = "/[.?!]/u";
  12. $sentences = preg_split($pattern, $text, -1, PREG_SPLIT_NO_EMPTY);
  13. $yodaSpeak = [];
  14. foreach ($sentences as $sentence){
  15. $sentence = mb_strtolower(mb_substr(trim($sentence), 0, 1)) . mb_substr(trim($sentence), 1);
  16. $words = preg_split("/\s/u", $sentence, -1, PREG_SPLIT_NO_EMPTY);
  17. $words = implode(" ", array_reverse($words));
  18. $words = mb_strtoupper(mb_substr($words, 0, 1)) . mb_substr($words, 1);
  19. $yodaSpeak[] = $words;
  20. }
  21. echo implode(". ", $yodaSpeak) . "\n";
  22. ?>
Runtime error #stdin #stdout #stderr 0s 82624KB
stdin
Standard input is empty
stdout
/*дан текст из нескольких предложений, предложение состоит из русских слов, разделенных пробелами. Написать программу,
переставляющую слова в предложениях в обратном порядке. Знаки препинания в конце предложений (точка,
восклицательный знак) можно не сохранять*/
stderr
PHP Fatal error:  Uncaught Error: Call to undefined function mb_strtolower() in /home/R9lo0n/prog.php:16
Stack trace:
#0 {main}
  thrown in /home/R9lo0n/prog.php on line 16