powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Программирование - всё больше математикой становится
25 сообщений из 176, страница 7 из 8
Программирование - всё больше математикой становится
    #35250411
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
RatTailкак он это делает нам пох.


С C++ этот пункт не прокатывает, только и всего (Америки вы в этом не открыли).
В отличии от Паскаля, для того чтобы использовать C++ его нужно знать очень хорошо

RatTailя чесно куею с дорогих товарищей; не адекватность просто поражает;
мне типа щас написать полякам: а вы blitz видели? давайте быстренько

Ну это не только с C++ так. Либо велосипед, либо специализированная библиотека (часто бесплатная). Выбор за вами (по моему вполне адекватно).
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35250428
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
RatTailНасчет твоих предложений : это как мертвому припарки. Если не ломит, пропость сюда мой код с твоими техническими поправками и мы увидим еще один отсос.


сколько заплатишь ?
меня и читать то его ломает (так что я пожалуй ограничусь бесплатными советами)

Но могу сказать точно, в своей работе (а я пользую C++ давно и плотно) с описанными тобой проблемами не встречался.
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35250472
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 RatTail

Кстати, именно то что долго работает как раз и связано с тем карманным биллиардом, который устаривает STL с твоими векторами как значениями :) так что не надо про припарки

В C++ очень легко прострелить себе ногу
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35250502
Фотография RatTail
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gluk (Kazan) RatTailНасчет твоих предложений : это как мертвому припарки. Если не ломит, пропость сюда мой код с твоими техническими поправками и мы увидим еще один отсос.


сколько заплатишь ?
меня и читать то его ломает (так что я пожалуй ограничусь бесплатными советами)

Но могу сказать точно, в своей работе (а я пользую C++ давно и плотно) с описанными тобой проблемами не встречался.
так об том же и речь! то что можно прочитать в доке я и сам прочитаю
как "тока" так сразу, в кусты; а мне пардон пистёж про скиму и пр. поебень тоже малоинтересен.
Вот Тим Питерс например не постеснялся спросить у "пацанов" про "память" (сорри, не могу найти конкретно тот топик; ему кстати НИКТО не ответил; жуки-сцуки):
http://www.spoj.pl/forum/search.php?search_author=UncleTimmy&sid=6cec3685bb2f9f34b723ebcb661c72c7
а здесь сразу амбиции, "сколько платишь" (эт ваще не фпестуневкраснуармию)
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35250512
Фотография RatTail
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gluk (Kazan)2 RatTail

Кстати, именно то что долго работает как раз и связано с тем карманным биллиардом, который устаривает STL с твоими векторами как значениями :) так что не надо про припарки

В C++ очень легко прострелить себе ногу
ну дык нах ваще тут упоминать C#, этот чуть ускоренный питон?
а что питон -- это зверь! я это сразу понял; лучше языка вообще быть не может.
Тим Питерс -- это один из его разработчиков.
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35250528
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
RatTailа здесь сразу амбиции, "сколько платишь" (эт ваще не фпестуневкраснуармию)

А кто сказал, что я должен бесплатно делать за тебя твою работу ?
Иди читай документацию

Кстати, на слабо я как правило тоже не ведусь ;)

P.S. Всем пока и до понедельника
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35250576
Фотография RatTail
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gluk (Kazan) RatTailа здесь сразу амбиции, "сколько платишь" (эт ваще не фпестуневкраснуармию)

А кто сказал, что я должен бесплатно делать за тебя твою работу ?
Иди читай документацию

Кстати, на слабо я как правило тоже не ведусь ;)

P.S. Всем пока и до понедельника
моя работа - это детский лепет; насчет "на слабо не ведусь" -- не ну... ваще учись от Тима решать "зодачи" ("проблемы") (только не понятно кто ему платил)

Posted: Sun Nov 27, 2005 19:53 Post subject: Re: POUR1 - Need help with testing strategies

--------------------------------------------------------------------------------

Chen Dingming Benedict wrote:
...
The program still seems to run into errors. I'm suspecting that something might have gone wrong for cases where the min. number of steps required is very large. It's hard to work out such cases using pen and paper... does anyone have a set of test cases/good testing strategies to recommend?

I first wrote a brute-force solver, doing a breadth-first search over all possible states. "A state" here is a pair <a, b> of integers, meaning that vessel A currently contains `a` litres and vessel B `b` litres. The initial state is <0, 0> (both vessels empty). A straightforward, reliable solver then looks like:
Code:
states := a list containing <0, 0>
nsteps := 0
while states is not empty:
nsteps := nsteps + 1
# new_states will be a list of all states that require
# at least nsteps steps to reach for the first time
new_states := an empty list
for each state in states:
for each way of getting a new state newstate from state:
# which means we can empty either vessel, fill
# either vessel, or transfer as much as possible
# from either vessel to the other
if we haven't seen newstate before:
append newstate to new_states
if the target number is in newstate:
return nsteps
states := new_states
return -1 # failure -- not possible

