Программирование - это просто

ecosolver

Ночной Кошмар Меркантильной Бабы =)
Ну, так-то да - повышенное внимание к синтаксису притупляет внимание к эффективности алгоритма.
А, впрочем, о чем это я, если вчерашние школьники (студенты) слыхом не слыхивали о понятии "ассимтотика алгоритма".
Ну, школьники - понятно, они еще не знают про "о" малые и большие, но глухота в этом вопросе такая плотная, что даже студентам, "нюхавшим" матанализ трудно втолковать ассимтотическую оценку.
В вопросе о точности - тоже мрак!
Даю студенту задачу - Написать функцию ( курс называется "С++"), вычисляющую значение синуса своего аргумента.
Ну, тут проблем нет - накорябать цикл, суммирующий ряд может каждый.
Спрашиваю - "Какова точность вашей функции?" - "?? - Щас!" - Идет, приделывает сравнение со значением, вычисленным стандартной фунцией, и утверждает, что нашел(!!!) точность своего алгоритма-фукции!
Как бы можно сделать проще - сравнить с синусом 30 и 90 градусов, так как значения этих синусов известны ТОЧНО...
 

Arkad

Местный
Как бы можно сделать проще - сравнить с синусом 30 и 90 градусов, так как значения этих синусов известны ТОЧНО...
Так-то да, казалось бы, но аргумент синуса в градусах - это как?
А-га! - думает наш умный студент - нужны радианы, и тут возникает практически нерешабельная проблема - А, где взять "Пи"? - Вычислять арксинус? - "И опять пошла морока про коварный зарубеж!" - Ведь теперь спросят про точность этого "Пи"!.
Да, и, вообще, порочная практика говорить, что точность алгоритма - его внешний признак - как он попадает в заранее известный результат!
Точность алгоритма - это его внутреннее свойство, нечто, что в него заложено автором еще на этапе проектирования!
 

ecosolver

Ночной Кошмар Меркантильной Бабы =)
Так-то да, казалось бы, но аргумент синуса в градусах - это как?
А-га! - думает наш умный студент - нужны радианы, и тут возникает практически нерешабельная проблема - А, где взять "Пи"? - Вычислять арксинус? - "И опять пошла морока про коварный зарубеж!" - Ведь теперь спросят про точность этого "Пи"!.
Да, и, вообще, порочная практика говорить, что точность алгоритма - его внешний признак - как он попадает в заранее известный результат!
Точность алгоритма - это его внутреннее свойство, нечто, что в него заложено автором еще на этапе проектирования!
Ну тут понятно ,что точность определяется количеством прогонов цикла (членов ряда Тейлора). Чем их больше, тем алгоритм точнее. А про точность Пи - это уже не имеет отношение к алгоритму - это точность вводимых данных, скорее...
 

Arkad

Местный
Ну тут понятно ,что точность определяется количеством прогонов цикла (членов ряда Тейлора). Чем их больше, тем алгоритм точнее.
Как бы ни так!
Я вот тоже - Написал, и теперь пытаюсь вспомнить, а чем у этого горе-программиста оканчивался цикл?
Скорее всего была просто "вбита" константа - единица с кучей нулей - количество итераций - "Много - не мало, сойдет! - запустим - там посмотрим." - поэтому он не смог ответить на вопрос о точности.
И, это люди, что-то слыхавшие о сходимости рядов!?
Теперь я понимаю учеников, которые говорят - "Впаривают какую-то муть! - Мне это никогда не пригодится!".
Такой "ученик" заранее настраивает себя (программирует) на глухоту к предмету так, что мозг не узнает давно пройденное (ряд в программировании не похож на ряд из матана).
Вот и выходит, что кто-то "впаривает" про Коши и Даламбера, а потом кто-то другой пытается на практике научить правильно суммировать ряд, и натыкается на "мину" "не пригодится!".
 
Последнее редактирование:

ecosolver

Ночной Кошмар Меркантильной Бабы =)
Изучайте PureBasic. Простой и мощный язык программирования.
Это не отменяет необходимости владеть арифметическими действиями, в частности знать признаки сходимости рядов
не хуже любого советского пионера!
 

Arkad

Местный
Это не отменяет необходимости владеть арифметическими действиями, в частности знать признаки сходимости рядов
не хуже любого советского пионера!
Владение арифметическими действиями подразумевает, в первую очередь, владение точностью этих самых действий.
 

ecosolver

Ночной Кошмар Меркантильной Бабы =)
Владение арифметическими действиями подразумевает, в первую очередь, владение точностью этих самых действий.
Ну я бы еще добавил, надо знать цену этой точности.
Чувствовать ситуации, когда можно согласиться с тем, что 2+2=4 и не высчитывать, сколько будет 2,1234445 килограмм картошки + 2,033333 килограмм картошки, а когда , напротив , можно и нужно "гнаться за точностью" :)
 

Arkad

Местный
Ну я бы еще добавил, надо знать цену этой точности.
Чувствовать ситуации, когда можно согласиться с тем, что 2+2=4 и не высчитывать, сколько будет 2,1234445 килограмм картошки + 2,033333 килограмм картошки, а когда , напротив , можно и нужно "гнаться за точностью" :)
А, мы-то гадаем, откуда эти абсурдные "... ученые открыли..."!
А, это просто кто-то решил, что можно согласиться с вычисленным "=", и у кого-то срослась бредовая гипотеза, и вот вам и "открытие"!
 

ecosolver

