C, PHP, VB, .NET

Дневникът на Филип Петров


* A, B и C

Публикувано на 02 януари 2009 в раздел Математика.

Това е един стара математическа заблуда, която успешно заблуждава студенти по математика и до днес.

Нека имаме три различни и произволни числа – A, B и C, които удовлетворяват следното равенство:

A = B + C

Умножете равенството по (A – B):

A*(A-B) = (B + C)*(A-B)

=> AA – AB = AB + AC – BB – BC

Прехвърлете AC от ляво:

AA – AB – AC = AB – BB – BC

Сега от ляво изнесете A пред скоби, а от дясно изнесете B пред скоби:

A*(A – B – C) = B*(A – B – C)

Накрая разделете двете страни на (A – B – C):

A = B

Но нали A и B бяха две различни числа?

 



4 коментара


  1. Умножаването по (A-B) е равносилно на умножаване по C

  2. sdiankov каза:

    като умножим двете страни на уравнението по (А-В), все едно го умножаваме по С, а ако А=В, то С=0 и всъщност умножаваме по 0. мисля, че там е уловката, но не съм достатъчно добър по математика, че да мога да го формулирам наукообразно:)

  3. Vivianne каза:

    А и В са различни числа. От равенството А=В+С прехвърляме В и С от другата страна и равенството става А-В-С=0. В предпоследния ред на задачата пише, че се уравнението се разделя на (А-В-С), но това не е възможно, тъй като на нула не се дели. Просто всяко число, умножено по нула, дава отговор нула.

  4. Филип Петров каза:

    Vivianne – Браво! Именно деленето на нула е голямата уловка.

    Пуснах тази задача сред трима колеги математици от ФМИ и всички хванаха уловката за доста кратко време. Пуснах я и сред програмисти (9 на брой) и за мое огромно очудване само един успя да намери отговора за разумно кратко време. Това за мен е много странно, защото в часовете по програмиране се обръща огромно внимание на деленето на нула и винаги ги учим да проверяват променливите…

Добави коментар

Адресът на електронната поща няма да се публикува


*