Chyby

Nachádza sa tu zoznam chýb a varovaní, ktoré môže program vypísať. Pokiaľ je nastavené vypisovanie do súboru, vypíše sa iba číslo chyby bez popisu. (Napr. "ERR1")


ERR1: Nepoznam prikaz '[prikaz]'

Program číta vstup po riadkoch a prvé slovo (nemedzerovú postupnosť znakov) interpretuje ako príkaz, podľa ktorého rozhoduje, čo bude robiť. Zoznam všetkých príkazov je v časti príkazy. Pokiaľ sa chyba objavila, pravdepodobne ste preklepli názov príkazu alebo v ňom chýbajú medzery.

Druhý prípad, keď sa chyba generuje, je pri práci s registrami - keď za identifikátorom registra nasleduje neznámy príkaz.

	> neznamy prikaz
	ERR1: Nepoznam prikaz 'neznamy'
	> A :0
	ERR1: Nepoznam prikaz ':0'
	> A : 0
	6x + 2

ERR2: Nespravny format zaokruhlovania.

Chyba vzniká pri príkaze [reg] : [číslo]. Za dvojbodkou musí nasledovať aspoň jedna medzera a celé číslo od 0 do 99 vrátane. Zápis tohoto čísla môže mať najviac dva znaky. (Čiže napr. "02" je v poriadku.)

	> A : edo
	ERR2: Nespravny format zaokruhlovania.
	> A : 120
	ERR2: Nespravny format zaokruhlovania.
	> A : 3
	6.000x + 2.000

ERR3: Nespravne zadany polynom.

Chyba vzniká pri manuálnom zadávaní polynómu. Polynóm musí začínať ľavou a končiť pravou zátvorkou, zvyšok medzitým sa už nejak interpretuje ako reálne čísla.

	> A = (2 0
	ERR3: Nespravne zadany polynom.
	> A = (t3rm1nat0r)
	A = 3.00x2 + 1.00x + 0.00
	> A = B*2
	ERR3: Nespravne zadany polynom.
	> A = B*(2)
	A = 0

ERR4: Nepoznam operator '[znak]'

Chyba vzniká pri priradzovacom príkaze, pokiaľ na pravej strane je nejaká neznáma operácia s polynómami. Povolené operácie sú "+", "-", "*", "/", "%" a "'".

	> A = BC
	ERR4: Nepoznam operator 'C'
	> A = B & C
	ERR4: Nepoznam operator '&'
	> A = (1, 2) plus (3, 4)
	ERR4: Nepoznam operator 'p'

ERR5: Nastalo pretecenie - polynom je prilis velkeho stupna.

Chyba vzniká pri priradzovacom príkaze, ak stupeň polynómu presiahne alebo je rovný MAXDEG (momentálne 20).

	> A = (19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0)
	A = 19.00x19 + 18.00x18 + 17.00x17 + 16.00x16 + 15.00x15 + 14.00x14 + 13.00x13 +
	 12.00x12 + 11.00x11 + 10.00x10 + 9.00x9 + 8.00x8 + 7.00x7 + 6.00x6 + 5.00x5 + 4
	.00x4 + 3.00x3 + 2.00x2 + 1.00x + 0.00
	> B = A * (1, 0)
	ERR5: Nastalo pretecenie - polynom je prilis velkeho stupna.

ERR6: Delenie nulovym polynomom.

Chyba vzniká pri delení polynómu a pri počítani zvyšku pri delení. Deliteľ nemôže byť nulový polynóm.

	> A = (3, 4)/(0)
	ERR6: Delenie nulovym polynomom.
	> A = (3, 4)/()
	ERR6: Delenie nulovym polynomom.

ERR7: Neviem najst subor [subor]

Chyba vzniká pri načítavaní súboru. Kritéria pre umiestnenie súboru sú uvedené pri popise načítavania.

	> < neexistujuci.subor
	ERR7: Neviem najst subor neexistujuci.subor

ERR8: Nespravne zadany interval.

Chyba vzniká pri hľadaní koreňa polynómu. Druhý argument príkazu je interval. Ten musí začínať ľavou a končiť pravou zátvorkou. Vnútri sa program pokusí rozoznať dve reálne čísla. Ak sa to podarí, musí byť ešte prvé číslo menšierovné druhému.

	> root A (8 10
	ERR8: Nespravne zadany interval.
	> root A (13.8 -4)
	ERR8: Nespravne zadany interval.
	> root A 4
	ERR8: Nespravne zadany interval.

ERR9: Hodnota polynomu na koncoch intervalu musi mat opacne znamienko.

Chyba vzniká pri hľadaní koreňa polynómu. Koreň sa hľadá v polootvorenom intervale, takže aby bolo zaručené, že sa v ňom nachádza, musí byť splnená nasledujúca podmienka. Buď je hodnota na ľavom kraji intervalu 0, alebo je na jednom konci intervalu hodnota kladná a na druhom záporná. Ak splnená nie je, vznikne táto chyba.

	> A = (1, 0, 0)
	A = 1.00x2 + 0.00x + 0.00
	> root A (-1, 1)
	Pouzivam Newtonovu metodu.
	ERR9: Hodnota polynomu na koncoch intervalu musi mat opacne znamienko.

ERR10: Nespravne zadany argument.

Chyba vzniká pri príkaze [reg] ([reálne číslo]). Za identifikátorom registra musí byť v zátvorkách uvedené jedno reálne číslo. Ak sú tam nejaké znaky (špeciálne aj čísla) navyše, ignorujú sa.

	> A ( 3
	ERR10: Nespravne zadany argument.
	> A (tri)
	ERR10: Nespravne zadany argument.
	> A (3)
	A(3.00000000000) = 8.00000000000

WAR21: Newtonova metoda zlyhala; pouzivam metodu secnicou.

Pri používaní Newtonovej metódy sa môže stať, že koreň vychádza mimo zadaného intervalu. V takom prípade sa použije sečnicová metóda. Varovanie vypisuje príkaz root.

	> A = (0.001, 1, 0, -1)
	A = 0.00x3 + 1.00x2 + 0.00x - 1.00
	> root A (-0.99, 1.01)
	Pouzivam Newtonovu metodu.
	WAR21: Newtonova metoda zlyhala; pouzivam metodu secnicou.
	x    = 0.99950062400
	A(x) = 0.00000000000

Chyby

Varovania