Программирование и решение задач в пакете MathCAD

       

Запись данных в файл


Для создания неструктурированных файлов используется две функции:

 WRITE («Имя файла») : = «Данные»

APPEND («Имя файла») : = «Данные»

При использовании этих функций  следует помнить:

  • если в функции WRITE указано имя существующего файла, то он заменяется новым файлом  без предупреждения. Следовательно, этой функцией нельзя пользоваться для добавления  данных в конец существующего файла;
  • функция APPEND используется для добавления данных в конец существующего файла. Если файл не существует, то эта функция создает его, записывая туда данные;
  • каждое обращение к функции APPEND добавляет в файл данные, начиная с новой строки (новую запись);
  • ДАННЫЕ – это только один элемент из следующего списка:
  • Ø    имя простой переменной;

    Ø    имя массива с указанием индексного выражения;

    Ø    значение числовой константы;

    • для записи нескольких элементов необходимо вызов функции поставить в тело цикла, параметр которого индексируется выражением (см. пример 1.2.1).
    • Пример 1.2.1.  Записать в файл следующую информацию:

      • значение переменной
        ;
      •  значений случайных чисел из интервала [0, 99];
      •  значений целых чисел от 0 до
        .


      • Фрагмент документа, осуществляющий запись таких файловых данных, приведен на рис. 1.2.1. Здесь функция rnd(a) генерирует случайные числа, равномерно распределенные в интервале [0, a], а функция floor(x) – вычисляет наибольшее целое число, меньшее или равное вещественному числу x. В окне программы Блокнот хорошо видна структура сформированного файла.  ¦

        Рис. 1.2.1. Запись неструктурированного  файла

        Замечание 1.2.1. Рассмотренные функции создания неструктурированного файла входили в состав более ранних версий пакета MathCAD (до версии MathCAD2000 включительно). В русифицированной версии  MathCAD2001i обращение к этим функциям вызывает ошибку (см. рис. 1.2.2), поэтому рекомендуется работать только с функциями создания  структурированных файлов.

                  


        Рис. 1.2.2. Ошибка при обращении к функции WRITE
        Для создания структурированных файлов используются две функции:
          WRITEPRN («Имя файла») := <данные>
        appendPRN («Имя файла») := <данные>
        При использовании этих функций необходимо помнить:
        • если в функции WRITEPRN указано имя существующего файла, то этот файл заменяется новым файлом без предупреждения;

        • функция APPENDРRN используется для добавления данных в конец существующего файла. При этом число столбцов добавляемого массива должно совпадать с числом столбцов массива, уже записанного в файл. Это правило позволяет добавлять в конец файла векторы с любым числом элементов;

        • в качестве разделителя между числами записывается  пробел, в конце каждой строки осуществляется переход на новую строку;

        • ДАННЫЕ – это только один элемент из следующего списка:

        • Ø    имя простой переменной;
          Ø    имя массива;
          Ø    значение числовой константы.
                 Если необходимо записать в файл несколько переменных, то из них нужно сформировать вектор, который затем записывается в файл.
          Структура создаваемого файла определяется следующими системными переменными:
          PRNCOLWIDTH – количество позиций, отводимых под один столбец (по умолчанию равно 8);
          PRNPRECISION – число задаваемых цифр после десятичной точки в записи числа (по умолчанию равно 4).
          Значения этих параметров можно изменить, обратясь к пункту меню Математика, команда Опции, вкладка Встроенные переменные.
          Пример 1.2.2. Записать в файл матрицу В, k-й столбец которой есть выборка из нормального распределения с математическим ожиданием
           и среднеквадратическим отклонением
           (дисперсия соответственно
          ).
          Фрагмент документа, осуществляющий запись структурированного файла, приведен на рис. 1.2.3. В окне программы Блокнот хорошо видна структура сформированного файла (число строк n = 5, число столбцов m = 4).    ¦






                     
                           Рис. 1.2.3. Запись структурированного  файла


          Задание 1.2.1. Составить фрагмент документа MathCAD, формирующий файл, содержащий два столбца:
          • первый столбец содержит значения
             определяемые по формуле:

          •                                    
            ;
            • второй столбец содержит функции
              , где

            •                                  
              .       ?
              Задание 1.2.2.  Составить фрагмент документа MathCAD, который формировал  файл, содержащий кроме матрицы В, определяемой условиями примера 1.2.2,   добавленную в конец файла матрицу С размерности
              , k-й столбец которой есть выборка из нормального распределения с математическим ожиданием
              и дисперсией
              .  ?
              Замечание 1.2.2. Создаваемый в MathCAD файл данных достаточно просто просмотреть и отредактировать в текстовом редакторе, отображающем ASCII-данные. Примерами таких редакторов может служить программа  Блокнот, входящая в состав Windows (Программы Þ Стандартные), а также редакторы языков программирования – PASCAL, СИ и др.
              Задание 1.2.3. Используя программу Блокнот, проверьте правильность формирования файла в задании 1.2.2.    ?

              Содержание раздела