Now that's too slow to get accepted (at least when coded in Python ), but is "obviously correct" so can be used to check other algorithms. The trick isn't to try to speed it, it's to leave the code so bloody obvious that you trust its results 100%.

After that, I wrote a driver to generate test cases at random (picked capacities and a target each uniformly at random from 1 .. 10000), and checked to see that the method above gave the same answer as my then-current "fast" algorithm.

I found that relatively small upper limits were good enough to provoke failure modes. For example, with capacities of 5 and 1, and a target of 3, my first "fast" algorithm attempt assumed (for some reason I can't remember now ) that "fill the smaller vessel first" was a winning strategy, so went through these states:
Code:
0 0
0 1
1 0
1 1
2 0
2 1
3 0

while the brute-force solver found the best sequence:
Code:
0 0
5 0
4 1
4 0
3 1

Your mileage may vary, but I tended to make stupid mistakes like that one, and random testing on small inputs was all it really needed to find them. If I were to do it over again, I'd do exhaustive testing up to a small limit, on all <capacity1, capacity2, target> triples with no element larger than (say) 17.
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35250953
Фотография XDiaBLo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
RatTail2.
Мой код абсолютно прозрачен и интуитивен. И абсолютно работоспособный, тока долго работает.

3.
Насчет твоих предложений : это как мертвому припарки. Если не ломит, пропость сюда мой код с твоими техническими поправками и мы увидим еще один отсос.

Я всегда параметры передаю через константные ссылки, если мне к примеру сами переменные менять не надо, но при этом хочется быстродействия. А у тебя там идёт сплошное копирование объектов, ужос...
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35251109
Фотография tchingiz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gluk (Kazan) tchingiz/topic/541734&pg=4#5492939
/topic/541734&pg=4#5495985


Оператор select-это вызов функции. Он ничего не создает, а возвращает результаты выборки.
Я могу рассматривать create view как создание функции, но с определенными натяжками.
Что касается lambda, то с еще большими натяжками можно говорить об inline view
мы разговариваем в контексте математики.
ссылку на определение функции я давал.
селект удовлетворяет определению функции и значет ею является.
поскольку одному значению на входе ставит в соответствие не более одного на выходе
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35251111
Фотография tchingiz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
RatTail tchingizГлюк (Казань)
просьба на птшные провокации не вестись
на мою, что ли? не пести, кросавчег; я никого не провоцировал.
прочитал
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35251121
Фотография XDiaBLo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tchingiz Gluk (Kazan) tchingiz/topic/541734&pg=4#5492939
/topic/541734&pg=4#5495985


Оператор select-это вызов функции. Он ничего не создает, а возвращает результаты выборки.
Я могу рассматривать create view как создание функции, но с определенными натяжками.
Что касается lambda, то с еще большими натяжками можно говорить об inline view
мы разговариваем в контексте математики.
ссылку на определение функции я давал.
селект удовлетворяет определению функции и значет ею является.
поскольку одному значению на входе ставит в соответствие не более одного на выходе
Аха, конечно, просто один селект, может выдавать разные результаты раз от разу... Хотя бы даже порядок вывода строк если нет ORDER BY, уже может быть разным. Если до Oracle10GR2 GROUP BY хотя и не гарантированно(но все ли об этом знали?) но выдавал отсортированные данные, теперь приходится ORDER BY ставить, это не имеет значения? Если не имеет, то всё равно, записи добавляются, результаты запроса меняются. А это как я понимаю функциональным программированием не пахнет. Хотя я в нём не профи, не могу быть уверенным.
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35251136
Фотография tchingiz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не может один селект на одних входных данных выдавать различные результаты.
порядок строк во множестве не имеет значения
множество {1,2} и {2,1} - это одно и тоже множество
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35251143
egorych
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tchingizне может один селект на одних входных данных выдавать различные результаты. потерял сейчас нить
пример:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
create table tbl (
  id int not null primary key
)

select * from tbl

insert into tbl (id) values( 10 )

select * from tbl

insert into tbl(id) values( 20 )

select * from tbl

...
или я не о том?
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35251337
чал
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
egorych tchingizне может один селект на одних входных данных выдавать различные результаты. потерял сейчас нить
...
или я не о том?

Очевидно, что select выдает разные результаты.
Код: plaintext
1.
SELECT t.name FROM Names t

Здесь параметр t это переменная, которая указывает на текущую запись в таблице Names. Поскольку содержимое записи или сами выбираемые записи могут поменяться, то и результате селекта тоже будет разным.

Это еще более очевидно, если мы запишем в более традиционном для программистов виде:
Код: plaintext
1.
2.
3.
FOREACH t IN Name {
  ret.add(t.name); // Ну типа включить t.name в возвращаемую коллекцию
  }

Это связано с тем, что параметр может (через цепочку ссылок) указывать на разделяемые данные, а значит это уже никак не ФП. Можно конечно засунуть голову в песок и сказать. что я вижу ссылку, а ссылка всегда одна и та же, но это очевидно не катит. Влияние на результат может быть более сложным, например, через критерии выборки, но это уже мелочи.
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35251570
G12345
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Программирование - всё больше становиться быдлокодированием.
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35251575
G12345
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ребята надо уже признать, что быдлокодирование вам дает зарабатывать деньги потому как ничего вы на своих работках полезного не делаете. Есть, конечно, единицы. Всем нужны быдлокодеры, которые будут набирать кодик или вы сами такие, что вы смогли отчитываться перед начальством за сделанные "проекты" и все такое. Ведь так ребяты?
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35251598
Фотография Lelikk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
G12345Ребята надо уже признать, что быдлокодирование вам дает зарабатывать деньги потому как ничего вы на своих работках полезного не делаете. Есть, конечно, единицы. Всем нужны быдлокодеры, которые будут набирать кодик или вы сами такие, что вы смогли отчитываться перед начальством за сделанные "проекты" и все такое. Ведь так ребяты?

Польза - это что? или для кого?
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35251605
G12345
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lelikk
Польза - это что? или для кого?
Для тебя. Потому как без пользы ТЫ никому не нужен.
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35251748
Фотография tchingiz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
egorych tchingizне может один селект на одних входных данных выдавать различные результаты. потерял сейчас нить
пример:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
create table tbl (
  id int not null primary key
)

select * from tbl

insert into tbl (id) values( 10 )

select * from tbl

insert into tbl(id) values( 20 )

select * from tbl

...
или я не о том?
конечно. здесь трое различных входных данных - пустое множество, множество {10}, множество {10, 20}

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
int select(int a){
return a;
}
main(){
int a= 10 ;
select (a);
a =  20 ;
select(a);
}
не смущает же?

tbl это переменная (область памяти где могут хранится отношения) типа отношение.
На вход поступают различные отношения.
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35251770
Фотография Lelikk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
G12345 Lelikk
Польза - это что? или для кого?
Для тебя. Потому как без пользы ТЫ никому не нужен.

Бред.
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35251798
Фотография D129
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gluk (Kazan) D129Я выходил к руководству с несколькими предложениями

А краткая суть предложений не коммерческая тайна ?
Предлагал оставить только два состояния - команда посылается - команда послана. Сделать список команд.
Предлагал отделить сигнализацию ошибок контроллера от команд и состояний - а то придумали
"CommandEnded" и "CommandEndedWithFaults"...

Предлагал заменить "задачи по перевозке" (хранящиеся в отдельной таблице) на систему пакетов - с "адресом назначения" и "роутером", который будет в рантайм решать, куда отправить пакет,
Это заменило бы еще одну таблицу - "пути" в которой жестко прописано, как и куда отправлять...
Предлагал заменить таблицы типа "полки" "ящики" "коробки" "болтики" на две - по принципу BOM (bill of materials) - иерархический список "дерева компонентов", что позволило бы рекурсивно ее обрабатывать...
С мультитрейдингом не баловаться...
Сейчас посмотрел на тему топика, и понял, что я со своей прикладной задачей опять против...
Ну извиняйте, если что не так...
(мнет в руках поношенную заячью ушанку)
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35252173
egorych
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tchingiz egorych...или я не о том?
конечно. здесь трое различных входных данных - пустое множество, множество {10}, множество {10, 20}
tbl это переменная (область памяти где могут хранится отношения) типа отношение.
На вход поступают различные отношения.понято и принято. консенсус
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35252529
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
RatTailмоя работа - это детский лепет; насчет "на слабо не ведусь" -- не ну... ваще учись от Тима решать "зодачи" ("проблемы") (только не понятно кто ему платил)


Друг мой забаненный, я привык сам решать какие з о дачи делать бесплатно :)
Я постарался объяснить, почему твой пример работает медленно.

Если ты этого не понял (или сделал вид что не понял)
ты или дурак или провакатор (с)
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35252534
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tchingizмы разговариваем в контексте математики.
ссылку на определение функции я давал.


Предлагаю сойтись на том, что мы говорим о разном
...
Рейтинг: 0 / 0
Программирование - всё больше математикой становится
    #35252539
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
G12345 Lelikk
Польза - это что? или для кого?
Для тебя. Потому как без пользы ТЫ никому не нужен.

Для меня есть польза, для себя - ТЫ сам решай

P.S. что то троллей развелось ...
...
Рейтинг: 0 / 0
25 сообщений из 176, страница 7 из 8
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Программирование - всё больше математикой становится
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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