Исполнители

This commit is contained in:
miks1965 2016-09-26 02:13:24 +03:00
parent 6dfdb3f9af
commit 12bf9ebb0d
10 changed files with 75 additions and 34 deletions

View file

@ -15,7 +15,7 @@ internal static class RevisionClass
public const string Major = "3";
public const string Minor = "2";
public const string Build = "0";
public const string Revision = "1315";
public const string Revision = "1316";
public const string MainVersion = Major + "." + Minor;
public const string FullVersion = Major + "." + Minor + "." + Build + "." + Revision;

View file

@ -1,4 +1,4 @@
%COREVERSION%=0
%REVISION%=1315
%MINOR%=2
%REVISION%=1316
%COREVERSION%=0
%MAJOR%=3

View file

@ -9,10 +9,9 @@ procedure
procedure ÂûâåñòèÏóñòóþÑòðîêó := Println;
///- Ìåòîä Âûâåñòè
procedure integer.Âûâåñòè := Println(Self);
procedure real.Âûâåñòè := Println(Self);
procedure string.Âûâåñòè := Println(Self);
procedure Âûâåñòè(Self: integer); extensionmethod := Println(Self);
procedure Âûâåñòè(Self: real); extensionmethod := Println(Self);
procedure Âûâåñòè(Self: string); extensionmethod := Println(Self);
type
öåëîå = integer;
@ -395,12 +394,14 @@ end;
function Âûâåñòè<T>(Self: sequence of T): sequence of T; extensionmethod;
begin
Self.Println
Self.Println;
Result := Self;
end;
function ÂûâåñòèÏîñòðî÷íî<T>(Self: sequence of T): sequence of T; extensionmethod;
begin
Self.Println(NewLine)
Self.Println(NewLine);
Result := Self;
end;
function Âûáðàòü<T>(Self: sequence of T; cond: T -> boolean): sequence of T; extensionmethod;
@ -413,23 +414,53 @@ begin
Result := Self.Take(n);
end;
function Êîëè÷åñòâî<T>(Self: sequence of T; cond: T -> boolean): integer; extensionmethod;
function Êîëè÷åñòâî<T>(Self: sequence of T; cond: T -> boolean := nil): integer; extensionmethod;
begin
Result := Self.Count(cond)
if cond = nil then
Result := Self.Count()
else Result := Self.Count(cond)
end;
function Ñóììà(Self: sequence of integer): integer; extensionmethod := Self.Sum();
function Ñóììà(Self: sequence of integer): integer; extensionmethod;
begin
Result := Self.Sum();
end;
function Ñðåäíåå(Self: sequence of integer): real; extensionmethod;
begin
Result := Self.Average;
end;
function Ìèíèìóì(Self: sequence of integer): integer; extensionmethod;
begin
Result := Self.Min;
end;
function Ìàêñèìóì(Self: sequence of integer): integer; extensionmethod;
begin
Result := Self.Max;
end;
function Ïðåîáðàçîâàòü<T,Key>(Self: sequence of T; conv: T -> Key): sequence of Key; extensionmethod;
begin
Result := Self.Select(conv);
end;
function ×åòíîå(x: integer): boolean;
begin
Result := x mod 2 = 0;
end;
function ÎòñîðòèðîâàòüÏî<T,Key>(Self: sequence of T; cond: T -> Key): sequence of T; extensionmethod;
begin
Result := Self.OrderBy(cond);
end;
function Îòñîðòèðîâàòü<T>(Self: sequence of T): sequence of T; extensionmethod;
begin
Result := Self.OrderBy(x->x);
end;
function ÎòñîðòèðîâàòüÏîÓáûâàíèþ<T,Key>(Self: sequence of T; cond: T -> Key): sequence of T; extensionmethod;
begin
Result := Self.OrderByDescending(cond);
@ -472,6 +503,7 @@ public
end;
type
///!#
Country = auto class
nm,cap: string;
inh: integer;
@ -514,6 +546,11 @@ begin
Result := SeqGen(n,a,a->a*d)
end;
function Ñëó÷àéíàÿÏîñëåäîâàòåëüíîñòü(n: integer := 10; a: integer := 0; b: integer := 10): sequence of integer;
begin
Result := ArrRandom(n,a,b)
end;
function ÍîâûéÔàéë: ÔàéëÒèï;
begin
Result := new ÔàéëÊëàññ;

