cergean
15.Декабрь.2015 12:45:47
#166
Форматирование кода стало ломать методы расширения для Generic- типов.
function System.Collections.Generic.List<T>.Random(): T;
begin
result := self[PABCSystem.Random(self.Count)];
end;
компилируется нормально, если отформатировать, автоматически сокращается описание до
function List<T>.Random(): T;
begin
result := self[PABCSystem.Random(self.Count)];
end;
И не компилируется с сообщением
Недопустимо описывать метод для синонима шаблонного типа
В принципе жить можно, но не очень удобно каждый раз возвращать полное название.
Admin
15.Декабрь.2015 20:58:07
#167
Да, мы в курсе.
Скачайте новую версию - исправлено.
2 лайка
rms
05.Январь.2016 05:02:07
#168
C Новым Годом!
Версия 3.0, сборка 1039.
Правильно ли установлены крайние значения для “int64”, “longword, cardinal” и “uint64”?
Посмотрите:
program Pif_Paf;
var
x,y: real;
a: int64;
b: integer;
begin
a := 0;
b := 0;
repeat
x := Random;
y := Random;
a := a + 1;
if ((x < 0.000000001) or (y < 0.000000001)) then
begin
b := b + 1;
writeln(b:3, a:15, milliseconds():10, x:22, y:22);
end
until a > 10000000000;
writeln (' Конец программы ', milliseconds():10);
end.
Несколько вопросов:
1.) “а” становится отрицательным…?
2.) Почему программа всё-таки завершает работу?
Результат работы программы:
1 763889016 43641 0.797020635473086 0
2 1187522192 67829 0 0.612227891391249
3 1227867247 70129 0.516337103450828 4.6566128752458E-10
4 1805308086 103100 0.710269268467216 0
5 1850827078 105695 4.6566128752458E-10 0.988287678448617
6 1865132819 106514 0.755673119684529 4.6566128752458E-10
7 -2111166176 124700 0 0.741580432160562
8 -2061793876 127516 0.0430988008357113 9.31322575049159E-10
9 -1182746405 177645 9.31322575049159E-10 0.424749221850535
10 -824675824 198057 0 0.472625514246815
11 -561436122 213061 0 0.406789755172464
12 -463914965 218624 0 0.541352988472838
13 -318352611 226928 9.31322575049159E-10 0.448757509444262
14 -257347741 230421 4.6566128752458E-10 0.450357650616373
15 -64728554 241424 0.101988723083394 4.6566128752458E-10
16 -43428568 242638 0.569834934812894 9.31322575049159E-10
17 -10238955 244531 0.572170391013925 0
18 152767907 253815 0.202438492887858 0
19 328624291 263837 0.863554813835563 4.6566128752458E-10
20 786597231 290072 0.800498753693187 0
21 1624233759 337825 0.094699202615162 4.6566128752458E-10
22 1691385682 341655 0 0.809322355691959
23 -1983088521 377018 0 0.624812247522554
24 -358090850 469632 0.90888921493147 9.31322575049159E-10
25 306613843 507609 0.0550177474762396 4.6566128752458E-10
26 513723491 519413 0 0.478204154632149
27 892818248 541021 4.6566128752458E-10 0.514894075000144
Конец программы 570497
ibond
05.Январь.2016 20:33:15
#169
Это баг в форматном выводе. a:15 приводит a к типу integer. Само значение a правильное. Ошибку исправим
Admin
06.Январь.2016 10:36:51
#170
Уже исправили. Версия на сайте
Очень надеюсь,что в последний версии отрицательный single правильно делится.
Admin
06.Январь.2016 20:31:54
#172
А проверить не пробовали?
Мне проще сначала убедиться
type
someclass = class
procedure genproc<T>(var x, y: T);
begin
end;
procedure Test(A, b: integer);
begin
genproc(a, b);
end;
end;
begin
end.
Первая компиляция - внутренняя ошибка
Вторая компиляция - внутренняя ошибка
Третья компиляция - внутренняя ошибка
Многократное нажатия клавиши F9- вообще зацикливание основного потока. Пора бы внедрить в среду АвтоДамп.
Но это лечится с помощью self…
Stepan
01.Февраль.2016 16:51:19
#177
Подскажите пожалуйста, почему не работает этот код
Потому, что PNG-файлы не компилируются. А как насчет, например, выложить текст программы вместо скрина? ^^ И как насчет выложить текст ошибки вместо, гхм, того, что там есть?
Admin
01.Февраль.2016 23:40:25
#179
Ваш пример работает. Переинсталлируйте Паскаль и попробуйте повторно.
Если не заработает - присылайте внутреннюю ошибку.
Admin
Разделил(а) эту тему
03.Февраль.2016 15:12:58
#180
Alondra
12.Февраль.2016 17:29:35
#191
После обновления Pascal ABC Net до 3.0 сборка 1164
для любой программы выводится ошибка
"() : Ошибка чтения PCU файла ‘C:\PABCWork.NET__RedirectIOMode.pcu’"
Обновление было произведено, потому что перестал работать модуль GraphABC.
В результате перестало работать вообще все.
Как жить дальше?
ibond
12.Февраль.2016 18:01:12
#192
Удалите файл C:\PABCWork.NET__RedirectIOMode.pcu
ibond
12.Февраль.2016 18:02:02
#193
и другие системные pcu из папки PABCWork.NET . Их там не должно быть
Подскажите пожалуйста, в чём проблема? (В окне вывода)
Ulysses
18.Февраль.2016 10:15:24
#195
@Lucky_Man кроме скриншота нужно публиковать полный текст, чтобы можно было проверить (включая SumLengths
).
Вот модуль и сама программа:
MySeqs.pas (2,9 КБ)htask-05.pas (645 Байт)
Admin
18.Февраль.2016 16:51:09
#197
Да, это ошибка в PCU. Будем исправлять.
Пока:
Удалите pcu
Поставьте в модуле директиву {$savepcu false}
Запустите основную программу.
Должно работать