Matematické Fórum

Nevíte-li si rady s jakýmkoliv matematickým problémem, toto místo je pro vás jako dělané.

Nástěnka
!! 17.06.2018 (Jel.) Khanova škola zve nadšence ke spolupráci na překladech návodů pro učitele a rodiče.
! 04.11.2016 (Jel.) Čtete, prosím, před vložení dotazu, děkuji!
17.01.2016 (Jel.) Rok 2016 s novými a novějšími krystaly od kolegy Pavla!
17.01.2016 (Jel.) Nabídka knih z oborů matematiky, fyziky, chemie
23.10.2013 (Jel.) Zkuste před zadáním dotazu použít některý z online-nástrojů, konzultovat použití můžete v sekci CAS.

Nejste přihlášen(a). Přihlásit

#1 13. 02. 2020 18:36

pebe
Zelenáč
Příspěvky: 7
Škola: JCU
Pozice: student
Reputace:   
 

LaTeX - rovnice

Zdravím.
Prosím, mohl by mi někdo pomoci? Už jsem zoufalá. S LaTeXem jsem poměrně začátečník, ale už poměrně zvládám co potřebuji. Ovšem jeden problém tu je.

Když píšu soustavu rovnic pod sebe potřebuji, abych měla "rovná se" pěkně pod sebou, aby to mělo pěknou úpravu.
Nemůže se mi to za žádnou cenu podařit.

Někde jsem našla radu & = & . Ovšem to mi moc nepomohlo.
$$4x + 2y & = & 20 + z $$
$$6z - 3y & = & 0 $$
$$x & = & 1/4$$   
                       
S $$ mi to prostě nefunguje. ( $$ = dva dolary.. nevím jak to sem zapsat, snad pochopíte)


Dále jsem našla příkaz :
\begin{eqnarray}
4x + 2y & = & 20 + z \\
6z - 3y & = & 0 \\
x & = & 1/4
\end{eqnarray}

Ten mi sice pomohl, ale abych měla pak rovnice ve dvou sloupcích, tak mi to udělá vážně velkou mezeru mezi textem a rovnicemi, což nevím jak odstranit. Ono to tu mezeru udělá i když to ve dvou sloupcích nemám, ale pokud mám ty dva sloupce tak to je hodně znát a vypadá to strašně.
Jak se této mezery zbavit? Nebo víte o jiném příkazu, který by mi pomohl?

Prosím o pomoc
Předem děkuji :)

Offline

  • (téma jako vyřešené označil(a) pebe)

#2 13. 02. 2020 19:03

Ferdish
Příspěvky: 2015
Škola: PF UPJŠ, ÚEF SAV
Pozice: postdok
Reputace:   58 
 

Re: LaTeX - rovnice

Áno, na jednoduché zarovnanie viacerých rovníc sa používa znak "&", treba však vedieť ako ho použiť.

Pre náš prípad (3 rovnice pod sebou zarovnané podľa znamienka "=") treba najskôr LaTeXovému editoru dať vedieť, aby prešiel s vygenerovaním zápisu do ďalšieho riadku.
To sa robí pomocou symbolu dvoch spätných lomítok, teda znaku "\\". Po jeho zadaní v zápise editor začne všetko za týmto symbolom generovať na ďalší riadok.
Ak "\\" použiješ znova, tak prejde na ďalší riadok atď. Pritom nezáleží na to, či tebou generovaný kód píšeš do jedného riadka, alebo prejdeš na riadok nový.
Pokiaľ však plánuješ napísať takto väčší počet rovníc, je lepšie pri použití "\\" prejsť aj v zápise kódu na nový riadok - je to potom prehľadnejšie.

Ako príklad si vygenerujem 4 rovnice, každú do vlastného riadka a zatiaľ bez zarovnania. Môžem ich zapísať do jedného riadka takto (znak pre nový riadok som pre istotu zvýraznil)


