Kezdőlap › Fórumok › Programozás › PHP – képletszámítás, 1-1 néha nem nulla ?
- This topic has 28 hozzászólás, 5 résztvevő, and was last updated 16 years, 11 months telt el by
gabaman.
-
SzerzőBejegyzés
-
2008-07-23-14:31 #2168211Pingus wrote:Csak azért érdekes, mivel a kivonás előtt ha kiiratom akkor 1 lesz az eredmény,
ami helyes. Ha ebből levon 1 -et már elrontja, mi közben 1-1 -re helyesen 0-t ír.
Minden esere több mint érdekes 🙂Csak azért, mert ilyen mezítlábas „programnyelvet” használsz.
Igazi nyelvben, ahol a változók típusával neked kell tisztában lenned, látnád a különbséget.A különbséget a vágyaid és a valóság között.
De hát a számítógéphez mindenki ért…2008-07-23-14:31 #2168212Pingus wrote:Csak azért érdekes, mivel a kivonás előtt ha kiiratom akkor 1 lesz az eredmény,
ami helyes. Ha ebből levon 1 -et már elrontja, mi közben 1-1 -re helyesen 0-t ír.
Minden esere több mint érdekes 🙂Csak azért, mert ilyen mezítlábas „programnyelvet” használsz.
Igazi nyelvben, ahol a változók típusával neked kell tisztában lenned, látnád a különbséget.A különbséget a vágyaid és a valóság között.
De hát a számítógéphez mindenki ért…2008-07-23-14:43 #2168213Hogy mi a -1.1102230246252E-16? Egyszerű, sem a 0.9 sem az 1.9 nem írható le véges bináris tizedestört alakban, ez a szám a két átváltási hiba különbsége. Mellesleg a tízes-bináris átváltás középiskolai tananyag.
„Csak azért érdekes, mivel a kivonás előtt ha kiiratom akkor 1 lesz az eredmény,
ami helyes. Ha ebből levon 1 -et már elrontja, mi közben egy szimpla 1-1 -re helyesen 0-t ír.
Minden esetre több mint érdekes”Akkor rosszul írja ki azt az egyest, helyesen 0.99999999999999988898769753748 az eredmény. Ha ebből kivonsz még egyet, akkor kapod a -0.00000000000000011102230246252 értéket.
2008-07-23-14:43 #2168214Hogy mi a -1.1102230246252E-16? Egyszerű, sem a 0.9 sem az 1.9 nem írható le véges bináris tizedestört alakban, ez a szám a két átváltási hiba különbsége. Mellesleg a tízes-bináris átváltás középiskolai tananyag.
„Csak azért érdekes, mivel a kivonás előtt ha kiiratom akkor 1 lesz az eredmény,
ami helyes. Ha ebből levon 1 -et már elrontja, mi közben egy szimpla 1-1 -re helyesen 0-t ír.
Minden esetre több mint érdekes”Akkor rosszul írja ki azt az egyest, helyesen 0.99999999999999988898769753748 az eredmény. Ha ebből kivonsz még egyet, akkor kapod a -0.00000000000000011102230246252 értéket.
2008-07-23-14:43 #2168215gabaman wrote:Van ez így, amikor egy hozzá nem értő áll neki programozni. Ezt az is bizonyítja, hogy a probléma okát már fent leírtad, csak nem vetted észre hogy majdnem teljesen válaszoltál magadnak.Azért hiszed illetve tűnik Neked az, hogy hozzá nem értő vagyok, mert
(mielőtt PHP-zni kezdtem volna), régebben a PHP-hez képest egy erősen típusos
nyelvet (Pascal) használtam. Sajnos megkell még szoknom a PHP engedékenységét,
illetve az ebből adódó hibákat elkerülni. Bár igaz, hogy 18-20 évvel ezelőtt
BASIC-ben is belefutottam hasonló automatikus típuskonverzió okozta hibákba,
de azt követő jó pár évnyi Pascal-ozás elkényesztetett e téren. 😀
Nyilván Pascal-ban a megfelelő típusú változók definiálása és a szükséges
típuskonverziók miatt nem fordulna elő ehhez hasonló.2008-07-23-14:43 #2168216gabaman wrote:Van ez így, amikor egy hozzá nem értő áll neki programozni. Ezt az is bizonyítja, hogy a probléma okát már fent leírtad, csak nem vetted észre hogy majdnem teljesen válaszoltál magadnak.Azért hiszed illetve tűnik Neked az, hogy hozzá nem értő vagyok, mert
(mielőtt PHP-zni kezdtem volna), régebben a PHP-hez képest egy erősen típusos
nyelvet (Pascal) használtam. Sajnos megkell még szoknom a PHP engedékenységét,
illetve az ebből adódó hibákat elkerülni. Bár igaz, hogy 18-20 évvel ezelőtt
BASIC-ben is belefutottam hasonló automatikus típuskonverzió okozta hibákba,
de azt követő jó pár évnyi Pascal-ozás elkényesztetett e téren. 😀
Nyilván Pascal-ban a megfelelő típusú változók definiálása és a szükséges
típuskonverziók miatt nem fordulna elő ehhez hasonló.2008-07-23-14:52 #2168217„Azért hiszed illetve tűnik Neked az, hogy hozzá nem értő vagyok, mert
(mielőtt PHP-zni kezdtem volna), régebben a PHP-hez képest egy erősen típusos
nyelvet (Pascal) használtam.”Rosszul ítéltelek meg, én csak assembly, C/C++, Java, PHP, Python és C# nyelvekhez értek, a Pascal tudásod mellet ezek eltörpülnek. A BASIC-et ne is említsem. Biztosan én tévedek és a PHP nem működik megfelelően.
2008-07-23-14:52 #2168218„Azért hiszed illetve tűnik Neked az, hogy hozzá nem értő vagyok, mert
(mielőtt PHP-zni kezdtem volna), régebben a PHP-hez képest egy erősen típusos
nyelvet (Pascal) használtam.”Rosszul ítéltelek meg, én csak assembly, C/C++, Java, PHP, Python és C# nyelvekhez értek, a Pascal tudásod mellet ezek eltörpülnek. A BASIC-et ne is említsem. Biztosan én tévedek és a PHP nem működik megfelelően.
2008-07-23-15:20 #2168219gabaman wrote:„Azért hiszed illetve tűnik Neked az, hogy hozzá nem értő vagyok, mert
(mielőtt PHP-zni kezdtem volna), régebben a PHP-hez képest egy erősen típusos
nyelvet (Pascal) használtam.”Rosszul ítéltelek meg, én csak assembly, C/C++, Java, PHP, Python és C# nyelvekhez értek, a Pascal tudásod mellet ezek eltörpülnek. A BASIC-et ne is említsem. Biztosan én tévedek és a PHP nem működik megfelelően.
Nem mondtam hogy a PHP nem jól működik. Hanem azt kérdeztem miért
volt a számítás hibás. A kettő között nagy a különbség.
Nyilván való hogy ezek után alaposabban figyelek a típus-konverziós esetekre.
Továbbá azt sem hiszem, hogy az én Pascal tudásom mellett eltörpülne a Te nem kevés
programozási nyelvismereted — legyél szíves ne személyeskedj !!
Hozzá tenném még az előző hozzászólásodban említett „Mellesleg a
tízes-bináris átváltás középiskolai tananyag.” megjegyzésedhez,
hogy valóban középiskolai anyag, de ettől függetlenül a főiskolai matematikai/informatikai
szakon ezt szintén alaposan tanították, és teljesen még nem felejtettem el.
Mivel mint olvashattad eddig nem volt dolgom PHP-vel… na de hagyjuk, nem ér ez ennyit 🙂2008-07-23-15:20 #2168220gabaman wrote:„Azért hiszed illetve tűnik Neked az, hogy hozzá nem értő vagyok, mert
(mielőtt PHP-zni kezdtem volna), régebben a PHP-hez képest egy erősen típusos
nyelvet (Pascal) használtam.”Rosszul ítéltelek meg, én csak assembly, C/C++, Java, PHP, Python és C# nyelvekhez értek, a Pascal tudásod mellet ezek eltörpülnek. A BASIC-et ne is említsem. Biztosan én tévedek és a PHP nem működik megfelelően.
Nem mondtam hogy a PHP nem jól működik. Hanem azt kérdeztem miért
volt a számítás hibás. A kettő között nagy a különbség.
Nyilván való hogy ezek után alaposabban figyelek a típus-konverziós esetekre.
Továbbá azt sem hiszem, hogy az én Pascal tudásom mellett eltörpülne a Te nem kevés
programozási nyelvismereted — legyél szíves ne személyeskedj !!
Hozzá tenném még az előző hozzászólásodban említett „Mellesleg a
tízes-bináris átváltás középiskolai tananyag.” megjegyzésedhez,
hogy valóban középiskolai anyag, de ettől függetlenül a főiskolai matematikai/informatikai
szakon ezt szintén alaposan tanították, és teljesen még nem felejtettem el.
Mivel mint olvashattad eddig nem volt dolgom PHP-vel… na de hagyjuk, nem ér ez ennyit 🙂 -
SzerzőBejegyzés
- Be kell jelentkezni a hozzászóláshoz.
legutóbbi hsz