powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Вторничная новогодняя задачка
47 сообщений из 47, показаны все 2 страниц
Вторничная новогодняя задачка
    #39123698
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день!

Предлагаю сообществу подумать над задачкой.
Типичный прогерИсходные данные: массив с числами типа Integer. Вам нужно написать функцию, которая на входе получит исходный массив, а на выходе вернет массив, в котором каждое значение получено путем произведения всех значений исходного массива с отличным от текущего индексом. Для ясности приведем пример.

Допустим, исходный массив имеет вид: [1, 7, 3, 4];
Тогда функция должна вернуть: [84, 12, 28, 21];
Расчет значений выглядит так: [7*3*4, 1*3*4, 1*7*4, 1*7*3];

Дополнительные условия:
1. Нельзя использовать деление.
2. Функция должна быть с наименьшими затратами памяти и времени выполнения.
Скажу честно что задачка не моя. Стырено из соц-сетей.
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39123712
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
мы ее уже решили.
18335732
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39123716
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а Марк сопротивлялся когда я просил у него идеи в том обсуждении :p
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39124047
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не помню суть спора. Но кажется моё пожелание заключалось в том что формулировки надо писать
на русском языке.
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39124092
Соколинский Борис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не смотрел решения, рискну предположить, что нужно сформировать два вспомогательных массива, в одном будет произведение всех элементов 0.. i -1, в другом - i+1..N-1.
Результат получается путем скалярного их перемножения.
Вспомогательные массивы заполняются, естественно, перемножением предыдущего элемента на текущий (второй - в обратном порядке).
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39124137
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня была мысль умножать на 1/a[i] в хитром базисе. Как-бы в целых числах.
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39124140
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonумножать на 1/a[i]
как получить 1/a[i] без деления?
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39124249
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это загадка великая есть. Не знаю.
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39124288
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Марк, да нет. Вы говорили о том что толку в решении задач Скиены с точки зрения развития в IT сфере нет ) Никаких споров у нас с вами не было) Наконец вы оторвались от ваших китайцев(вы по-моему ими занимались) и вернулись к Скиене :D

Соколинский Борис скалярного их перемножения

что вы имеете ввиду ?
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39124308
Соколинский Борис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SashaMercuryМарк, да нет. Вы говорили о том что толку в решении задач Скиены с точки зрения развития в IT сфере нет ) Никаких споров у нас с вами не было) Наконец вы оторвались от ваших китайцев(вы по-моему ими занимались) и вернулись к Скиене :D

Соколинский Борис скалярного их перемножения

что вы имеете ввиду ?

проще написать
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
type
  TOutputData=integer; //если нужно контролировать переполнение - заменить на что-то другое
  TOutputAr=array of TOuputData;

function CalcProd1(A: array of integer): TOutputAr;
var
  Xl, Xh:  TOutputAr;
  I, N: integer;
begin
  N:=Length(A);
  SetLength(Xl, N); SetLength(Xh, N);

  //заполнение вспомогательных массивов
  Xl[0]:=1;
  for i:=1 to N-1 do  Xl[i]:=Xl[i-1]*A[i-1];

  Xh[N-1]:=1;
  for i:=N-2 downto 0 do Xh[i]:=Xh[i+1]*A[i+1];

  //заполнение результата
  SetLength(Result, N);
  for i:=0 to N-1 do result[i]:=Xl[i]*Xh[i];
end;
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39124317
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SashaMercury, ох уж этот Майтон. Постит задачки из социальных сетей. Толи дело - академичные издания.... Мдя...
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39124556
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Соколинский Борис проще написать
скалярного произведения в вашем коде нет )
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39124595
Соколинский Борис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SashaMercuryскалярного произведения в вашем коде нет ) Ну да, неправильный термин.
Еще можно одним вспомогательным массивом обойтись.
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
type
  TOutputData=integer; //если нужно контролировать переполнение - заменить на что-то другое
  TOutputAr=array of TOuputData;

function CalcProd1(A: array of integer): TOutputAr;
var
  Xh:  TOutputAr;
  I, N: integer;
  ProdL: TOutputData;
begin
  N:=Length(A);

  //заполнение вспомогательного массива
  SetLength(Xh, N);
  Xh[N-1]:=1;
  for i:=N-2 downto 0 do Xh[i]:=Xh[i+1]*A[i+1];

  //заполнение результата
  SetLength(Result, N);
  ProdL:=1;
  for i:=0 to N-1 do begin
    result[i]:=prodL*Xh[i];
    prodL:=ProdL*A[i];
  end;

end;
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39124626
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Соколинский Борис, можно, всё верно
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39124741
Фотография eNose
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[не активирован]
[не одобрен]
Типичный прогер1. Нельзя использовать деление.
2. Функция должна быть с наименьшими затратами памяти и времени выполнения. протеворичивые условия.

предлагаю использовать возведение в степень -1 и умножение.
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39124826
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Там по условию задан массив целых. Как возводить целое в степень -1 с сохранением
условий задачи ХЗ.
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39125085
Фотография eNose
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[не активирован]
[не одобрен]
maytonТам по условию задан массив целых. Как возводить целое в степень -1 с сохранением
условий задачи ХЗ. в условии есть получить массив и вернуть массив.
а что там в черном ящике - ограничено только пунктами 1 и 2.
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39125147
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторпредлагаю использовать возведение в степень -1 и умножение.
Предлагаю вместо 'привет' говорить 'здравствуйте'
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39125853
Aleksandr Sharahov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,

похоже, что можно решить эту задачу без дополнительной памяти )
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39125888
Aleksandr Sharahov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Чтобы не отвлекаться на эмуляцию арифметического сдвига вправо (SAR)
здесь для хранения целых чисел используется тип cardinal:

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
type
  TMyArray= array of cardinal;

function Divide(x, y: cardinal): cardinal;
begin;
  while y and 1=0 do begin;
    x:=x shr 1;
    y:=y shr 1;
    end;
  Result:=1;
  while y<>1 do begin;
    Result:=Result*y;
    y:=y*y;
    end;
  Result:=Result*x;
  end;

procedure Calculate(a: TMyArray);
var
  x: cardinal;
  i, j, len: integer;
begin;
  len:=Length(a);
  x:=1; j:=-1;
  for i:=0 to len-1 do begin;
    if a[i]=0 then begin;
      if j>=0 then begin;
        j:=len;
        break;
        end;
      j:=i;
      end
    else x:=x*a[i];
    end;
  if j>=0 then begin;
    for i:=0 to len-1 do a[i]:=0;
    if j<len then a[j]:=x;
    end
  else for i:=0 to len-1 do a[i]:=Divide(x, a[i]);
  end;
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39126336
Фотография Areostar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,

А практический смысл!?
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39126541
Aleksandr Sharahov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Улучшенная версия:
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
type
  TMyArray= array of cardinal;

procedure Multiply(var x, e: cardinal; y: cardinal);
var
  m, d: cardinal;
begin;
  m:=1;
  d:=0;
  while y and m=0 do begin;
    m:=m+m;
    d:=d+1;
    end;
  x:=x*(y shr d);
  e:=e+d;
  end;

function Divide(x, e, y: cardinal): cardinal;
var
  m, d: cardinal;
begin;
  m:=1;
  d:=0;
  while y and m=0 do begin;
    m:=m+m;
    d:=d+1;
    end;
  y:=y shr d;
  e:=e-d;
  if e<8*SizeOf(x) then begin;
    while y<>1 do begin;
      x:=x*y;
      y:=y*y;
      end;
    Result:=x shl e;
    end
  else Result:=0;
  end;

procedure Calculate(a: TMyArray);
var
  x, e: cardinal;
  i, j, len: integer;
begin;
  len:=Length(a);
  x:=1; e:=0; j:=-1;
  for i:=0 to len-1 do begin;
    if a[i]=0 then begin;
      if j>=0 then begin;
        j:=len;
        break;
        end;
      j:=i;
      end
    else Multiply(x, e, a[i]);
    end;
  if j>=0 then begin;
    for i:=0 to len-1 do a[i]:=0;
    if j<len then a[j]:=Divide(x, e, 1);
    end
  else for i:=0 to len-1 do a[i]:=Divide(x, e, a[i]);
  end;

procedure TForm1.Button1Click(Sender: TObject);
var
  a: TMyArray;
