Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Delphi Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 1491 1492 1493 1494 1495 [1496] 1497 1498 1499 1500 .. 1526   вперед  Ctrl
 Re: Курилка  [new]
s62
Member

Откуда: Жуковский
Сообщений: 988
Arioch
ну вообще стационарные сотовые - это не новинка, то такого конкретно вида - это да, нечто. Только где у него звёздочка с решёткой?
Не знаю, там внизу 4 кнопки, может в них. Но это не для продажи, в единственном экземпляре, вроде.
12 мар 19, 13:18    [21830198]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
s62
Member

Откуда: Жуковский
Сообщений: 988
Arioch,

а вообще, я написал же: человек "по приколу сделал". А ты начинаешь писать, что сотовые стационарные телефоны не новинка, "где у него решетка?". Это примерно как если анекдот рассказать, а тебя с серьезным тоном начнут расспрашивать детали, комментировать нюансы истории. :)
12 мар 19, 15:10    [21830358]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
Arioch
Member

Откуда:
Сообщений: 10958
Чтобы телефон был телефоном - он должен работать.
Чтобы он работал - у него должны быть все кнопки, включая решетку.

Иначе это просто плохой анекдот.
Иначе можно просто корпус старого телефона на стол поставить и сказать "это мобильник, только он чуть-чуть не работает, антенный нет и SIMку вставлять некуда". Тоже шутка.
12 мар 19, 17:53    [21830600]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
s62
Member

Откуда: Жуковский
Сообщений: 988
Arioch,

сейчас спросил автора, пользуется он этим телефоном дома, уже несколько лет, там своя система управления, меню, привязанные к цифрам номера адресатов и т.д. Да, решетки там нет, но короткие сообщения аппарат посылает, а частности на индикаторе показывается оставшаяся сумма денег (периодически отправляется соотв. короткое сообщение).
Так что это работающий телефон. А вот что ты хочешь доказать, непонятно. Вообще речь шла о ретро-клавиатуре из печатной машинки, я показал ретро-телефон.
12 мар 19, 19:52    [21830681]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
Arioch
Member

Откуда:
Сообщений: 10958
голосовые меню в которых надо нажать * или # пролетают

звонки в другие страны (номера через плюс) - в лучшем случае намного сложнее, или никак

Что баланс показан я заметил, но всё равно, базовые функции не полные.

Доказать тут ничего нельзя, хотя бы потому что не было общих аксиом.
Но на мой личный взгляд это неполноценный GSM-телефон и потому не вполне удачная шутка.

Скажем так, зависит от направления взгляда: "заставить древний телефон говорить через GSM-сеть" - да, "сделать мобильник в копрусе древнего телефона" - нет.
12 мар 19, 20:09    [21830693]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
defecator
Member

Откуда:
Сообщений: 39310
Arioch
голосовые меню в которых надо нажать * или # пролетают

звонки в другие страны (номера через плюс) - в лучшем случае намного сложнее, или никак

Что баланс показан я заметил, но всё равно, базовые функции не полные.

Доказать тут ничего нельзя, хотя бы потому что не было общих аксиом.
Но на мой личный взгляд это неполноценный GSM-телефон и потому не вполне удачная шутка.

Скажем так, зависит от направления взгляда: "заставить древний телефон говорить через GSM-сеть" - да, "сделать мобильник в копрусе древнего телефона" - нет.

господи, какой же ты занудный...
12 мар 19, 20:36    [21830704]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
Foxpc
Member

Откуда:
Сообщений: 152
Открыл и пошёл писать код, и тут бац вылезает Картинка с другого сайта.

К сообщению приложен файл. Размер - 51Kb
13 мар 19, 12:55    [21831209]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
white_nigger
Member

Откуда: Тула
Сообщений: 2160
Foxpc,

Так и должно быть по умолчанию. Нехрена своими ручками RTL портить
13 мар 19, 14:10    [21831337]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
Arioch
Member

Откуда:
Сообщений: 10958
defecator,

