Заранее прошу прощения, если такое уже есть на форуме (правда, я прогуглила - нашла лишь просто задания на паскале и просьбы на с++) С PHP знакома буквально 2 недели (пришлось поизучать). Но вот эти задания никак не могу одолеть, ибо не знаю как это сделать (кодово). А сдавать уже в понедельник. Заранее благодарю!!!!!!!!!!!!! 1. Описать функцию getInt(Name,k) целого типа, возвращающую k-й элемент файла целых чисел с именем Name (элементы нумеруются от 0). Если файл не существует или не содержит k-го элемента, то функция возвращает 0. С помощью этой функции вывести пять элементов данного файла с указанными номерами. 2. (Аналогичная) Описать функцию getLine(Name,k) строкового типа, возвращаю-щую k-ю строку текстового файла с именем Name (строки нумеруются от 0). Если файл не существует или не содержит k-й строки, то функция возвращает пустую строку. С помощью этой функции вывести пять строк данного файла с указанными номерами. 3. Описать функцию IntFileSize(Name) целого типа, возвращающую размер файла целых чисел с именем Name. Если файл не существует, то функция возвращает –1. С помощью этой функции определить размер трех файлов с данными именами. 4. Описать функцию TextSize(Name) целого типа, возвращающую число строк в текстовом файле с именем Name. Если файл не существует, то функция возвращает –1. С помощью этой функции определить размер трех файлов с данными именами. 5. Описать процедуру InvertIntFile(Name), меняющую порядок следования элементов файла целого типа с именем Name на противополож-ный. Если файл не существует или содержит менее двух элементов, то процедура не выполняет никаких действий. Обработать с помощью этой процедуры три файла с данными именами.
PHP: <?php function getLine($name, $k) { if(is_file($name)) { $lines = file($name); if(isset($lines[$k])) { return $lines[$k]; } else return ''; } else return ''; } ?> Остальные (кроме первого ибо не понятно как структурированы числа) щас напишу.
PHP: <?php function intFileSize($name) { if(is_file($name)) { return filesize($name); } else return -1; } ?>
PHP: <?php function TextSize($name) { if(is_file($name)) { return sizeof(file($name)); } else return -1; } ?>
Asselka Первого и последнего я не понял. Походу тот, кто писал пятое задание, развалившийся ассексуальный геронтофил с сухими жмаными яйцами и хорошо подмоченной репутацией. Умных слов много, а сути НЕТ. Уточни задание до понятного мне уровня.
Asselka вобще-то за это деньги платят... или ставят бутылку преподу PHP: <?php /* * Описать функцию getInt(Name,k) целого типа, * возвращающую k-й элемент файла целых чисел с именем Name * (элементы нумеруются от 0). * Если файл не существует или не содержит k-го элемента, * то функция возвращает 0. * С помощью этой функции вывести пять элементов данного файла с указанными номерами. * */ // лезем на php.net за примером к функции file() - эта функция читает файл и пихает его в массив, где каждый элемент - строка из файла. function getInt($name, $k) { $lines = file($name); //в описании функции file() сказано, что если файл открыть не удастся - она вернет false. Пустой массив тоже будет считаться за false и условие не выполнится. if ($lines) { //в задаче сказано, что элемент номер $k может не существовать, надо проверить, присутствует ли он в массиве с помощью функции isset() if (isset($lines[$k])) { //элемент есть, можем вернуть его целочисленное значение return intval($lines[$k]); //функция intval() применяется для получения целочисленного значения из строки. например "7ляля12ля" вернет 7 =) } } //если хоть одно условие не прошло, мы оказываемся тут и возвращаем ноль. return 0; } echo getInt('имя файла', 5); echo getInt('имя файла', 12); //и так далее. /* * Описать функцию getLine(Name,k) строкового типа, * возвращаю-щую k-ю строку текстового файла с именем Name * (строки нумеруются от 0). * Если файл не существует или не содержит k-й строки, * то функция возвращает пустую строку. * С помощью этой функции вывести пять строк данного файла с указанными номерами. * */ function getLine($name, $k) { $lines = file($name); return (isset($lines[$k]) ? $lines[$k] : ''); } //=) хехехе /* * Описать функцию IntFileSize(Name) целого типа, * возвращающую размер файла целых чисел с именем Name. * Если файл не существует, то функция возвращает –1. * С помощью этой функции определить размер трех файлов с данными именами. * */ function IntFileSize($name) { return (file_exists($name) ? filesize($name) : -1); } /* * Описать функцию TextSize(Name) целого типа, * возвращающую число строк в текстовом файле с именем Name. * Если файл не существует, то функция возвращает –1. * С помощью этой функции определить размер трех файлов с данными именами. * */ function TextSize($name, $k) { $lines = file($name); return ($lines !== false ? count($lines) : -1); } /* * Описать процедуру InvertIntFile(Name), * меняющую порядок следования элементов файла целого типа с именем Name на противополож-ный. * Если файл не существует или содержит менее двух элементов, * то процедура не выполняет никаких действий. * Обработать с помощью этой процедуры три файла с данными именами. * */ function InvertIntFile($name, $k) { $lines = file($name); //грузим файл //проверяем, что файл прочитался и нужного размера if (count($lines) > 1) { //переворачиваем return array_reverse($lines); } else { //а тут мы ничего не делаем. } } //Победа!
Странное у вас отношение, однако! Я девушка. Мне кажется если бы я была б парнем (как вы думаете), у меня хватило б больше усидчивости добить эти задачки.Во всяком случае большое вам спасибо! Выручили!
Asselka обычно как раз девочки усидчивее. однако я предчувствую вопросы препода про вопросительные знаки.