begin;
  SetLength(a, 4);
  a[0]:=1;
  a[1]:=7;
  a[2]:=3;
  a[3]:=4;
  Memo1.Lines.Add(Format('%d %d %d %d', [a[1]*a[2]*a[3], a[0]*a[2]*a[3], a[0]*a[1]*a[3], a[0]*a[1]*a[2]]));
  Calculate(a);
  Memo1.Lines.Add(Format('%d %d %d %d', [a[0], a[1], a[2], a[3]]));
  end;
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39126636
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Areostarmayton,

А практический смысл!?
Это очень хороший вопрос. По сабжу к каждому студенту который просит решить лабу
я могу обращаться с таким-же встречным. Но я надеюсь что в нашем скромном
форуме найдется место головоломкам без SR.

Не так ли?
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39129146
Aleksandr Sharahov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,

Есть интересный вариант задачи с похожим решением:

Длинные числа A и B заданы своими короткими множителями a[i], i=1..N и b[j], j=1..M.
Множители никак не упорядочены и не обязательно просты.
Известно, что B=A*х, где x - короткое.
Найти x.
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39129151
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aleksandr Sharahov, если B=A*х то

x=B/A

Или я чет не так понял задание.
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39129166
Aleksandr Sharahov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,

Все так.
Только этот результат требуется получить без деления и без использования длинных чисел.
Сорри, что сразу не написал это в условии, т.к. почему-то посчитал это условие разумеющимся в свете предыдущей задачи.
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39129170
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я понял. Надо подумать. Скорее всего решение этой задачи будет базироваться
на циклических вычитаниях и (возможно умножениях).

Как алгоритм Евклида.
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39129173
MrCat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Забавно. А вот ещё тривиальщины на закуску, на случай, если и в этой задаче делить нельзя. Если
авторМножители никак не упорядочены и не обязательно просты., то надо:
разложить множители до простых, получить классические представления в виде перемножения простых множителей: A* и B*

упорядочить оба представления, что поможет быстро...

...вычесть A*\B* и так получить X

для фанатов: вычесть B*\A*, получить пустое множество, и так убедиться, что - автор не соврал! - X и впрямь целочисленное.

для фанатов-префанатов: выполнять два последних пункта одновременно.
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39129179
Aleksandr Sharahov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MrCat,

Забавно, но, оказывается, можно проще )
См. решение предыдущей задачи.
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39129184
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лучше отдельным топиком.
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39129250
Aleksandr Sharahov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonЛучше отдельным топиком.

Здесь:

http://guildalfa.ru/alsha/node/31
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39129291
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aleksandr Sharahov,
а что такое короткие множители ? Вы имеете ввиду факторизацию, или что-то другое ?
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39129334
Aleksandr Sharahov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SashaMercury,

Обычно программная реализация длинного целого типа для работы с очень большими числами
основана на некотором ("коротком") целочисленном типе, который поддерживает компилятор.

Программисты, с ними работающие, для собственного удобства используют очевидный жаргон.
Например, "умножение длинного на короткое".
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39129726
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aleksandr SharahovmaytonЛучше отдельным топиком.

Здесь:

http://guildalfa.ru/alsha/node/31
Не. Ну это неинтересно. Блог господина Шарахова нам недоступен для каментов.
Лучше всё таки поднять на скруле.
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39129731
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SashaMercuryAleksandr Sharahov,
а что такое короткие множители ? Вы имеете ввиду факторизацию, или что-то другое ?
Мне почему-то вспомнилось Умножене Карацубы
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39129780
Aleksandr Sharahov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,

Топик разместил у себя в блоге, чтобы, во-первых, он не затерялся и остались следы,
и, во-вторых, там ожидается весьма интересное продолжение, которое давно планировал,
но все никак не могу собраться из-за нехватки времени.

А комментарии можно хоть здесь, хоть там писать - не проблема.

Умножение Карацубы немного из другой оперы.
Если грубо, то оно используется для оптимизации умножения столбиком длинных чисел,
а для умножения длинного на короткое оно не требуется.
Но тема даже не в этом, а в том, что на самом деле и длинное не всегда нужно,
иногда оказывается достаточно его последней цифры.
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39130910
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Зря
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39150230
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aleksandr Sharahovmayton,

Есть интересный вариант задачи с похожим решением:

Длинные числа A и B заданы своими короткими множителями a[i], i=1..N и b[j], j=1..M.
Множители никак не упорядочены и не обязательно просты.
Известно, что B=A*х, где x - короткое.
Найти x.