не хочешь слышать ответ - не спрашивай
13 мар 19, 15:01    [21831402]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
Glays
Member

Откуда:
Сообщений: 2364
s62, мы тут с коллегами поспорили, диск работает или там кнопки просто?
Если диск, то как он отщёлкивание диска в код кнопки переводит?
14 мар 19, 13:54    [21832533]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
Arioch
Member

Откуда:
Сообщений: 10958
Glays,

наверняка работает, иначе чем вообще номер набирать ?

а переводит так же как АТС - считает щелчки и ждёт паузу больше пороговой
14 мар 19, 14:02    [21832550]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
s62
Member

Откуда: Жуковский
Сообщений: 988
Glays
s62, мы тут с коллегами поспорили, диск работает или там кнопки просто?
Если диск, то как он отщёлкивание диска в код кнопки переводит?

))
Вообще, я сейчас спросил, номера с 1 по 8 - это фиксированные номера абонентов, а 9 и 0 - входы в разные меню, в которых можно делать разное (я не расспрашивал), в частности просто набрать номер.
Насчет как переводит, говорит, там после поворота и отпускания, идут импульсы с частотой 10 гц (видимо, какая цифра, столько и импульсов, не знаю, не уточнил), он в телефоне считает эти импульсы.
14 мар 19, 14:08    [21832565]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
s62
Member

Откуда: Жуковский
Сообщений: 988
s62,

>>>там - в смысле в дисковом телефоне.
14 мар 19, 14:09    [21832569]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
softwarer
Member

Откуда: 127.0.0.1
Сообщений: 58459
Блог
s62
(видимо, какая цифра, столько и импульсов, не знаю, не уточнил)

В дисковом телефоне - именно так. Как, собственно, и в PSTN-сетях соответствующего стандарта. В древние времена было такое хакерство - набирать номер, манипулируя кнопкой сброса.
14 мар 19, 14:26    [21832615]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
Arioch
Member

Откуда:
Сообщений: 10958
softwarer,

я пробовал, на обычном бытовом телефоне очень трудно сделать достаточно короткий разрыв, очень

зато можно набирать цифры кроме стандартных 10
14 мар 19, 14:27    [21832619]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
zinpub
Member

Откуда:
Сообщений: 383
Arioch
softwarer,

я пробовал, на обычном бытовом телефоне очень трудно сделать достаточно короткий разрыв, очень

зато можно набирать цифры кроме стандартных 10


Мы ключ(морзяночный) подключали... тогда получалось :-)
14 мар 19, 15:20    [21832708]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
Foxpc
Member

Откуда:
Сообщений: 152
white_nigger
Foxpc,

Так и должно быть по умолчанию. Нехрена своими ручками RTL портить


Кто сказал что когда что - то текёт с конца, это норма? Когда ты это даже не трогал Картинка с другого сайта.
15 мар 19, 00:14    [21833131]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
Foxpc
Member

Откуда:
Сообщений: 152
Внимание, внимание! Минутка смеха, как кое кто опкакался

+
procedure TDictionary<TKey,TValue>.Add(const Key: TKey; const Value: TValue);
var
  index, hc: Integer;
begin
  if Count >= FGrowThreshold then
    Grow;

  hc := Hash(Key);
  index := GetBucketIndex(Key, hc);
  if index >= 0 then
    raise EListError.CreateRes(@SGenericDuplicateItem);

  DoAdd(hc, not index, Key, Value);
end;


....

function TDictionary<TKey,TValue>.GetItem(const Key: TKey): TValue;
var
  index: Integer;
begin
  index := GetBucketIndex(Key, Hash(Key));
  if index < 0 then
    raise EListError.CreateRes(@SGenericItemNotFound);
  Result := FItems[index].Value;
end;


Пытаемся добавить, и извлечь значение. Удачно! Картинка с другого сайта.

  Values.Add('Test', 56);



Теперь попробуем его извлечь
  Writeln(Values.Items['Test'].ToString);


