LoveRead.info » Книги » Разная литература » Интернет-журнал "Домашняя лаборатория", 2007 №5 - Федорочев

Интернет-журнал "Домашняя лаборатория", 2007 №5 - Федорочев

Книгу Интернет-журнал "Домашняя лаборатория", 2007 №5 - Федорочев читаем онлайн бесплатно полную версию! Чтобы начать читать не надо регистрации. Напомним, что читать онлайн вы можете не только на компьютере, но и на андроид (Android), iPhone и iPad. Приятного чтения!

268 0 19:00, 03-11-2022
Интернет-журнал "Домашняя лаборатория", 2007 №5 - Федорочев
03 ноябрь 2022

Книга Интернет-журнал "Домашняя лаборатория", 2007 №5 - Федорочев читать онлайн бесплатно без регистрации

Большой и увлекательный, научно-прикладной и образовательный, но некоммерческий интернет-журнал, созданный группой энтузиастов. Интернет-журнал содержит материалы, найденные в Интернет или написанные для Интернет. Основная тематика статей — то, что можно сделать самому, от садовых поделок до сверхпроводников, но есть и просто полезные материалы.

    1 ... 160 161 162 163 164 165 166 167 168 ... 319
    Перейти на страницу:
    Lesson 1

    $> = 0x10 | 0х0е;

    print "tt", "Number", "tt", "Square root of numbern";

    for ($i =1; $i < 10; $i++) {

    sleep 500;

    $> = 7; print "nntt";

    $> = 10; print $i;

    $> = 7; print "tt";

    $> = 12; print sqrt($i);

    }

    warn " ";

    Рассмотрим использованные в примере элементы языка QSL (также учтите сноску внизу статьи).

    Комментарии, то есть то, что не подлежит выполнению, показываются символом #. Действие этого символа простирается до конца строки. Символ; разделяет команды скрипта. Пробелы в командах и операторах игнорируются. Все команды и операторы должны быть в нижнем регистре (маленькие, прописные буквы).

    QSL интерпретатор не держит консоль открытой, консоль вызывается только при необходимости, при завершении скрипта закроется и консоль. Для того чтобы задержать консоль на экране в данном примере используется команда warn. Эта команда выводит указанное сообщение (то, что в парных кавычках, в нашем примере пустое место — пробел) или сообщения в диалоге и задает вопрос «да/нет». Если мы ответим «нет», то скрипт завершается (в нашем примере он в любом случае завершается, поскольку это последняя команда) с кодом «0» (нормальный выход с кодом «1»). Это может быть использовано при вызове QSL из других программ и скриптов (например, из *.bat файлов), но для нашего примера это сейчас неважно.

    Команда sleep приостанавливает выполнение скрипта на указанное число миллисекунд. Ее применение в данном примере не особо важно, просто замедляется вывод. В основном она используется для временного согласования вывода и вычислений. Интерпретатор производит вычисления достаточно быстро, тогда как вывод данных наружу зачастую должен осуществляться с определенным интервалом.

    Всю работу по выводу делает команда print. Она вызывает консоль и выводит указанный список данных. Элементы списка разделяются запятой. В частном случае может быть просто один элемент. То, что в двойных кавычках выводится как текст (символьная строка) и всегда преобразуется к этому виду. Обратите внимание, что этом примере выводимое первой командой print, можно записать как один элемент, а не список. Символьная строка может включать специальные (управляющие) символы. То, что это управляющий символ, указывается слешем .

    В примере для вывода использовался символ табуляции t и символ перевода строки n.

    Другим выводимым элементом является содержимое переменной с именем «i». Все переменные имеют предшествующий символ $. Переменные могут иметь любые имена, состоящие из букв, цифр и символа подчеркивания, но первый символ в имени переменной должен быть буквой. Имена переменных зависят от регистра, то есть переменные $Data и $data являются разными. Имена в разных видах хранения независимы, интерпретатор не спутает переменную $days с массивом переменных @days. Переменные в памяти компьютера создаются интерпретатором при первом их упоминании, так что мы не заботимся об их создании. Одни и те же переменные могут содержать числа и/или текст. Представление содержания переменных в нужном формате, при выводе, берет на себя интерпретатор. Если нам что-то не нравится в выводе, то нужно использовать команду форматированного вывода printf, хорошо знакомую программирующим на языке «С».

    Особой группой переменных являются системные переменные, они уже существуют до выполнения первой команды, содержат данные (которые по умолчанию) и их имена зарезервированы. В данном примере была использована системная переменная, хранящая цвет и фон выводимых символов $>.

    Запись в переменные осуществляется с помощью операции =. Обратите внимание, что в первой записи в переменную $>, участвовали два числа, в шестнадцатеричном представлении, объединенные в одно с помощью битовой операции «или»: |. А в дальнейшем записывалось десятичное представление кодов цвета — это кому, что нравится.

    Последняя команда print выводит значение, возвращаемое функцией квадратного корня из числа sqrt(). Вообще говоря, можно писать print($i) и sqrt $i, это кто как привык. То же самое можно сказать об использовании подавляющего большинства команд.

    В QSL последовательность (группа) команд может быть интерпретирована как одна команда (блок), если эта группа команд заключена в фигурные скобки. Блок может иметь присваиваемое имя, в этом случае он называется подпрограммой. В данном примере подпрограмм нет, но есть блок. В частном случае блок или подпрограмма может содержать только одну команду.

    Еще в этом примере есть оператор циклического повторения в форме for(EXPR1;EXPR2;EXPR3) BLOCK. В переводе на обычный язык это означает: выполнять блок BLOCK с начальным значением переменной из выражения EXPR1 до тех пор, пока будет верным выражение EXPR2, после каждого выполнения блока менять содержание переменной в соответствии с выражением EXPR3 (++ означает добавление единицы). Что интерпретатор и делал.

    Урок 2. Вывод в файл

    Скрипт Lesson 2 выводит в файл rand.txt 1000 случайных чисел в диапазоне от 0 до 100. Заодно вы можете проверить насколько распределение псевдослучайных чисел, генерируемых в QSL, соответствует равномерному распределению.

    # Lesson 2

    $file = "rand.txt";

    srand;

    open (DATA, "»\temp\$file") || die """";

    for($i=0; $i<1000; $i++) {

    print DATA $i, "t", int(rand(100)), "rn";

    }

    close DATA;

    До выполнения работы по выводу, скрипт осуществляет некоторые подготовительные мероприятия. Первым делом он записывает название файла в переменную $file. Это удобно тем, что в реальном скрипте название файла может использоваться несколько раз, если использовать вместо названия переменную с ним, то, в случае необходимости, смену названия можно сделать только в одном месте по тексту скрипта. QSL включает в себя также ряд средств для взаимодействия с пользователем — название файла можно вводить и в диалогах вызываемых командами ask, аореn.

    Второе мероприятие заключается в выборе начального значения псевдослучайной последовательности чисел командой srand. Эта команда без аргумента, в качестве его использует значение возвращаемое командой time, то есть значение счетчика секунд с момента начала компьютерной эры (1 января 1970 года, ровно в полночь).

    Вывод данных в файл осуществляет та же самая команда print, но с одним существенным дополнением. Для того чтобы сделать вывод в какой-нибудь файл или устройство, нужно указывать дескриптор для этого файла или устройства. Обратите внимание, что в команде print дескриптор указан сразу после имени команды и не отделяется запятой (не входит в список). Дескриптор файла на самом деле содержит всю необходимую информацию о файле или устройстве и должен быть предварительно создан командой open. В QSL заложен только один постоянный дескриптор CONSOLE, он просто используется командой print по умолчанию, поэтому не указывается, но дескриптор по умолчанию может быть изменен.

    Рассмотрим использование команды open в этом примере. DATA

    1 ... 160 161 162 163 164 165 166 167 168 ... 319
    Перейти на страницу:
    1. Жалоба
    Отзывы - 0

    Прочитали книгу? Предлагаем вам поделится своим отзывом от прочитанного(прослушанного)! Ваш отзыв будет полезен читателям, которые еще только собираются познакомиться с произведением.


    Уважаемые читатели, слушатели и просто посетители нашей библиотеки! Просим Вас придерживаться определенных правил при комментировании литературных произведений.

    • 1. Просьба отказаться от дискриминационных высказываний. Мы защищаем право наших читателей свободно выражать свою точку зрения. Вместе с тем мы не терпим агрессии. На сайте запрещено оставлять комментарий, который содержит унизительные высказывания или призывы к насилию по отношению к отдельным лицам или группам людей на основании их расы, этнического происхождения, вероисповедания, недееспособности, пола, возраста, статуса ветерана, касты или сексуальной ориентации.
    • 2. Просьба отказаться от оскорблений, угроз и запугиваний.
    • 3. Просьба отказаться от нецензурной лексики.
    • 4. Просьба вести себя максимально корректно как по отношению к авторам, так и по отношению к другим читателям и их комментариям.

    Надеемся на Ваше понимание и благоразумие. С уважением, администратор LoveRead.info.


    Установить VPN и читай слушай бесплатно

    Новые отзывы

    1. Валентина Валентина04 июль 13:25 Большое спасибо за интересную тему.  Сюжет заманчиввй,интересный. Жду продолжения ... Лекарь Фамильяров. Том 7 - Александр Лиманский
    2. Наталья По Наталья По01 июль 10:12 Ужасный перевод:(... Аркадия - Эрин Дум
    3. Вика Вика29 июнь 21:56 Какая хрень с первых строк.  У ребенка в 14 месяце не может быть черепно мозговой травмы при падании с дивана ... Вернуть семью любой ценой - Чарли Ви
    Все комметарии
    Новинки бесплатной онлайн библиотеки