XOR всех множителей a[i] и b[j] даст требуемый результат
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39150262
Aleksandr Sharahov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SashaMercuryAleksandr Sharahovmayton,

Есть интересный вариант задачи с похожим решением:

Длинные числа A и B заданы своими короткими множителями a[i], i=1..N и b[j], j=1..M.
Множители никак не упорядочены и не обязательно просты.
Известно, что B=A*х, где x - короткое.
Найти x.

XOR всех множителей a[i] и b[j] даст требуемый результат

Пусть a=2, b=2*2*2.
Тогда x=2*2, но XOR=0.
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39150263
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aleksandr Sharahov,

ваш контрпример противоречит условию
Aleksandr Sharahov Известно, что B=A*х, где x - короткое.
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39150265
Aleksandr Sharahov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SashaMercuryAleksandr Sharahov,

ваш контрпример противоречит условию
Aleksandr Sharahov Известно, что B=A*х, где x - короткое.

В чем противоречие?

A состоит из одного целого множителя, равного 2, который укладывается в отведенное количество бит (скажем 32).
B состоит из трех целых множителей, каждый из которых также равен 2.
B=A*4.
Т.е. x=4 и x - короткое (укладывается в отведенное количество бит).
На мой взгляд, соответствие условию полное.
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39150278
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aleksandr Sharahov На мой взгляд, соответствие условию полное.

В постановке задаче вы фигурировали термином "короткое число". Определили оба числа как произведение коротких чисел и далее вы сказали о том, что числа отличаются на одно короткое число.

Aleksandr SharahovДлинные числа A и B заданы своими короткими множителями a[i], i=1..N и b[j], j=1..M.
Множители никак не упорядочены и не обязательно просты.
Известно, что B=A*х, где x - короткое.

Из чего был сделан вывод о том, что данное короткое число должно принадлежать одному из множеств коротких чисел соответствующих числам A и B, что не совпадает с вашими требованиями к данной задаче. В таком случае, мне кажется, лучше будет озвучить постановку задачи следующим образом:
Пусть , где . Известно, что . Найти x не используя операцию деления
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39150283
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, как я понимаю число 0 подходит под данное выше определение короткого числа
1. Пусть 0 будет присутствовать в одном из чисел. Что на выходе даст ваш алгоритм ?
2. Пусть 0 присутствует в обоих числах, при этом никаких различий в числах более нет. Что на выходе даст ваш алгоритм ?
3. Пусть 0 присутствует в обоих числах, существуют различия в числах. Что на выходе даст ваш алгоритм ?
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39150315
Aleksandr Sharahov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SashaMercury,

Вывод о том, что короткое число x должно принадлежать одному из множеств коротких чисел,
соответствующих числам A и B, неверен. Он никак не следует из того, что x - короткое.

Похоже, ваша формулировка задачи полностью эквивалентна моей,
но, несомненно, выглядит гораздо красивее )
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39150319
Aleksandr Sharahov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SashaMercuryКстати, как я понимаю число 0 подходит под данное выше определение короткого числа
1. Пусть 0 будет присутствовать в одном из чисел. Что на выходе даст ваш алгоритм ?
2. Пусть 0 присутствует в обоих числах, при этом никаких различий в числах более нет. Что на выходе даст ваш алгоритм ?
3. Пусть 0 присутствует в обоих числах, существуют различия в числах. Что на выходе даст ваш алгоритм ?

Если не ошибаюсь,
алгоритм отслеживает все эти особые случаи
и в качестве результата выдает 0
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39150330
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aleksandr Sharahov, конечно мой вывод был неверен ) Но это недопонимание с моей стороны возникало по причине присутствия данного термина.
Пусть например оба числа равны 0, в таком случае x может быть любым числом. Неформальное определение "короткое число" позволяет нам провернуть подобное. Может быть 0 всё-таки не должен присутствовать в постановке задачи ?Или это не так ?
...
Рейтинг: 0 / 0
Вторничная новогодняя задачка
    #39150341
Aleksandr Sharahov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SashaMercury,

Конечно, для однозначного понимания условий будет лучше явно сказать,
что 0 не входит в область возможных значений множителей.
...
Рейтинг: 0 / 0
47 сообщений из 47, показаны все 2 страниц
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Вторничная новогодняя задачка
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]