Наверное мы увидим 56 ? Нет! Мы увидим 'Item not found'.

Потому что при получение
  if index < 0 then
    raise EListError.CreateRes(@SGenericItemNotFound);


А при установки

  if index >= 0 then
    raise EListError.CreateRes(@SGenericDuplicateItem);


Картинка с другого сайта.

Надо же так на ровном месте штаны запачкать разработчикам

Тестовый код с багом
+
program Project2;

{$APPTYPE CONSOLE}
{$R *.res}

uses
  System.SysUtils, Generics.Collections, Rtti, System.JSON;

type
  TBaseCash = TDictionary<TValue, TValue>;

var
  Values: TBaseCash;

  v: TValue;

begin
  try
    Values := TBaseCash.Create;
    Values.Add('Test', 56);

    for v in Values.Values do
      Writeln(v.ToString);

    Writeln(Values.Items['Test'].ToString);

  except
    on E: Exception do
      Writeln(E.ClassName, ': ', E.Message);
  end;

  Readln;

end.


56
EListError: Item not found
15 мар 19, 16:12    [21834024]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
Мимопроходящий
Member

Откуда: бурятский тундрюк, эсквайр
Сообщений: 30305

зато "с лёгким запахом кари" (С)

Posted via ActualForum NNTP Server 1.5

15 мар 19, 16:14    [21834025]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
Kazantsev Alexey
Member

Откуда:
Сообщений: 3733
Foxpc,

Ошибка не в индексах. Сделай ключ строковым и ошибки не будет.
15 мар 19, 16:32    [21834055]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
wadman
Member

Откуда: Санкт-Петербург
Сообщений: 25768
Foxpc
Наверное мы увидим 56 ? Нет! Мы увидим 'Item not found'.

procedure TForm1.FormCreate(Sender: TObject);
var d: TDictionary<String,Integer>;
begin
    d := TDictionary<String,Integer>.Create;
    d.Add('Test', 56);
    Label1.Caption := d.Items['Test'].ToString;
end;

Label1.Caption = '56';
15 мар 19, 16:38    [21834069]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
ёёёёё
Member

Откуда:
Сообщений: 726
Kazantsev Alexey,
wadman,

- вы слепые, что ли?
15 мар 19, 17:34    [21834136]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
Arioch
Member

Откуда:
Сообщений: 10958
ёёёёё,

ошибка НЕ в индексах.

ошибка в хэшировании TValue.

Как тебе уже сказали, с другим типом ключа всё найдется.
15 мар 19, 17:55    [21834164]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
Arioch
Member

Откуда:
Сообщений: 10958
{$Align 4}
type TSparseRecord = record f1: byte; f2: integer; end;

var v1, v2: TSparseRecord;
var d: TDictionary<TSparseRecord, integer>;
var i: integer;

......

WriteLN( SizeOf(v1), ' == ', SizeOf(v1.f1) + SizeOf(v1.f2) );

FillChar( v1, SizeOf(v1), #10 ); 
FillChar( v2, SizeOf(v2), #100 );

v2.f1 := 77;
v2.f2 := 8888;

v1.f1 := v2.f1; v1.f2 := v2.f2;  // теперь у нас v1 = v2, правда ???

d.Add( v1, 55 );
WriteLN( d.TryGetValue( v2, i ) );

d.Add( v2, 666666 );  // поскольку у нас v1 = v2, тут будет ошибка про задвоение, правда ???

WriteLN( v1 = v2 :10, d[v1]: 20, d[v2]: 20 );
15 мар 19, 18:04    [21834173]     Ответить | Цитировать Сообщить модератору
 Re: Курилка  [new]
kealon(Ruslan)
Member

Откуда: Нижневартовск
Сообщений: 5107
вроде не пятница 13

К сообщению приложен файл. Размер - 14Kb
15 мар 19, 20:33    [21834316]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 1491 1492 1493 1494 1495 [1496] 1497 1498 1499 1500 .. 1526   вперед  Ctrl
Все форумы / Delphi Ответить