a + b = c + d \\ \frac{e}{f} = g - h \cdot k \\ \sin^2 \alpha + \cos^2 \alpha = 1 \\ c^2 = a^2 + b^2 -2ab\cos\gamma


alebo prehľadnejšie každú do jedného riadka, teda


a + b = c + d \\
\frac{e}{f} = g - h \cdot k \\
\sin^2 \alpha + \cos^2 \alpha = 1 \\
c^2 = a^2 + b^2 -2ab\cos\gamma


Oba zápisy sú rovnocenné, pretože po ich obložení znakom dolára z každej strany mi oba vygenerujú to isté, akurát druhá forma kódu je prehľadnejšia:

$a + b = c + d \\ \frac{e}{f} = g - h \cdot k \\ \sin^2 \alpha + \cos^2 \alpha = 1 \\ c^2 = a^2 + b^2 -2ab\cos\gamma$


$a + b = c + d \\
\frac{e}{f} = g - h \cdot k \\
\sin^2 \alpha + \cos^2 \alpha = 1 \\
c^2 = a^2 + b^2 -2ab\cos\gamma$

Offline

 

#3 13. 02. 2020 19:33 — Editoval Ferdish (13. 02. 2020 19:34)

Ferdish
Příspěvky: 2015
Škola: PF UPJŠ, ÚEF SAV
Pozice: postdok
Reputace:   58 
 

Re: LaTeX - rovnice

Teraz prejdeme k zarovnávaniu rovníc. Ako som už povedal v úvode, používa sa na to znak ampersand alebo inak "&". Rovnice v riadkoch sa zarovnajú pod seba podľa pozície tohto znaku v tom ktorom riadku.

Na to aby fungoval správne a aby sme nemuseli navyše používať prostredie align alebo split, je potrebné dodržiavať jednu vec, a síce v každej zarovnávanej časti/riadku môže byť najviac jeden tento znak.

Taktiež sa netreba zľaknúť, keď ti náhľadové okno nášho editora bude ukazovať, že tebou napísaný kód je chybný. Náhľadové okno oproti plnokrvnému LaTeXu totiž nemá niektoré prostredia aktivované.
Dôležité je to, čo sa ti z kódu vygeneruje v texte príspevku, preto je lepšie na náhľady podobného kódu použiť rovno telo správy a tlačítko "Náhled".

V prípade zložitejšieho zarovnávania viacerých rovníc v jednom riadku odporúčam hľadať v príručkách LaTeXu alebo na internete, napr. tu: https://www.overleaf.com/learn/latex/Al … th_amsmath



Jednoduché zarovnávanie si ukážeme na príklade našich štyroch rovníc usporiadaných do štyroch riadkov z predošlého príspevku.
Dajme tomu, že ich chcem zarovnať všetky naľavo, umiestnim teda znak "&" naľavo od každej rovnice (znova farebne zvýrazním):


& a + b = c + d \\
& \frac{e}{f} = g - h \cdot k \\
& \sin^2 \alpha + \cos^2 \alpha = 1 \\
& c^2 = a^2 + b^2 -2ab\cos\gamma


Následne obložím dolármi a LaTeX mi vygeneruje toto:


$& a + b = c + d \\
& \frac{e}{f} = g - h \cdot k \\
& \sin^2 \alpha + \cos^2 \alpha = 1 \\
& c^2 = a^2 + b^2 -2ab\cos\gamma$


Ak budem chcieť zarovnať rovnice vpravo, hodím znaky "&" na koniec každej z rovníc, ale ešte pred riadkovací znak:


a + b = c + d & \\
\frac{e}{f} = g - h \cdot k & \\
\sin^2 \alpha + \cos^2 \alpha = 1 & \\
c^2 = a^2 + b^2 -2ab\cos\gamma &


Obložím dolármi a dostanem toto:


$a + b = c + d & \\
\frac{e}{f} = g - h \cdot k & \\
\sin^2 \alpha + \cos^2 \alpha = 1 & \\
c^2 = a^2 + b^2 -2ab\cos\gamma &$


