forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Загадки (http://forum.boolean.name/forumdisplay.php?f=87)
-   -   Задачка на математику и логику. (http://forum.boolean.name/showthread.php?t=14432)

SBJoker 17.03.2011 23:26

Ответ: Задачка на математику и логику.
 

int m[5 * 5];

//fill
for (int i=0; i<20; i++){
m[i] = (i+1) * 5;
}

//search & print
for (int i=0; i<20; i++){
if ( (m[i] % 20) == 0) {
printf("m[%d,%d]=%d\n", (i / 5), (i % 5), m[i]);
}
}

Вот как то так....

Romanzes 17.03.2011 23:30

Ответ: Задачка на математику и логику.
 
SBJoker, у тебя первое число - 0, а надо от 5 до 100. Я сам такую же ошибку сначала допустил.

pax 17.03.2011 23:35

Ответ: Задачка на математику и логику.
 
Цитата:

Сообщение от SBJoker (Сообщение 183102)

int m[5 * 5];

//fill
for (int i=0; i<20; i++){
m[i] = (i+1) * 5;
}

//search & print
for (int i=0; i<20; i++){
if ( (m[i] % 20) == 0) {
printf("m[%d,%d]=%d\n", (i / 5), (i % 5), m[i]);
}
}

Вот как то так....

Вообще-то в задании двухмерный массив...

LLI.T.A.L.K.E.R. 17.03.2011 23:35

Ответ: Задачка на математику и логику.
 
Код:

Dim m(5,5)

For i%=1 to 5
 For j%=1 to 5
  m(i,j)=5*Rand(1,20)
  a%=m(i,j)
  ; //If (a=20) or (a=40) or (a=60) or (a=80) or (a=100) then Print "m["+Str(i%)+","+Str(j%)+"]="+Str(a%) ; тупо проверка через OR
  ; оптимизация:
  If (a/20)>0 and (a/20)<6 ; and (ЧислоЦелое?(a/20)) then проверка числа на целостность без справочника всегда страдала :(
  ; эх жаль, где-то скрыта здесь фича. Извиняйте
 Next
Next


SBJoker 17.03.2011 23:53

Ответ: Задачка на математику и логику.
 
2pax
а результат тот же.

Dream 17.03.2011 23:56

Ответ: Задачка на математику и логику.
 
Кстати по поводу рандома(того который rnd()), где гарантия что. В массив попадут нужные числа?

Romanzes 18.03.2011 00:34

Ответ: Задачка на математику и логику.
 
Цитата:

Сообщение от Dream (Сообщение 183110)
Кстати по поводу рандома(того который rnd()), где гарантия что. В массив попадут нужные числа?

Никакой гарантии нет. А нигде и не говорилось, что нужна гарантия.

LLI.T.A.L.K.E.R. 18.03.2011 00:47

Ответ: Задачка на математику и логику.
 
Умножив 5 на любое число от 1 до 20, полюбому число будет от 5 до 100. Кратное пяти.
Это Integer, а не Float

ffinder 18.03.2011 00:53

Ответ: Задачка на математику и логику.
 
L = [ {X,Y,Z} || Y<-lists:seq(0,4), X<-lists:seq(0,4), Z<-[20,40,60,80,100], (Y*5+X+1)*5 == Z ].
lists:foreach(fun({X,Y,Z})-> io:format("m[~p,~p]=~p~n", [X,Y,Z]) end, L).

А теперь горькая правда.
Начнем с психологии.
Пришел я к моке на собеседование. А он мне бац - пишем на листочке только, да еще и какой-то псевдокод выдумываем на ходу вместо языка программирования.
(Про себя думаю: самодур этот мока).
Дальше больше - читаю задачку. На пальцах считаю 100/5 = 20 чисел, а массив 5*5=25. Вот тебе и вот, думаю. Мало того что садодуры, так еще и считать до 25 не умеют.
Сижу такой, решаю, мучаюсь без компилятора. А потом - бац, телефон из кармана вытащил, в интернет быстро поключился. Зашел на tryerlang.org и там программу проверил и отладил.
А сам сижу и думаю. А зачем решать задачу заполнением массива, да еще и двумерного, если можно сразу вычислить где числа совпадают, а массив и не хранить нигде?
(А про себя думаю: этим ребятам не нужен думающий профессионал. Им нужен человек, которым они сами будут командовать в режиме "я начальник - ты дурак". И будут заставлять выполнять свои бредни глупые да бестолковые).
Подумал-подумал, молча встал и ушел в другую контору. К нормальным чувакам. Не зазнайкам на пустом месте.
Вот как-то так.

FireOwl 18.03.2011 00:58

Ответ: Задачка на математику и логику.
 

Я понял, что ничего не понял. Для правильного решения задачи достаточно заполнить массив, выдергивая и распечатывая координаты нужных ячеек по ходу дела?
P.S. 100 - это от невнимательности, имел ввиду пресловутое 25.

impersonalis 18.03.2011 01:01

Ответ: Задачка на математику и логику.
 
ffinder погоди-погоди. Наверняка, есть какая-то тонкость. МоКа не в забегаловке какой работает, чтоб таких простых ошибок наляпать.

ffinder 18.03.2011 01:08

Ответ: Задачка на математику и логику.
 
какие основания у меня думать, что это всё умышленно? он только что люто зафейлил.

LLI.T.A.L.K.E.R. 18.03.2011 01:14

Ответ: Задачка на математику и логику.
 
Причём тут 5х5=125, а именно 125?
Нужно от 5 до 100.

В итоге МоКа говорит, ffinder ай-да молодец! Все остальные ...

Он сейчас спит? Сколько у него там тек. время.

impersonalis 18.03.2011 01:15

Ответ: Задачка на математику и логику.
 
ты просто завидуешь: он принимающий, а ты - принимаемый.
МоКа ранее зарекомендовал себя только с лучшей стороны, так что сей фейл (если он имеет место быть) был бы очень неуместной кляксой на репутации == (

ffinder 18.03.2011 01:20

Ответ: Задачка на математику и логику.
 
импер, я уже проводил собеседования, руководил небольшой группой разработчиков (5 человек вместе со мной), сдавал проекты, занимался внедрением, работой с заказчиками, а мегамока тут... умничает? и я не имею права указать ему, (и тем самым помочь новичкам), что такая форма собеседований чистый, незамутненный бред? да?


Часовой пояс GMT +4, время: 03:44.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot