Programming Taskbook

English

E-mail:

Пароль:

Регистрация пользователя   Восстановление пароля

Электронный задачник по программированию

©  М. Э. Абрамян, 1998–2011

 

Задания | Операции ввода-вывода

PrevNext


О вводе исходных данных и выводе результатов

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

Исключение составляют задания из групп, связанных с ЕГЭ по информатике (ExamBegin и ExamTaskC). В заданиях из этих групп ввод исходных данных и вывод результатов необходимо выполнять с помощью стандартных средств используемого языка программирования.

Для получения краткой справки о средствах ввода-вывода, которые можно использовать для выбранного языка программирования, достаточно, находясь в окне задачника, нажать клавишу [F1] или кнопку со знаком вопроса «?» в правой части заголовка окна (окно задачника можно отобразить на экране, используя модуль PT4Demo или запустив на выполнение проект-заготовку, созданный с помощью модуля PT4Load).

Ниже приводится краткое описание процедур/функций ввода-вывода для каждого из языков программирования, доступных в задачнике Programming Taskbook версии 4.9 и выше. Более подробную информацию о вводе-выводе данных (в частности, об особенностях ввода-вывода для файлов и динамических структур) можно получить в разделе «Решения».

Язык Pascal

Ввод исходных данных:
   procedure GetB(var A: boolean);
   procedure GetN(var A: integer);
   procedure GetR(var A: real);
   procedure GetC(var A: char);
   procedure GetS(var A: string);
   procedure GetP(var A: PNode);
Вывод результатов:
   procedure PutB(A: boolean);
   procedure PutN(A: integer);
   procedure PutR(A: real);
   procedure PutC(A: char);
   procedure PutS(A: string);
   procedure PutP(A: PNode);

По поводу типа PNode см. описания групп заданий Dynamic и Tree.

При использовании задачника в средах программирования Pascal ABC и PascalABC.NET для ввода-вывода данных можно использовать стандартные процедуры Read и Write.

Язык C++

Ввод исходных данных:
   void GetB(bool& a);
   void GetN(int& a);
   void GetD(double& a);
   void GetC(char& a);
   void GetS(char* a);
   void GetS(string& a);
   void GetP(TNode*& a);
Вывод результатов:
   void PutB(bool a);
   void PutN(int a);
   void PutD(double a);
   void PutC(char a);
   void PutS(char* a);
   void PutS(string a);
   void PutP(TNode* a);

Для ввода-вывода данных может также использоваться поток ввода-вывода pt, позволяющий добиться более компактной записи. Например, вместо последовательности вызовов функций GetN(a); GetD(b); GetS(s); достаточно указать один оператор чтения из потока: pt >> a >> b >> s;

По поводу типа PNode см. описания групп заданий Dynamic и Tree.

Язык Visual Basic

Ввод исходных данных:
   Public Sub GetB(ByRef A As Boolean)
   Public Sub GetN(ByRef A As Integer)
   Public Sub GetD(ByRef A As Double)
   Public Sub GetS(ByRef A As String)
Вывод результатов:
   Public Sub PutB(ByVal A As Boolean)
   Public Sub PutN(ByVal A As Integer)
   Public Sub PutD(ByVal A As Double)
   Public Sub PutS(ByVal A As String)

Процедуры GetS и PutS должны использоваться как для ввода-вывода строк, так и для ввода-вывода символов (поскольку в языке Visual Basic отсутствует особый символьный тип данных).

Языки платформы .NET (C# и VB.NET)

Ввод исходных данных (C#):
   public static bool GetBool();
   public static int GetInt();
   public static double GetDouble();
   public static char GetChar();
   public static string GetString();
   public static Node GetNode();
Ввод исходных данных (VB.NET):
   Public Shared Function GetBool() As Boolean
   Public Shared Function GetInt() As Integer
   Public Shared Function GetDouble() As Double
   Public Shared Function GetChar() As Char
   Public Shared Function GetString() As String
   Public Shared Function GetNode() As Node
Вывод результатов (C#):
   public static void Put(params object[] a);
Вывод результатов (VB.NET):
   Public Shared Sub Put(ParamArray a() As Object)

Операции ввода-вывода для языков платформы .NET реализованы в виде классовых методов специального класса PT, доступного для любой программы, выполняющей учебное задание. В указании имени класса PT при вызове этих методов нет необходимости, так как решение задания оформляется в виде метода Solve класса, который является потомком класса PT (и, следовательно, получает все методы ввода-вывода «по наследству»).

Метод Put является универсальным методом вывода. В нем можно указывать любое число выводимых параметров любого допустимого типа (а именно, любого из типов, для которого предусмотрен метод ввода).

По поводу типа Node см. описания групп заданий Dynamic и Tree для платформы .NET.


PrevNext

 

Рейтинг@Mail.ru

Разработка сайта:
М. Э. Абрамян, В. Н. Брагилевский

Последнее обновление:
11.10.2011