err 0540 0541 поправил
This commit is contained in:
parent
acfce9b4f7
commit
b086568133
|
|
@ -15,7 +15,7 @@ internal static class RevisionClass
|
|||
public const string Major = "3";
|
||||
public const string Minor = "9";
|
||||
public const string Build = "0";
|
||||
public const string Revision = "3500";
|
||||
public const string Revision = "3502";
|
||||
|
||||
public const string MainVersion = Major + "." + Minor;
|
||||
public const string FullVersion = Major + "." + Minor + "." + Build + "." + Revision;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
%COREVERSION%=0
|
||||
%REVISION%=3500
|
||||
%REVISION%=3502
|
||||
%MINOR%=9
|
||||
%MAJOR%=3
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1 +1 @@
|
|||
3.9.0.3500
|
||||
3.9.0.3502
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
!define VERSION '3.9.0.3500'
|
||||
!define VERSION '3.9.0.3502'
|
||||
|
|
|
|||
|
|
@ -193,20 +193,21 @@ function ToObjArray(a: sequence of boolean): array of object;
|
|||
{ Основные процедуры для проверки правильности ввода-вывода }
|
||||
{=========================================================================}
|
||||
|
||||
// Самые часто используемые: CheckInput, CheckOutput, CheckOutputSeq
|
||||
// Самые часто используемые: CheckOutput
|
||||
// CheckInput заменено на CheckData
|
||||
|
||||
/// Проверить типы вводимых данных
|
||||
/// Проверить типы вводимых данных. Пользуйтесь CheckData(Input := cInt * 2)
|
||||
procedure CheckInput(a: array of System.Type);
|
||||
/// Проверить значения при выводе
|
||||
/// Проверить значения при выводе. Основной способ проверки
|
||||
procedure CheckOutput(params arr: array of object);
|
||||
/// Проверить значения при выводе. Сообщения ColoredMessage гасить. Нужно для повторных вызовов CheckOutput
|
||||
procedure CheckOutputSilent(params arr: array of object);
|
||||
/// Проверить значения при выводе
|
||||
/// Проверить значения при выводе. Основной способ проверки
|
||||
procedure CheckOutput(a: ObjectList);
|
||||
/// Проверить значения при выводе. Сообщения ColoredMessage гасить. Нужно для повторных вызовов CheckOutput
|
||||
procedure CheckOutputSilent(a: ObjectList);
|
||||
|
||||
/// Проверить, что данные не вводились
|
||||
/// Проверить, что данные не вводились. Пользуйтесь CheckData(Empty)
|
||||
procedure CheckInputIsEmpty;
|
||||
|
||||
/// Проверить, что помимо начального ввода других данных не вводилось
|
||||
|
|
@ -253,9 +254,11 @@ procedure CheckOutputSeqSilent(a: sequence of boolean);
|
|||
procedure CheckOutputSeqSilent(a: sequence of object);
|
||||
/// Проверить последовательность значений при выводе. Не выводить сообщения ColoredMessages
|
||||
procedure CheckOutputSeqSilent(a: sequence of word);
|
||||
|
||||
/// Проверить последовательность значений при выводе. Не выводить сообщения ColoredMessages
|
||||
procedure CheckOutputSeqSilent(a: ObjectList);
|
||||
|
||||
|
||||
/// Проверить вывод в виде строки
|
||||
procedure CheckOutputString(str: string);
|
||||
|
||||
|
|
@ -271,17 +274,6 @@ function CompareArrValues(a,lst: array of object): boolean;
|
|||
/// Сравнить значения с выводом
|
||||
function CompareValuesWithOutput(params a: array of object): boolean;
|
||||
|
||||
// Для совместимости
|
||||
procedure CheckOutputNew(params arr: array of object);
|
||||
procedure CheckOutputSeqNew(a: sequence of integer);
|
||||
procedure CheckOutputSeqNew(a: sequence of real);
|
||||
procedure CheckOutputSeqNew(a: sequence of string);
|
||||
procedure CheckOutputSeqNew(a: sequence of char);
|
||||
procedure CheckOutputSeqNew(a: sequence of boolean);
|
||||
procedure CheckOutputSeqNew(a: sequence of object);
|
||||
procedure CheckOutputSeqNew(a: sequence of word);
|
||||
procedure CheckOutputSeqNew(a: ObjectList);
|
||||
|
||||
{============================================================================================}
|
||||
{ Подпрограммы для проверки начального ввода-вывода, представленного в заготовке задания }
|
||||
{============================================================================================}
|
||||
|
|
@ -559,7 +551,7 @@ procedure GenerateTests<T1,T2,T3>(params a: array of (T1,T2,T3));
|
|||
procedure ConvertStringsToNumbersInOutputList;
|
||||
/// Если в OutputList массивы, вытянуть их в единый список
|
||||
procedure FlattenOutput;
|
||||
/// Очистить выходной список от пробелов
|
||||
/// Очистить выходной список от пробелов, возникающих в методах расширения типа a.Print. Очень редко очищать не надо при решении задач на символы с пробелами
|
||||
procedure ClearOutputListFromSpaces;
|
||||
/// Отфильтровать в выходном списке только числа
|
||||
procedure FilterOnlyNumbers;
|
||||
|
|
@ -2220,11 +2212,14 @@ procedure CheckOutputAfterInitialSeqSilent(seq: sequence of char); begin Silent
|
|||
procedure CheckOutputAfterInitialSeqSilent(seq: sequence of object); begin Silent := True; CheckOutputAfterInitialSeq(seq); Silent := False; end;
|
||||
procedure CheckOutputAfterInitialSeqSilent(seq: ObjectList); begin Silent := True; CheckOutputAfterInitialSeq(seq); Silent := False; end;
|
||||
|
||||
var OutputListIsClearedFromSpaces := False;
|
||||
|
||||
procedure ClearOutputListFromSpaces;
|
||||
begin
|
||||
if OutputListIsClearedFromSpaces then exit;
|
||||
OutputList := OutputList.Where(s -> (not (s is string)) or ((s as string) <> ' ')).ToList;
|
||||
OutputList := OutputList.Where(s -> (not (s is char)) or ((char(s)) <> ' ')).ToList;
|
||||
OutputListIsClearedFromSpaces := True;
|
||||
end;
|
||||
|
||||
procedure FilterOnlyNumbers;
|
||||
|
|
|
|||
|
|
@ -387,7 +387,11 @@ begin
|
|||
CheckData(Input := Empty);
|
||||
CheckOutput(ArrGen(10,1,i->i*2).Sum);
|
||||
end;
|
||||
|
||||
'ЗаполнениеСумма3_add': begin
|
||||
CheckData(Input := |cInt|*1);
|
||||
var n := Int;
|
||||
CheckOutput(ArrGen(n,i -> (i+1)*(i+1)).Sum);
|
||||
end;
|
||||
// 'Arr_Transf1' 'Arr_Transf1a' 'Arr_Transf2' 'Arr_Transf3' 'Arr_Transf4' 'Arr_Transf5' 'Arr_Transf7' 'Arr_Transf8' 'Arr_Transf9'- задачник
|
||||
'Arr_Transf6': begin
|
||||
FilterOnlyNumbersAndBools;
|
||||
|
|
|
|||
|
|
@ -44,7 +44,7 @@ begin
|
|||
end;
|
||||
'CharRange1': begin
|
||||
CheckData(Input := Empty);
|
||||
CheckOutput('0'..'9', 'a'..'z', 'а'..'я');
|
||||
CheckOutput('0'..'9', 'a'..'z', 'А'..'Я');
|
||||
end;
|
||||
'CharRange2': begin
|
||||
CheckData(Input := |cChar|);
|
||||
|
|
@ -283,7 +283,7 @@ begin
|
|||
end;
|
||||
'StrSlice2': begin
|
||||
CheckData(Input := Empty);
|
||||
CheckOutputSeq(Arr('клад зарыт на юго западе', 'зашифрованное сообщение'));
|
||||
CheckOutput('клад зарыт на юго западе', 'зашифрованное сообщение');
|
||||
end;
|
||||
'StrSlice4': begin
|
||||
CheckData(Input := Empty);
|
||||
|
|
@ -293,6 +293,14 @@ begin
|
|||
CheckData(Input := Empty);
|
||||
CheckOutput('оценка1', 'балл2', 'окно3');
|
||||
end;
|
||||
'Str_Number01': begin
|
||||
CheckData(Input := Empty);
|
||||
CheckOutput('25', '476', '2296');
|
||||
end;
|
||||
'Str_Number02': begin
|
||||
CheckData(Input := Empty);
|
||||
CheckOutput(25,476,3.1415,2.8);
|
||||
end;
|
||||
'Str_Number03': begin
|
||||
CheckData(Input := Empty);
|
||||
CheckOutput(386);
|
||||
|
|
@ -326,6 +334,6 @@ initialization
|
|||
'Pos1','Pos2','Delete1','Delete2','Delete3','Insert1','Insert2',
|
||||
'StrChange1','StrChange2','StrBorder0','StrBorder1',
|
||||
'StrSlice1','StrSlice2','StrSlice4',
|
||||
'Str_Number0','Str_Number03','Str_Number04','Str_Number05','Str_Number06' );
|
||||
'Str_Number0','Str_Number01','Str_Number02','Str_Number03','Str_Number04','Str_Number05','Str_Number06' );
|
||||
finalization
|
||||
end.
|
||||
|
|
@ -17,12 +17,12 @@ uses System.Windows.Markup;
|
|||
type
|
||||
TControl = Control;
|
||||
|
||||
Panel = Panel;
|
||||
Grid = Grid;
|
||||
Panel = System.Windows.Controls.Panel;
|
||||
Grid = System.Windows.Controls.Grid;
|
||||
Canvas = System.Windows.Controls.Canvas;
|
||||
StackPanel = StackPanel;
|
||||
DockPanel = DockPanel;
|
||||
WrapPanel = WrapPanel;
|
||||
StackPanel = System.Windows.Controls.StackPanel;
|
||||
DockPanel = System.Windows.Controls.DockPanel;
|
||||
WrapPanel = System.Windows.Controls.WrapPanel;
|
||||
|
||||
TPanel = Panel;
|
||||
TGrid = Grid;
|
||||
|
|
@ -39,7 +39,7 @@ type
|
|||
TextBox = TextBox;
|
||||
Slider = Slider;
|
||||
ComboBox = ComboBox;
|
||||
TextBlock = TextBlock;
|
||||
TextBlock = System.Windows.Controls.TextBlock;
|
||||
Border = System.Windows.Controls.Border;
|
||||
Rectangle = Rectangle;
|
||||
|
||||
|
|
@ -111,6 +111,8 @@ function EmptyColor: Color := ARGB(0,0,0,0);
|
|||
function Pnt(x,y: real) := new Point(x,y);
|
||||
function Rect(x,y,w,h: real) := new System.Windows.Rect(x,y,w,h);
|
||||
|
||||
function MainPanel: Panel := MainWindow.Content as Panel;
|
||||
|
||||
function CreateDrawing := Drawing.Create;
|
||||
|
||||
function operator implicit(n: integer): Thickness; extensionmethod;
|
||||
|
|
@ -148,7 +150,6 @@ begin
|
|||
Result := new FontFamily(name);
|
||||
end;
|
||||
|
||||
|
||||
procedure SetPosition(Self: Control; Left,Top: real); extensionmethod;
|
||||
begin
|
||||
Canvas.SetLeft(Self,Left);
|
||||
|
|
@ -494,8 +495,7 @@ initialization
|
|||
MainWindow.Left := w/2;
|
||||
MainWindow.Top := h/2;
|
||||
|
||||
var gr := new Grid;
|
||||
MainWindow.Content := gr;
|
||||
MainWindow.Content := new WrapPanel;
|
||||
CurrentParent := MainWindow;
|
||||
finalization
|
||||
Application.Run(MainWindow);
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
//!Только динамический массив может описываться с ключевым словом params
|
||||
//!Только одномерный динамический массив может описываться с ключевым словом params
|
||||
procedure pr1(params par1: array[,] of integer);
|
||||
begin end;
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
//!Только динамический массив может описываться с ключевым словом params
|
||||
//!Только одномерный динамический массив может описываться с ключевым словом params
|
||||
type TClass = class
|
||||
|
||||
end;
|
||||
|
|
|
|||
|
|
@ -17,12 +17,12 @@ uses System.Windows.Markup;
|
|||
type
|
||||
TControl = Control;
|
||||
|
||||
Panel = Panel;
|
||||
Grid = Grid;
|
||||
Panel = System.Windows.Controls.Panel;
|
||||
Grid = System.Windows.Controls.Grid;
|
||||
Canvas = System.Windows.Controls.Canvas;
|
||||
StackPanel = StackPanel;
|
||||
DockPanel = DockPanel;
|
||||
WrapPanel = WrapPanel;
|
||||
StackPanel = System.Windows.Controls.StackPanel;
|
||||
DockPanel = System.Windows.Controls.DockPanel;
|
||||
WrapPanel = System.Windows.Controls.WrapPanel;
|
||||
|
||||
TPanel = Panel;
|
||||
TGrid = Grid;
|
||||
|
|
@ -39,7 +39,7 @@ type
|
|||
TextBox = TextBox;
|
||||
Slider = Slider;
|
||||
ComboBox = ComboBox;
|
||||
TextBlock = TextBlock;
|
||||
TextBlock = System.Windows.Controls.TextBlock;
|
||||
Border = System.Windows.Controls.Border;
|
||||
Rectangle = Rectangle;
|
||||
|
||||
|
|
@ -111,6 +111,8 @@ function EmptyColor: Color := ARGB(0,0,0,0);
|
|||
function Pnt(x,y: real) := new Point(x,y);
|
||||
function Rect(x,y,w,h: real) := new System.Windows.Rect(x,y,w,h);
|
||||
|
||||
function MainPanel: Panel := MainWindow.Content as Panel;
|
||||
|
||||
function CreateDrawing := Drawing.Create;
|
||||
|
||||
function operator implicit(n: integer): Thickness; extensionmethod;
|
||||
|
|
@ -148,7 +150,6 @@ begin
|
|||
Result := new FontFamily(name);
|
||||
end;
|
||||
|
||||
|
||||
procedure SetPosition(Self: Control; Left,Top: real); extensionmethod;
|
||||
begin
|
||||
Canvas.SetLeft(Self,Left);
|
||||
|
|
@ -494,8 +495,7 @@ initialization
|
|||
MainWindow.Left := w/2;
|
||||
MainWindow.Top := h/2;
|
||||
|
||||
var gr := new Grid;
|
||||
MainWindow.Content := gr;
|
||||
MainWindow.Content := new WrapPanel;
|
||||
CurrentParent := MainWindow;
|
||||
finalization
|
||||
Application.Run(MainWindow);
|
||||
|
|
|
|||
Loading…
Reference in a new issue