Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Ввод-вывод без продвижения

Конструкция SELECT CASE | Упорядочение операторов | Уровни доступа | Спецификация входных-выходных параметров | Использование модуля | Внутренние процедуры | Связь с хозяином (Host) - глобальные данные | Объекты допустимого образа | Процедуры в качестве параметров | Родовые подпрограммы |


Читайте также:
  1. Алгоритм продвижения различных объектов в социальных сетях.
  2. Глава IV. Особенности формирования, продвижения и реализации туристского продукта
  3. Линии продвижения работ
  4. Методы продвижения товаров
  5. Методы формирования бюджета продвижения
  6. Низкоуровневый ввод-вывод

Нормальное действие оператора ввода-вывода состоит в продвижении к следующей записи по завершении оператора. Таким образом на вводе, если запись читалась только частично, остаток вводимой записи сбрасывается. На выводе оператор WRITE() будет завершен на позиции курсора в начале новой строки.

I/O без продвижения позволяет запись читать по частям (например, длинная запись неизвестной длины) или создавать искусный пользовательский интерфейс, где приглашение ввода и ответ пользователя появляется в одной и той же строке (но остерегайтесь, что это "аккуратное средство" не определено в стандарте Fortran и зависит от реализации).

Имеется комплексное множество правил, превращающих использование ввода-вывода без продвижения и его вариантов в соответствующие ключевые слова. Этот раздел имеет смысл только с весьма зависящим от реализации аспектами управления экраном. Ключевое слово ADVANCE должно быть использовано в операторах WRITE или READ следующим образом:

INTEGER:: i, j

...

WRITE(*,*,ADVANCE='NO') 'Введите значение i: '

READ(*,*) i

WRITE(*,*) ''Введите значение j: '! ADVANCE='YES'

READ(*,*) j

Если пользователь вводит значения 10 и 20 это должно появиься на экране следующим образом:

Введите значение i: 10

Введите значение j:

Ввод-вывод без продвижения выглядит ясно, но зависит от реализации.

Файловый ввод-вывод

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

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


Дата добавления: 2015-11-14; просмотров: 83 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Вещественные - форма с фиксированной точкой| Оператор OPEN

mybiblioteka.su - 2015-2024 год. (0.005 сек.)