View file

@ -4,7 +4,7 @@ begin
{Файл.Записать('неверно');
Вывод.ПустаяСтрока;}
Файл.ОткрытьНаЗапись('текст.txt');
{Файл.ОткрытьНаЗапись('текст.txt');
Файл.Записать('Информатика');
Файл.Записать('Математика');
Файл.Записать('Русский');
@ -30,24 +30,24 @@ begin
Файл2.Записать(строка);
end;
Файл1.Закрыть;
Файл2.Закрыть;
Файл2.Закрыть;}
var строки := Файл.ВсеСтроки('текст.txt');
строки.ВывестиПострочно;
Вывод.ПустаяСтрока;
foreach var стр in строки do
МножествоСтрок.Добавить(стр);
foreach var строка in строки do
МножествоСтрок.Добавить(строка);
МножествоСтрок.Вывести;
Файл.ВсеСтроки('текст.txt').Numerate.ВывестиПострочно;
{Файл.ВсеСтроки('текст.txt').Numerate.ВывестиПострочно;
МножествоСтрок.Очистить;
Файл.ВсеСтроки('текст.txt').ДляВсех(стр -> МножествоСтрок.Добавить(стр));
МножествоСтрок.Вывести;
Файл.ВывестиВсеМетоды;
Файл.ВывестиВсеМетоды;}
end.

View file

@ -1,12 +1,14 @@
uses Èñïîëíèòåëè;
begin
var арифм1 := АрифметическаяПрогрессия(1,2,20);
арифм1.Вывести;
Вывести(арифм1.Сумма);
var посл2 := арифм1.Преобразовать(x->x*x);
посл2.Вывести;
var посл3 := посл2.Выбрать(x -> x mod 10 = 5);
посл3.Вывести;
var арифм := АрифметическаяПрогрессия(1,2,20);
арифм.Вывести;
арифм.Сумма.Вывести;
var геом := ГеометическаяПрогрессия(1,2,10);
геом.Вывести;
геом.Сумма.Вывести;
var случай := СлучайнаяПоследовательность(10,1,100);
случай.Вывести;
Вывести(случай.Минимум,случай.Максимум);
end.

View file

@ -8,6 +8,10 @@ begin
Вывести(страна);
количество += 1;
end;
количество.Вывести
количество.Вывести;
var страныА := Страны.Выбрать(страна -> страна.Название.НачинаетсяНа('А'));
страныА.ВывестиПострочно;
страныА.Количество.Вывести;
end.

View file

@ -3,20 +3,18 @@ uses
begin
// Создание запросов
var СтраныНаБуквуА := страны.Выбрать(страна -> страна.Название.НачинаетсяНа('А'));
var СтраныНаБуквуА := Страны.Выбрать(страна -> страна.Название.НачинаетсяНа('А'));
var СтраныАзии := страны.Выбрать(страна -> страна.Континент = 'Азия');
var СтраныАзии := Страны.Выбрать(страна -> страна.Континент = 'Азия');
var МаленькиеСтраны := страны.Выбрать(страна -> страна.Население < 100000);
var МаленькиеСтраны := Страны.Выбрать(страна -> страна.Население < 100000);
// Создание интерфейсных элементов
var ОкноСписка := СоздатьОкноСписка;
ОкноСписка.Отобразить(Страны);
CreateButton('Все', () -> ОкноСписка.Отобразить(страны));
CreateButton('Все', () -> ОкноСписка.Отобразить(Страны));
CreateButton('На букву А', () -> ОкноСписка.Отобразить(СтраныНаБуквуА));
CreateButton('Страны Азии', () -> ОкноСписка.Отобразить(СтраныАзии));
CreateButton('Маленькие Страны', () -> ОкноСписка.Отобразить(МаленькиеСтраны));
// Отображение результатов первого запроса
ОкноСписка.Отобразить(страны);
end.

Binary file not shown.

View file

@ -1 +1 @@
!define VERSION '3.2.0.1315'
!define VERSION '3.2.0.1316'

Binary file not shown.