Pre prípad, že chcem dané rovnice zarovnať podľa znamienka "=", umiestnim "&" buď na ľavú alebo pravú stranu znamienka rovnosti (pre všetky rovnice ra rovnakú stranu):


a + b & = c + d \\
\frac{e}{f} & = g - h \cdot k \\
\sin^2 \alpha + \cos^2 \alpha & = 1 \\
c^2 & = a^2 + b^2 -2ab\cos\gamma


$a + b & = c + d \\
\frac{e}{f} & = g - h \cdot k \\
\sin^2 \alpha + \cos^2 \alpha & = 1 \\
c^2 & = a^2 + b^2 -2ab\cos\gamma$

Offline

 

#4 13. 02. 2020 20:34

pebe
Zelenáč
Příspěvky: 7
Škola: JCU
Pozice: student
Reputace:   
 

Re: LaTeX - rovnice

↑ Ferdish:

Já se omlouvám, ale já jsem prostě vážně asi hňup.. stále se mi to nedaří..

takhle to mám zadaný

//forum.matematika.cz/upload3/img/2020-02/22363_t.png

a stejně mi vyleze toto..

//forum.matematika.cz/upload3/img/2020-02/22428_j.png

Offline

 

#5 13. 02. 2020 21:09 — Editoval Ferdish (13. 02. 2020 21:13)

Ferdish
Příspěvky: 2015
Škola: PF UPJŠ, ÚEF SAV
Pozice: postdok
Reputace:   58 
 

Re: LaTeX - rovnice

Aha...ja som to chápal tak, že tie rovnice chceš písať tu do fóra a ne do svojho LaTeX dokumentu :-)

V takom prípade si musíš do dokumentu importovať package amsmath (dúfam že vieš, ako sa to robí). Potom by ti to už malo fungovať s použitím prostredí {equation} a {align}. Pre podrobnosti pozri link ktorý som ti posielal.

Eventuálne by ti mohlo pomôcť aj toto (je to v slovenčine, snáď ťo nebude vadiť): http://www.ptep-online.com/ctan/lshort_slovak.pdf

Offline

 

#6 13. 02. 2020 21:18

pebe
Zelenáč
Příspěvky: 7
Škola: JCU
Pozice: student
Reputace:   
 

Re: LaTeX - rovnice

↑ Ferdish:

Jééé, tak to se omlouvám, asi jsem to špatně napsala. Myslela jsem do svého LaTex dokumentu. Samozřejmě vám i tak děkuji za odpovědi.

Ano, s použití prostředí  {align} i mém zmiňovaném prostředí {eqnarray} mi to funguje tak, jak má. Ovšem právě problém je, že obě tyto prostředí vytvoří mezi textem a rovnicemi velkou mezeru a vzhledově mi to nepřijde v pořádku.

Což je tedy můj problém, že jsem myslela že existuje nějaký příkaz, který to vytvoří vzhledově lépe. Nebo zda nejde danou mezeru nějakým způsobem "odebrat".

Offline

 

#7 13. 02. 2020 21:31

Stýv
Vrchní cenzor
Příspěvky: 5345
Reputace:   203 
Web
 

Re: LaTeX - rovnice

↑ pebe: Můžeš sem dát screenshot té mezery, která se ti nezdá?

Offline

 

#8 13. 02. 2020 21:44

pebe
Zelenáč
Příspěvky: 7
Škola: JCU
Pozice: student
Reputace:   
 

Re: LaTeX - rovnice

↑ Stýv:

//forum.matematika.cz/upload3/img/2020-02/26432_Bez%2Bn%25C3%25A1zvu.png

(Jedná se o práci do školy, takže to nechci úplně zveřejňovat celé, proto opravdu screenshot pouze malý.)

Když právě nepoužívám příkaz, který rovnice zarovnává " = pod = " tak se mi nikde v dokumentu takhle velké mezery netvoří. Při použití s příkazy pro dva sloupce je to ještě více do oka bijící.

Offline

 

