Учебные задачи PHP. Задача 1

<?php
/**
 * Решение для задачи №1 из курса PHP
 * 
 * Вывести на экран N случайных чисел (каждое с новой строки) из диапазона [-21, 35]
 * ПРИМЕЧАНИЕ: подразумевается, что вы должны организовать цикл, 
 * который выполнится N раз 
 * и при этом в каждом своём витке выведет на экран случайное число.
 */

	$n = 15; //переменная для хранения требуемого количества элементов
	$randNums = getRandNumber($n);//Служебная переменная для хранения массива случайных чисел получаемых функцией
	for ($i = 0; $i < count($randNums); $i++){ //Цикл для вывода чисел
		echo $randNums[$i]."<br>";
	}
	//Функция принимает на входе в качестве параметра число элементов. 
	//возвращает массив элементов
	function getRandNumber($int) {
		$numbers = array();
		for ($i=0; $i < $int; $i++) { 
			$numbers [] = rand(-21, 35);
		}
		return $numbers;
	}
?>

список задач

vedro-compota's picture

  1. $int - неподходящее имя переменной (см. об именовании), в данном случае подошел бы count - так как это у вас количество значений.
  2. ваш код решает задачу, но дайте ниже в комментарии пример решения - функции которая бы принимала число и выводила значения на экран сама без использования массива.

_____________
матфак вгу и остальная классика =)

toyrik's picture

Поправил. Но В процессе правки возник вопрос:
какой практический смысл у функции не возвращающей значение а выводящей её на экран?... ну за echo - понятно.. она как мне кажется для этого и придумывалась.

<?php
/**
 * Решение для задачи №1 из курса PHP
 * 
 * Вывести на экран N случайных чисел (каждое с новой строки) из диапазона [-21, 35]
 * ПРИМЕЧАНИЕ: подразумевается, что вы должны организовать цикл, 
 * который выполнится N раз 
 * и при этом в каждом своём витке выведет на экран случайное число.
 * 
 * UPD привести пример функции которая бы принимала число
 * и выводила значения на экран сама без использования массива.
 */

	getRandNumber(13);
	
	function getRandNumber($count) {
		
		for ($i=0; $i < $count; $i++) { 
			echo rand(-21, 35)."<br>";
		}
	}
?>
vedro-compota's picture

решение засчитано

какой практический смысл у функции не возвращающей значение а выводящей её на экран?

это учебная задача, часто функция не оказывает побочный эффект вы правы, но на практике иногда пишут функции и чисто для вывода данных в каком-то виде, так что все бывает.

_____________
матфак вгу и остальная классика =)