Ночной Кошмар Меркантильной Бабы =)
А, мы-то гадаем, откуда эти абсурдные "... ученые открыли..."!
А, это просто кто-то решил, что можно согласиться с вычисленным "=", и у кого-то срослась бредовая гипотеза, и вот вам и "открытие"!
В моем примере можно не согласиться с вычисленным "равно" и начать оспаривать бредовую гипотезу продавца, что он продает мне ровно четыре килограмма картошки.
Правда, есть риск, что очередь стоящих за мной людей выпишет мне Шнобелевскую премию. прямо на месте несоглашения :)
 

Arkad

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

ecosolver

Ночной Кошмар Меркантильной Бабы =)
А, Вам важно именно эти "четыре", или "сумма к оплате", которая является практическим выводом из бредовой гипотезы "четыре"?
На практике дальше последуют "принято в уплату...", "Сдача - ...", где все уже забыли с чего все началось, и оспаривать можно каждую закорючку..
Сумма к оплате важна конечно :)
 

Arkad

Местный
Сумма к оплате важна конечно :)
Если он так считал отвешанные килограммы товара, то как он будет считать принятые к оплате деньги?
Также "примерно", то он может насчитать так, что еще останется должен.
Т. е. как он считал килограммы - не важно. Важен итог вашего посещения магазина - с чем вы вернетесь домой.
Промежуточные итоги, и суммы - пыль! - Удел праздных теоретиков.
 

Arkad

Местный
Так, чтобы иметь возможность отложить себе мимо кассы, разумеется...
Его "иметь возможность" никого кроме него самого не интересует.
А, реально в процессе есть два действующих лица - коммерсант (владелец товара), и покупатель.
Коммерсант где-то прикупил определенный объем товара, и поручил оператору (продавцу за прилавком) его продать, и выручить с продажи определенную сумму.
Оператор в своих операциях и рассчетах имеет определенную погрешность так, что коммерсант недополучит ожидаемую выручку.
Источник этой погрешности - "отложить себе", весы врут. или калькулятор - не суть важно.
Важно (для коммерсанта) знать погрешность, с какой оператор переводит товар в выручку.
А, что он там - ворует, или весами пользоваться не умеет, или таблицу умножения забыл - пох.
Коммерсант выберет для реализации своего товара оператора с наименьшей погрешностью.
Как и покупателю - нужен определенный продукт за приемлемую (имеющуюся в наличии) или минимальную стоимость.
И коммерсант и покупатель будут выбирать оператора с наименьшей погрешностью.
 
Последнее редактирование:

ecosolver

Ночной Кошмар Меркантильной Бабы =)
Его "иметь возможность" никого кроме него самого не интересует.
А, реально в процессе есть два действующих лица - коммерсант (владелец товара), и покупатель.
Коммерсант где-то прикупил определенный объем товара, и поручил оператору (продавцу за прилавком) его продать, и выручить с продажи определенную сумму.
Оператор в своих операциях и рассчетах имеет определенную погрешность так, что коммерсант недополучит ожидаемую выручку.
Источник этой погрешности - "отложить себе", весы врут. или калькулятор - не суть важно.
Важно (для коммерсанта) знать погрешность, с какой оператор переводит товар в выручку.
А, что он там - ворует, или весами пользоваться не умеет, или таблицу умножения забыл - пох.
Коммерсант выберет для реализации своего товара оператора с наименьшей погрешностью.
Как и покупателю - нужен определенный продукт за приемлемую (имеющуюся в наличии) или минимальную стоимость.
И коммерсант и покупатель будут выбирать оператора с наименьшей погрешностью.
что такое "наименьшая погрешность"? Каков нижний предел этой погрешности и как его определить?
 

Arkad

Местный
что такое "наименьшая погрешность"? Каков нижний предел этой погрешности и как его определить?
Погрешность - величина не абсолютная, а сравнительная.
Нет никакого нижнего допустимого предела как мировой константы!
Можно только говорить "у этого погрешность меньше, чем у того", что и требуется для выбора добросовестного оператора.
Погрешность "в минус" коммерсант называет недостачей или убытком.
Можно, конечно, фиксировать потери, и говорить о допустимых убытках, но тогда коммерсант должен при передаче товара на реализацию декларировать допустимую погрешность весов и взвешивания, и погрешность калькуляторов (кассовых аппаратов).
Тут уж пределы определяются резервами для компенсации убытка (если таковой случится).
 
Последнее редактирование:

ecosolver

Ночной Кошмар Меркантильной Бабы =)
Погрешность - величина не абсолютная, а сравнительная.
Нет никакого нижнего допустимого предела как мировой константы!
Можно только говорить "у этого погрешность меньше, чем у того", что и требуется для выбора добросовестного оператора.
Погрешность "в минус" коммерсант называет недостачей или убытком.
Можно, конечно, фиксировать потери, и говорить о допустимых убытках, но тогда коммерсант должен при передаче товара на реализацию декларировать допустимую погрешность весов и взвешивания, и погрешность калькуляторов (кассовых аппаратов).
Тут уж пределы определяются резервами для компенсации убытка (если таковой случится).
Ну допустим, выбираем не абсолютную (есть и такая), а относительную погрешность Оператора (в нашей терминологии).
Относительную, значит относительно какого-то эталона.
Что выбираем за эталон?
 

Логопед

Модератор
Команда форума
Модератор
Это что за флуд? В тематической ветке. Потрудитесь убрать флуд.
 

ecosolver

Ночной Кошмар Меркантильной Бабы =)
Это что за флуд? В тематической ветке. Потрудитесь убрать флуд.
Вообще-то это про программирование.
Программирование это что такое ? (в классическом, а не понторезном понимании) - Модель, алгоритм, программа)
Так вот - эти посты - про модель предметной области :)

Программа "сложить два и два", а вот какой МОДЕЛИ она соответствует - в этом-то вся и соль :)
 
Сверху