#9 13. 02. 2020 21:58 — Editoval Ferdish (13. 02. 2020 22:00)

Ferdish
Příspěvky: 2015
Škola: PF UPJŠ, ÚEF SAV
Pozice: postdok
Reputace:   58 
 

Re: LaTeX - rovnice

A keď namiesto {eqnarray} použiješ {equation}, nehodí to menšiu medzeru? Všade možne na nete sa píše že ak je možné, lepšie je sa prostrediu {eqnarray} vyhnúť...

Offline

 

#10 13. 02. 2020 22:11

pebe
Zelenáč
Příspěvky: 7
Škola: JCU
Pozice: student
Reputace:   
 

Re: LaTeX - rovnice

↑ Ferdish:


Nevím, kde dělám chybu. Už jsem vážně zoufalá. Ale  {equation} se mnou nechce kamarádit, hází mi  to do jednoho řádku, ikdyž mám použité \\, které používám normálně.

//forum.matematika.cz/upload3/img/2020-02/28123_Bez%2Bn%25C3%25A1zvu.png

Offline

 

#11 13. 02. 2020 22:19

Stýv
Vrchní cenzor
Příspěvky: 5345
Reputace:   203 
Web
 

Re: LaTeX - rovnice

Já bych použil prostředí align, výsledek mi přijde trochu hezčí než eqnarray.

A teď to podstatné:
1) Před \begin{…} nenechávej prázdnej řádek, vytvoří ti to novej odstavec, proto ta mezera před rovnicema.
2) Za poslední rovnicí nepiš //, tím vložíš novej řádek za poslední rovnicí.

Offline

 

#12 13. 02. 2020 22:19

Ferdish
Příspěvky: 2015
Škola: PF UPJŠ, ÚEF SAV
Pozice: postdok
Reputace:   58 
 

Re: LaTeX - rovnice

A čo tak použiť iba čisto {align}? Tak ako v prvom mojom odkaze v odstavci Aligning several equations...

Offline

 

#13 13. 02. 2020 22:43

pebe
Zelenáč
Příspěvky: 7
Škola: JCU
Pozice: student
Reputace:   
 

Re: LaTeX - rovnice

↑ Stýv:

Děkujuuuu!  Jsem asi vážně hloupá, že mě tohle nenapadlo. Samozřejmě jsem všude u rovnic před \begin{…} měla prázdný řádek a hned to vypadá lépe. Tohle byla vážně moje blbost,že jsem si toho nevšimla. Chybami se člověk učí.

Prosím, když už jsem toto téma rozjela. Poradil bys mi jak pěkně takhle udělat i dva sloupce rovnic vedle sebe s tím prostředím align, stále mi to hází velké mezery i když už nikde mezery nemám.


↑ Ferdish:
Děkuju za rady :-)

Offline

 

#14 13. 02. 2020 22:46

Stýv
Vrchní cenzor
Příspěvky: 5345
Reputace:   203 
Web
 

Re: LaTeX - rovnice

↑ pebe: prosím zase screenshot

Offline

 

#15 13. 02. 2020 22:50

pebe
Zelenáč
Příspěvky: 7
Škola: JCU
Pozice: student
Reputace:   
 

Re: LaTeX - rovnice

Už je vše v pořádku! :-)
Mockrát vám oboum děkuji za pomoc!!!

Sloupce už jsou také v pořádku podle návodu ↑ Ferdish: co posílal v prvním odkaze.

Děkuji za trpělivost. Hezký zbytek večera :-)

Offline

 

#16 13. 02. 2020 23:27

Ferdish
Příspěvky: 2015
Škola: PF UPJŠ, ÚEF SAV
Pozice: postdok
Reputace:   58 
 

Re: LaTeX - rovnice

↑ pebe:
Aj tebe a mnoho zdaru s LaTeXom. Chce to trochu cviku a používania, ale ak to zvládneš, tak pri písaní seminárnych alebo záverečných prác či odborných článkov si na Word ani len nespomenieš :-)

Offline

 

Zápatí

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson