> For the complete documentation index, see [llms.txt](https://overleaf-pro.ayaka.space/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://overleaf-pro.ayaka.space/latex/sv/formatering/10-counters.md).

# Räknare

## Introduktion till LaTeX-räknare

Sättning av text med LaTeX är en specialiserad form av programmering: du använder ett sättningsspråk (LaTeX-kommandon) för att ge ”instruktioner” som resulterar i en utdata: det kompilerade LaTeX-dokumentet i form av en PDF-fil. Som med allt programmeringsarbete är det troligt att du behöver LaTeX för att tillfälligt lagra heltalsvärden för senare återanvändning i ditt dokument (kod) — du kanske vill:

* sätta ut dessa lagrade heltal i ditt dokument
* ge automatisk numrering av vissa element i ditt dokument
* använda dem som variabler för att styra villkorlig kod (eller slingor)
* ändra och uppdatera deras värden genom att öka/minska dem med något fast värde
* återställa dem till helt andra värden

Sådana heltalsbearbetande aktiviteter är extremt vanliga i ”vanliga” programmeringsspråk som Javascript, C, Lua eller vilket annat språk du föredrar, där du vanligtvis deklarerar (skapar ett namn för) en variabel (för att innehålla ett heltal) och sedan tilldelar ett värde till den. LaTeX-språket för sättning erbjuder liknande möjligheter, om än implementerade på ett ganska annorlunda sätt, vilket vi ska utforska nedan.

I grunden är en LaTeX-räknare namnet på en ”LaTeX-variabel” som används för att lagra heltalsvärden vilka kan användas för de aktiviteter som listas ovan, och mycket mer därtill. LaTeX själv använder många interna räknare som ger numrering av sidor, avsnitt, tabeller, figurer, punkt-/numrerade listor osv. Den här artikeln förklarar hur man kommer åt och modifierar dessa räknare samt hur man skapar och använder nya.

## LaTeX-kommandon för att arbeta med räknare

Här är en lista över LaTeX:s räknarkommandon med länkar till deras beskrivning i följande avsnitt.

Skapa och öka räknare:

* [`\newcounter{somecounter}[anothercounter]`](#newcountersomecounteranothercounter)
* [`\setcounter{somecounter}{number}`](#setcountersomecounternumber)
* [`\addtocounter{somecounter}{number}`](#addtocountersomecounternumber)
* [`\stepcounter{somecounter}`](#stepcountersomecounter)
* [`\refstepcounter{somecounter}`](#refstepcountersomecounter)

Komma åt och skriva ut räknarvärden:

* [`\arabic{somecounter}`](#arabicsomecounter)
* [`\roman{somecounter}`](#romansomecounter)
* [`\Roman{somecounter}`](#romanoutput)
* [`\alph{somecounter}`](#alphsomecounter)
* [`\Alph{somecounter}`](#alphoutput)
* [`\fnsymbol{somecounter}`](#fnsymbolsomecounter)
* [`\value{somecounter}`](#valuesomecounter)

Andra räknarkommandon:

* [`\counterwithin{somecounter}{anothercounter}`](#counterwithinsomecounteranothercounter)
* [`\counterwithout{somecounter}{anothercounter}`](#counterwithoutsomecounteranothercounter)

### Skapa och öka räknare

#### \newcounter{somecounter}\[anothercounter]

Används för att definiera en ny räknare. Det andra argumentet, omslutet av `[]`, är valfritt men när det används definierar `*somecounter*` det som en ny räknare som återställs när `*anothercounter*` stegas. `\newcounter` används ofta i sin enklare form `\newcounter{*somecounter*}` vilket skapar `*somecounter*` och initierar det med värdet 0.

* **Obs**: För varje räknare som skapas av `\newcounter` kommandot, definierar det *också* ett kommando som kan användas för att sätta ut räknarens värde. Till exempel, `\newcounter{*mycounter*}` definierar ett kommando som kallas `\the*mycounter*`. Ett exempel visas i följande LaTeX-kodfragment som du kan öppna i Overleaf som ett färdigt dokument via den angivna länken:

```latex
\newcounter{mycounter}
\setcounter{mycounter}{42}
Du kan nu skriva \verb|\themycounter| för att få \themycounter.
```

[Öppna detta LaTeX-fragment i Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Using+newcounter\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cnewcounter%7Bmycounter%7D%0A%5Csetcounter%7Bmycounter%7D%7B42%7D%0AYou+can+now+write+%5Cverb%7C%5Cthemycounter%7C+to+obtain+%5Cthemycounter.%0A%5Cend%7Bdocument%7D)

Detta exempel ger $$\text{You can now write }\verb|\themycounter|\text{ to obtain 42.}$$

* **Obs**: Om `mycounter` redan har definierats kommer LaTeX att ge felet `c@mycounter redan definierad`, vilket demonstreras av följande exempel som du kan öppna i Overleaf.

```latex
\newcounter{mycounter}
...massor av kod... men vi glömmer och skriver \verb|\newcounter{mycounter}| igen
\newcounter{mycounter}
```

[Öppna detta ***kod som genererar fel*** i Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Using+newcounter\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cnewcounter%7Bmycounter%7D%0A...lots+of+code...+but+we+forget+and+write+%5Cverb%7C%5Cnewcounter%7Bmycounter%7D%7C+again%0A%5Cnewcounter%7Bmycounter%7D%0A%5Cend%7Bdocument%7D)

#### \setcounter{somecounter}{number}

Sätter `*somecounter*` att innehålla värdet `*number*`.

* **Obs**: `*number*` kan vara positivt eller negativt.

Ett exempel visas i följande LaTeX-kodfragment som du kan öppna i Overleaf som ett färdigt dokument via den angivna länken:

```latex
\noindent Skapa en ny räknare \texttt{myvar} och tilldela den värdet \texttt{42}.
\vspace{10pt}

\newcounter{myvar}
\setcounter{myvar}{42}

\noindent Att skriva \verb|\themymar| sätter ut \texttt{\themyvar}.
\vspace{10pt}

\noindent Sedan ändrar vi \texttt{myvar} till \texttt{-42} genom att skriva \verb|\setcounter{myvar}{-42}|
\setcounter{myvar}{-42}. Nu ger \verb|\themyvar| utskriften \texttt{\themyvar}.
```

[Öppna detta LaTeX-fragment i Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Using+newcounter\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cnoindent+Create+a+new+counter+%5Ctexttt%7Bmyvar%7D+and+assign+it+the+value+%5Ctexttt%7B42%7D.%0A%5Cvspace%7B10pt%7D%0A%0A%5Cnewcounter%7Bmyvar%7D%0A%5Csetcounter%7Bmyvar%7D%7B42%7D+%0A%0A%5Cnoindent+Writing+%5Cverb%7C%5Cthemymar%7C+typesets+%5Ctexttt%7B%5Cthemyvar%7D.%0A%5Cvspace%7B10pt%7D%0A%0A%5Cnoindent+Next%2C+we%27ll+change+%5Ctexttt%7Bmyvar%7D+to+%5Ctexttt%7B-42%7D%2C+writing+%5Cverb%7C%5Csetcounter%7Bmyvar%7D%7B-42%7D%7C%0A%5Csetcounter%7Bmyvar%7D%7B-42%7D.+Now%2C+writing+%5Cverb%7C%5Cthemyvar%7C+outputs+%5Ctexttt%7B%5Cthemyvar%7D.%0A%5Cend%7Bdocument%7D)

#### \addtocounter{somecounter}{number}

Ökar räknaren `*somecounter*` med värdet `*number*`.

* **Obs**: `*number*` kan vara positivt, för att öka räknarens värde, eller negativt för att minska det. Till exempel:

```latex
\addtocounter{somecounter}{-1} % minskar somecounter med 1
```

Ett exempel visas i följande LaTeX-kodfragment som du kan öppna i Overleaf som ett färdigt dokument via den angivna länken:

```latex
\noindent Skapa en ny räknare \texttt{myvar} och tilldela den värdet \texttt{42}.
\vspace{10pt}

\newcounter{myvar}
\setcounter{myvar}{42}

\noindent Att skriva \verb|\themymar| sätter ut \texttt{\themyvar}.
\vspace{10pt}

\noindent Sedan ändrar vi \texttt{myvar} till \texttt{142} genom att skriva \verb|\addtocounter{myvar}{100}|\addtocounter{myvar}{100}. Nu ger \verb|\themyvar| utskriften \texttt{\themyvar}.
```

[Öppna detta LaTeX-fragment i Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Using+addtocounter\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cnoindent+Create+a+new+counter+%5Ctexttt%7Bmyvar%7D+and+assign+it+the+value+%5Ctexttt%7B42%7D.%0A%5Cvspace%7B10pt%7D%0A%0A%5Cnewcounter%7Bmyvar%7D%0A%5Csetcounter%7Bmyvar%7D%7B42%7D+%0A%0A%5Cnoindent+Writing+%5Cverb%7C%5Cthemymar%7C+typesets+%5Ctexttt%7B%5Cthemyvar%7D.%0A%5Cvspace%7B10pt%7D%0A%0A%5Cnoindent+Next%2C+we%E2%80%99ll+change+%5Ctexttt%7Bmyvar%7D+to+%5Ctexttt%7B142%7D+by+writing+%5Cverb%7C%5Caddtocounter%7Bmyvar%7D%7B100%7D%7C%5Caddtocounter%7Bmyvar%7D%7B100%7D.+Now%2C+writing+%5Cverb%7C%5Cthemyvar%7C+outputs+%5Ctexttt%7B%5Cthemyvar%7D.%0A%5Cend%7Bdocument%7D)

#### \stepcounter{somecounter}

Ökar `*somecounter*` med 1. Ett exempel visas i följande LaTeX-kodfragment som du kan öppna i Overleaf som ett fullständigt dokument via den angivna länken:

```latex
Om vi skapar en ny räknare genom att skriva \verb|\newcounter{mycounter}|
\newcounter{mycounter} så skapas räknaren \texttt{mycounter} och
initieras till noll, som du kan se om du skriver \verb|\themycounter|:
\texttt{mycounter} lagrar för närvarande: \themycounter.

Om vi nu skriver \verb|\stepcounter{mycounter}|\stepcounter{mycounter} så
innehåller \verb|\themycounter| nu värdet \themycounter.
```

[Öppna detta LaTeX-fragment i Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Using+stepcounter\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cbegin%7Bdocument%7D%0AIf+we+create+a+new+counter+by+writing+%5Cverb%7C%5Cnewcounter%7Bmycounter%7D%7C%0A%5Cnewcounter%7Bmycounter%7D+then+the+counter+%5Ctexttt%7Bmycounter%7D+is+created+and+%0Ainitialized+to+zero%2C+as+you+can+see+if+you+write+%5Cverb%7C%5Cthemycounter%7C%3A%0A%5Ctexttt%7Bmycounter%7D+currently+stores%3A+%5Cthemycounter.+%0A%0AIf+we+now+write+%5Cverb%7C%5Cstepcounter%7Bmycounter%7D%7C%5Cstepcounter%7Bmycounter%7D+then+%0A%5Cverb%7C%5Cthemycounter%7C+now+contains+the+value+%5Cthemycounter.%0A%5Cend%7Bdocument%7D)

#### \refstepcounter{somecounter}

Ökar `*somecounter*` med 1 och gör den synlig för referensmekanismen, samtidigt som värdet sätts så att du kan använda `\label` därefter.

**Exempel med \refstepcounter**

Följande exempel använder `\refstepcounter` för att skapa en ny räknare för en `exempel` miljö och använder `\label` och `\ref` för att illustrera referenser med hjälp av `exempel` räknarvariabeln.

```latex
\documentclass{article}

\newcounter{example}[section]
\newenvironment{example}[1][]{\refstepcounter{example}\par\medskip
   \noindent\textbf{Exempel~\theexample. #1} \rmfamily}{\medskip}

\begin{document}
\section{Tre exempel}
\begin{example}
Skapa en etikett i detta första exempel \verb|\label{ex:1}|\label{ex:1}. Detta är det första exemplet. Räknaren \texttt{example} kommer att återställas i början av varje ny \verb|\section| i dokumentet.
\end{example}

\begin{example}
Och här är ett annat numrerat exempel. Skapa en andra \verb|\label{ex:2}|\label{ex:2} för att senare referera till detta. I Exempel \ref{ex:1} läser vi... något.
\end{example}

\begin{example}
Och här är ett annat numrerat exempel: använd \verb|\theexample| för att sätta ut det nummer som för närvarande tilldelats \texttt{example}-räknaren: det är \theexample.
\end{example}

\section{Ett annat avsnitt}
Vi har just börjat ett nytt avsnitt vilket betyder att \texttt{example}-räknaren har satts till \theexample.
Vi kommer att referera till exempel från föregående avsnitt (Exempel \ref{ex:1} och \ref{ex:2}). Detta är ett tomt avsnitt utan något egentligt syfte förutom att innehålla text. \texttt{section}-räknaren för detta avsnitt kan sättas ut med \verb|\thesection|: den har för närvarande tilldelats värdet \thesection.

\begin{example}
Detta är det första exemplet i detta avsnitt: \texttt{example}-räknaren har stegs upp och är nu satt till \theexample.
\end{example}
\end{document}
```

[Öppna detta `\refstepcounter` exempel i Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=An+example+using+refstepcounter\&snip=%5Cdocumentclass%7Barticle%7D%0A%0A%5Cnewcounter%7Bexample%7D%5Bsection%5D%0A%5Cnewenvironment%7Bexample%7D%5B1%5D%5B%5D%7B%5Crefstepcounter%7Bexample%7D%5Cpar%5Cmedskip%0A+++%5Cnoindent%5Ctextbf%7BExample%7E%5Ctheexample.+%231%7D+%5Crmfamily%7D%7B%5Cmedskip%7D%0A%0A%5Cbegin%7Bdocument%7D%0A%5Csection%7BThree+examples%7D%0A%5Cbegin%7Bexample%7D%0ACreate+a+label+in+this+first+example+%5Cverb%7C%5Clabel%7Bex%3A1%7D%7C%5Clabel%7Bex%3A1%7D.+This+is+the+first+example.+The+%5Ctexttt%7Bexample%7D+counter+will+be+reset+at+the+start+of+each+new+each+document+%5Cverb%7C%5Csection%7C.%0A%5Cend%7Bexample%7D%0A%0A%5Cbegin%7Bexample%7D%0AAnd+here%27s+another+numbered+example.+Create+a+second+%5Cverb%7C%5Clabel%7Bex%3A2%7D%7C%5Clabel%7Bex%3A2%7D+to+later+reference+this+one.+In+Example+%5Cref%7Bex%3A1%7D+we+read...+something.+%0A%5Cend%7Bexample%7D%0A%0A%5Cbegin%7Bexample%7D%0AAnd+here%27s+another+numbered+example%3A+use+%5Cverb%7C%5Ctheexample%7C+to+typeset+the+number+currently+assigned+to+the+%5Ctexttt%7Bexample%7D+counter%3A+it+is++%5Ctheexample.%0A%5Cend%7Bexample%7D%0A%0A%5Csection%7BAnother+section%7D%0AWe%27ve+just+started+a+new+section+meaning+that+the++%5Ctexttt%7Bexample%7D+counter+has+been+set+to+%5Ctheexample.++%0AWe%27ll+reference+examples+from+the+previous+section+%28Examples+%5Cref%7Bex%3A1%7D+and+%5Cref%7Bex%3A2%7D%29.++This+is+a+dummy+section+with+no+purpose+whatsoever+but+to+contain+text.+The+%5Ctexttt%7Bsection%7D+counter+for+this+section+can+be+typeset+using+%5Cverb%7C%5Cthesection%7C%3A+it+is++currently+assigned+the+value+of+%5Cthesection.%0A%0A%5Cbegin%7Bexample%7D%0AThis+is+the+first+example+in+this+section%3A+the+%5Ctexttt%7Bexample%7D+counter+has+been+stepped+and+now+set+to+%5Ctheexample.+%0A%5Cend%7Bexample%7D%0A%5Cend%7Bdocument%7D)

**Kodsammanfattning**

I detta exempel definieras den nya miljön `exempel` och denna miljö har 3 räknarspecifika kommandon:

* `\newcounter{example}[section]`: Skapar en ny räknare som kallas `exempel` som kommer att återställas till 0 varje gång `section` räknaren ökas. Du kan lägga in vilken annan räknare som helst i stället för `section` eller utelämna parametern om du inte vill att räknaren ska återställas automatiskt.
* `\refstepcounter{example}`: Ökar `exempel` räknaren med 1 och gör den synlig för referensmekanismen, så att du kan använda `\label` därefter.
* `\theexample`: Skriver ut det aktuella värdet av räknaren `exempel`.

För mer information om användardefinierade miljöer, se [artikeln om att definiera nya miljöer](/latex/sv/kommandon/02-environments.md#defining-a-new-environment)

### Komma åt och skriva ut räknarvärden

Följande resonemang bygger på LaTeX:s standardinställningar innan några anpassningar tillämpats av paket som laddats av användaren.

#### \arabic{somecounter}

Skriv ut representationen av `*somecounter*` som arabiska siffror: 1, 2, 3...

#### \roman{somecounter}

Skriv ut representationen av `*somecounter*` som en liten romersk siffra: i, ii, iii...

* **Obs**: Om `*somecounter*` $$\leq$$ `0` ingen utskrift genereras. Dessutom kan konvertering av *extremt* stora heltalsvärden till små romerska siffror ta lång tid att slutföra — och ger en lång följd av `m` tecken (som representerar talet `1000`).
* **TIPS**: Om du är intresserad av den algoritm som TeX använder för att konvertera arabiska tal till romerska siffror kan du läsa om den i denna artikel om [Algoritmer för romerska siffror](https://www.hanshq.net/roman-numerals.html#tex).

#### \Roman{somecounter}

Skriv ut representationen av `*somecounter*` som en stor romersk siffra: I, II, III...

* **Obs**: Om `*somecounter*` $$\leq$$ `0` ingen utskrift genereras. Dessutom kan konvertering av *extremt* stora heltalsvärden till stora romerska siffror kan ta lång tid att slutföra — och ger en lång följd av `M` tecken (som representerar talet `1000`).
* **TIPS**: Om du är intresserad av den algoritm som TeX använder för att konvertera arabiska tal till romerska siffror kan du läsa om den i denna artikel om [Algoritmer för romerska siffror](https://www.hanshq.net/roman-numerals.html#tex).

#### \alph{somecounter}

Skriv ut representationen av `*somecounter*` som en liten bokstav där a=1, b=2, c=3...

* **Obs**: `*somecounter*` måste ligga i intervallet `1` $$\leq$$ `*somecounter*` $$\leq$$ `26`, annars utlöses felet `! LaTeX-fel: Räknaren är för stor.`

#### \Alph{somecounter}

Skriv ut representationen av `*somecounter*` som en stor bokstav där A=1, B=2, C=3...

* **Obs**: `*somecounter*` måste ligga i intervallet `1` $$\leq$$ `*somecounter*` $$\leq$$ `26`, annars utlöses felet `! LaTeX-fel: Räknaren är för stor.`

#### \fnsymbol{somecounter}

Skriv ut representationen av `*somecounter*` som en fotnotsymbol där 1 =∗, 2 =†...

* **Obs**: `*somecounter*` måste ligga i intervallet `1` $$\leq$$ `*somecounter*` $$\leq$$ `9`, annars utlöses felet `! LaTeX-fel: Räknaren är för stor.`

|                          |                                    |
| ------------------------ | ---------------------------------- |
| Värde av `*somecounter*` | Tecken som sätts ut av `\fnsymbol` |
| 1                        | \*                                 |
| 2                        | †                                  |
| 3                        | ‡                                  |
| 4                        | §                                  |
| 5                        | ¶                                  |
| 6                        | ∥                                  |
| 7                        | ∗∗                                 |
| 8                        | ††                                 |
| 9                        | ‡‡                                 |

#### Exempel på utskrift av räknarvärden

Följande exempel visar användningen av kommandona `\arabic{*somecounter*}`, `\roman{*somecounter*}`, `\Roman{*somecounter*}`, `\alph{*somecounter*}`, `\Alph{*somecounter*}`, och `\fnsymbol{*somecounter*}`.

```latex
\newcounter{somecounter}
\setcounter{somecounter}{9}
\begin{itemize}
    \item \verb|\arabic{somecounter}| sätter ut \texttt{somecounter}-värdet av \thesomecounter{} som \arabic{somecounter}
    \item \verb|\roman{somecounter}| sätter ut \texttt{somecounter}-värdet av \thesomecounter{} som \roman{somecounter}
    \item \verb|\Roman{somecounter}| sätter ut \texttt{somecounter}-värdet av \thesomecounter{} som \Roman{somecounter}
    \item \verb|\alph{somecounter}| sätter ut \texttt{somecounter}-värdet av \thesomecounter{} som \alph{somecounter}
   \item \verb|\Alph{somecounter}| sätter ut \texttt{somecounter}-värdet av \thesomecounter{} som \Alph{somecounter}
    \item \verb|\fnsymbol{somecounter}| sätter ut \texttt{somecounter}-värdet av \thesomecounter{} som \fnsymbol{somecounter}
\end{itemize}
```

[Öppna detta LaTeX-fragment i Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Converting+counter+values\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cnewcounter%7Bsomecounter%7D%0A%5Csetcounter%7Bsomecounter%7D%7B9%7D%0A%5Cbegin%7Bitemize%7D%0A++++%5Citem+%5Cverb%7C%5Carabic%7Bsomecounter%7D%7C+typesets+the+%5Ctexttt%7Bsomecounter%7D+value+of++%5Cthesomecounter%7B%7D+as+%5Carabic%7Bsomecounter%7D+%0A++++%5Citem+%5Cverb%7C%5Croman%7Bsomecounter%7D%7C+typesets+the+%5Ctexttt%7Bsomecounter%7D+value+of++%5Cthesomecounter%7B%7D+as++%5Croman%7Bsomecounter%7D%0A++++%5Citem+%5Cverb%7C%5CRoman%7Bsomecounter%7D%7C+typesets+the+%5Ctexttt%7Bsomecounter%7D+value+of++%5Cthesomecounter%7B%7D+as++%5CRoman%7Bsomecounter%7D%0A++++%5Citem+%5Cverb%7C%5Calph%7Bsomecounter%7D%7C+typesets+the+%5Ctexttt%7Bsomecounter%7D+value+of++%5Cthesomecounter%7B%7D+as++%5Calph%7Bsomecounter%7D%0A+++%5Citem+%5Cverb%7C%5CAlph%7Bsomecounter%7D%7C+typesets+the+%5Ctexttt%7Bsomecounter%7D+value+of++%5Cthesomecounter%7B%7D+as++%5CAlph%7Bsomecounter%7D%0A++++%5Citem+%5Cverb%7C%5Cfnsymbol%7Bsomecounter%7D%7C+typesets+the+%5Ctexttt%7Bsomecounter%7D+value+of++%5Cthesomecounter%7B%7D+as++%5Cfnsymbol%7Bsomecounter%7D%0A%5Cend%7Bitemize%7D%0A%5Cend%7Bdocument%7D)

Detta exempel ger följande utdata:

![Exempel på att konvertera räknare i LaTeX](/files/4eb12bf18990b6a8db688e7de2830c213e917540)

#### \value{somecounter}

Syftet med kommandot, som beskrivs i LaTeX-källkoden, är ”För att komma åt räknarens värde som ett TeX-tal”: det vill säga att du använder `\value{somecounter}` för situationer där LaTeX förväntar sig att behandla ett numeriskt värde.

**(Valfria) bakgrundsanteckningar om kommandot \value**

Det är frestande att tro att kommandot `\value{*somecounter*}` kommer att *direkt* sätter ut värdet av `*somecounter*`, men så är inte fallet. Det är avsett att användas inom andra kommandon för att komma åt räknarens värde som ett TeX-tal, i motsats till kommandot `\thesomecounter` som ger den utskrivna representationen av `*somecounter*`.

Inom LaTeX-källkoden, `\value` definieras som:

```latex
\def\value#1{\csname c@#1\endcsname}
```

Följaktligen, `\value{*somecounter*}` skapar en instans av den inbyggda kontrollsekvensen i LaTeX `\c@somecounter` som innehåller räknarens värde `*somecounter*`.

**Exempel**

Följande exempel visar ett grundläggande användningsfall för `\value`.

```latex
\noindent Börja med att deklarera två nya räknare:
\begin{verbatim}
\newcounter{first}
\newcounter{second}
\end{verbatim}

\newcounter{first}
\newcounter{second}

\noindent Någon gång senare i din kod sätter du deras värden:
\begin{verbatim}
\setcounter{first}{100}
\setcounter{second}{50}
\end{verbatim}

\setcounter{first}{100}
\setcounter{second}{50}
\noindent Sedan skriver du mer \LaTeX{}-kod...\vspace{10pt}

\noindent Vid något tillfälle kan vi vilja lägga till värdet av räknaren \texttt{second} till räknaren \texttt{first}. Ett sätt att göra det är att använda \verb|\value| för att hämta det \textit{aktuella} värde som lagras i räknaren \texttt{second}:

\begin{verbatim}
\addtocounter{first}{\value{second}}
\end{verbatim}

\addtocounter{first}{\value{second}}\noindent Värdet av \texttt{first} kan skrivas ut med \verb|\thefirst|: \thefirst. Vi kan också skriva \verb|\the\value{first}| vilket också sätter ut \the\value{first}. Att skriva \verb|\value{first}| kommer dock att generera felet \texttt{Missing number, treated as zero} eftersom \LaTeX{} då försöker köra det interna kommandot \verb|\c@first|. Avkommentera följande rad för att generera felet:
\begin{verbatim}
%\value{first}
\end{verbatim}
%\value{first}
```

[Öppna detta kodfragment i Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Using+the+value+command\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cnoindent+Start+by+declaring+two+new+counters%3A%0A%5Cbegin%7Bverbatim%7D%0A%5Cnewcounter%7Bfirst%7D%0A%5Cnewcounter%7Bsecond%7D++++%0A%5Cend%7Bverbatim%7D%0A%0A%5Cnewcounter%7Bfirst%7D%0A%5Cnewcounter%7Bsecond%7D%0A%0A%5Cnoindent+Sometime+later+in+your+code+you+set+their+values%3A%0A%5Cbegin%7Bverbatim%7D%0A%5Csetcounter%7Bfirst%7D%7B100%7D%0A%5Csetcounter%7Bsecond%7D%7B50%7D++++%0A%5Cend%7Bverbatim%7D%0A%0A%5Csetcounter%7Bfirst%7D%7B100%7D%0A%5Csetcounter%7Bsecond%7D%7B50%7D++%0A%5Cnoindent+Then+you+write+more+%5CLaTeX%7B%7D+code...%5Cvspace%7B10pt%7D%0A%0A%5Cnoindent+At+some+point+we+might+want+to+add+the+value+of+counter+%5Ctexttt%7Bsecond%7D+to+counter+%5Ctexttt%7Bfirst%7D.+One+way+to+do+that+is+using+%5Cverb%7C%5Cvalue%7C+to+obtain+the+%5Ctextit%7Bcurrent%7D+value+stored+in+the+%5Ctexttt%7Bsecond%7D+counter%3A%0A%0A%5Cbegin%7Bverbatim%7D%0A%5Caddtocounter%7Bfirst%7D%7B%5Cvalue%7Bsecond%7D%7D%0A%5Cend%7Bverbatim%7D%0A%0A%5Caddtocounter%7Bfirst%7D%7B%5Cvalue%7Bsecond%7D%7D%5Cnoindent+The+value+of+%5Ctexttt%7Bfirst%7D+can+be+output+by+%5Cverb%7C%5Cthefirst%7C%3A+%5Cthefirst.+We+can+also+write+%5Cverb%7C%5Cthe%5Cvalue%7Bfirst%7D%7C+which+also+typesets+%5Cthe%5Cvalue%7Bfirst%7D.+However%2C++writing+%5Cverb%7C%5Cvalue%7Bfirst%7D%7C+will+generate+the+error+%5Ctexttt%7BMissing+number%2C+treated+as+zero%7D+because+%5CLaTeX%7B%7D+then+tries+to+execute+the+internal+command+%5Cverb%7C%5Cc%40first%7C.+Uncomment+the+following+line+to+generate+the+error%3A%0A%5Cbegin%7Bverbatim%7D%0A%25%5Cvalue%7Bfirst%7D%0A%5Cend%7Bverbatim%7D%0A%25%5Cvalue%7Bfirst%7D%0A%5Cend%7Bdocument%7D)

Det här exemplet ger följande utdata:

![Exempel med kommandot \value](/files/f32286fa18fc35dbd7133ed0cae26b83883a1c08)

### Andra räknarkommandon

Här beskriver vi kommandona `\counterwithin` och `\counterwithout` som ursprungligen kom från [`chngcntr` paketet](https://ctan.org/pkg/chngcntr) men har nu integrerats i själva LaTeX — se [LaTeX News, april 2018](https://www.latex-project.org/news/latex2e-news/ltnews28.pdf). Paketet `chngcntr` [paketdokumentation](https://mirror.ox.ac.uk/sites/ctan.org/macros/latex/contrib/chngcntr/chngcntr.pdf) kommer med följande kommentarer som hjälper till att förstå syftet med dessa kommandon:

På `\counterwithin`:

> Det är ibland önskvärt att ändra en räknare som har definierats av `\newcounter{<ctr>}` så att den fungerar som om den hade definierats som `\newcounter{<ctr>}[<within>]`. Paketet tillhandahåller kommandot `\counterwithin{<ctr>}{<within>}` som åstadkommer detta.

På `\counterwithout`:

> På samma sätt ändrar kommandot `\counterwithout{<ctr>}{<within>}` en räknare som har skapats av `\newcounter{<ctr>}[<within>]` så att den fungerar som om den hade skapats av `\newcounter{<ctr>}`.

I korthet erbjuder dessa två kommandon en metod att länka (`\counterwithin`) eller avlänka (`\counterwithout`) två räknare efter att de har definierats.

**\counterwithin{somecounter}{anothercounter}**

Återställer `*somecounter*` till 0 närhelst `*anothercounter*` stegras, en mekanism som länkar samman de två räknarna. Förutom att skapa en länk omdefinierar detta kommando vad som sätts ut av `\the*somecounter*`: i stället för att skriva ut värdet av räknaren `*somecounter*` så ger det `<värde av anothercounter>**.**<värde av somecounter>`. Den stjärnmärkta formen (`\counterwithin*{somecounter}{anothercounter}`) omdefinierar inte utskriftsformatet för `*somecounter*`, som följande exempel visar — välj länken under koden för att öppna den i Overleaf:

```latex
\documentclass{article}
\begin{document}
\section{Ett kort exempel}
\newcounter{example}
\counterwithin{example}{section}
\newcounter{exampletwo}
\counterwithin*{exampletwo}{section}
\setcounter{example}{100}
\setcounter{exampletwo}{100}
\begin{itemize}
\item \verb|\theexample| sätter ut \theexample
\item \verb|\theexampletwo| sätter ut \theexampletwo
\end{itemize}
\end{document}
```

[Öppna detta `\counterwithin` exempel i Overleaf](https://www.overleaf.com/docs?engine=\&snip_name=Example+of+starred+version+of+counterwithin\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cbegin%7Bdocument%7D%0A%5Csection%7BA+short+example%7D%0A%5Cnewcounter%7Bexample%7D%0A%5Ccounterwithin%7Bexample%7D%7Bsection%7D%0A%5Cnewcounter%7Bexampletwo%7D%0A%5Ccounterwithin%2A%7Bexampletwo%7D%7Bsection%7D%0A%5Csetcounter%7Bexample%7D%7B100%7D%0A%5Csetcounter%7Bexampletwo%7D%7B100%7D%0A%5Cbegin%7Bitemize%7D%0A%5Citem+%5Cverb%7C%5Ctheexample%7C+typesets+%5Ctheexample%0A%5Citem+%5Cverb%7C%5Ctheexampletwo%7C+typesets+%5Ctheexampletwo%0A%5Cend%7Bitemize%7D%0A%5Cend%7Bdocument%7D)

Det här exemplet ger följande utdata:

![Användning av kommandot \counterwithin](/files/30f0e6c80aa80b1bddf7aebc5e7ca2fe4a5afdc1)

Du kan använda `\counterwithin` det med standardräknare som tillhandahålls av LaTeX, såsom:

* `section`: används av `\section` kommandot
* `equation` används av `equation` miljön

eller med räknare som du har skapat.

**Exempel på \counterwithin och \counterwithin\***

Följande kod ger ett mer fullständigt exempel på att använda `\counterwithin` och `\counterwithin*`; välj länken under koden för att öppna den i Overleaf:

```latex
\documentclass{article}
\counterwithin{equation}{section}
\newcounter{example}
\counterwithin*{example}{section}
\newenvironment{example}[1][]{%
\stepcounter{example}%
\par\vspace{5pt}\noindent
\fbox{\textbf{Exempel~\thesection.\theexample}}%
\hrulefill\par\vspace{10pt}\noindent\rmfamily}%
{\par\noindent\hrulefill\vrule width10pt height2pt depth2pt\par}
\begin{document}
\section{Första ekvationen}
Lite inledande text...
\begin{example}
\begin{equation}
    f(x)=\frac{x}{1+x^2}
\end{equation}
\end{example}

\subsection{Mer detaljer}
\begin{example}
Här diskuterar vi
\begin{equation}
    f(x)=\frac{x+1}{x-1}
\end{equation}
... men säg inget
\end{example}

\subsubsection{Ännu mer detaljer}
\begin{example}
\begin{equation}
    f(x)=\frac{x^2}{1+x^3}
\end{equation}
\begin{equation}
    f(x+\delta x)=\frac{(x+\delta x)^2}{1+(x+\delta x)^3}
\end{equation}
\end{example}

\section{Tredje ekvationen}
\begin{example}
Följande funktion...
\begin{equation}
    f_1(x)=\frac{x+1}{x-1}
\end{equation}
..är en funktion
\begin{equation}
    f_2(x)=\frac{x^2}{1+x^3}
\end{equation}
\begin{equation}
    f_3(x)=\frac{3+ x^2}{1-x^3}
\end{equation}
\end{example}
\end{document}
```

[Öppna detta `\counterwithin` exempel i Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Example+of+using+counterwithin\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Ccounterwithin%7Bequation%7D%7Bsection%7D%0A%5Cnewcounter%7Bexample%7D%0A%5Ccounterwithin%2A%7Bexample%7D%7Bsection%7D%0A%5Cnewenvironment%7Bexample%7D%5B1%5D%5B%5D%7B%25%0A%5Cstepcounter%7Bexample%7D%25%0A%5Cpar%5Cvspace%7B5pt%7D%5Cnoindent%0A%5Cfbox%7B%5Ctextbf%7BExample%7E%5Cthesection.%5Ctheexample%7D%7D%25%0A%5Chrulefill%5Cpar%5Cvspace%7B10pt%7D%5Cnoindent%5Crmfamily%7D%25%0A%7B%5Cpar%5Cnoindent%5Chrulefill%5Cvrule+width10pt+height2pt+depth2pt%5Cpar%7D%0A%5Cbegin%7Bdocument%7D%0A%5Csection%7BFirst+equation%7D%0ASome+introductory+text...%0A%5Cbegin%7Bexample%7D%0A%5Cbegin%7Bequation%7D%0A++++f%28x%29%3D%5Cfrac%7Bx%7D%7B1%2Bx%5E2%7D%0A%5Cend%7Bequation%7D%0A%5Cend%7Bexample%7D%0A%0A%5Csubsection%7BMore+detail%7D%0A%5Cbegin%7Bexample%7D%0AHere+we+discuss%0A%5Cbegin%7Bequation%7D%0A++++f%28x%29%3D%5Cfrac%7Bx%2B1%7D%7Bx-1%7D%0A%5Cend%7Bequation%7D%0A...+but+don%27t+say+anything%0A%5Cend%7Bexample%7D%0A%0A%5Csubsubsection%7BEven+more+detail%7D%0A%5Cbegin%7Bexample%7D%0A%5Cbegin%7Bequation%7D%0A++++f%28x%29%3D%5Cfrac%7Bx%5E2%7D%7B1%2Bx%5E3%7D%0A%5Cend%7Bequation%7D%0A%5Cbegin%7Bequation%7D%0A++++f%28x%2B%5Cdelta+x%29%3D%5Cfrac%7B%28x%2B%5Cdelta+x%29%5E2%7D%7B1%2B%28x%2B%5Cdelta+x%29%5E3%7D%0A%5Cend%7Bequation%7D%0A%5Cend%7Bexample%7D%0A%0A%5Csection%7BThird+equation%7D%0A%5Cbegin%7Bexample%7D%0AThe+following+function...%0A%5Cbegin%7Bequation%7D%0A++++f_1%28x%29%3D%5Cfrac%7Bx%2B1%7D%7Bx-1%7D%0A%5Cend%7Bequation%7D%0A..is+a+function%0A%5Cbegin%7Bequation%7D%0A++++f_2%28x%29%3D%5Cfrac%7Bx%5E2%7D%7B1%2Bx%5E3%7D%0A%5Cend%7Bequation%7D%0A%5Cbegin%7Bequation%7D%0A++++f_3%28x%29%3D%5Cfrac%7B3%2B+x%5E2%7D%7B1-x%5E3%7D%0A%5Cend%7Bequation%7D%0A%5Cend%7Bexample%7D%0A%5Cend%7Bdocument%7D)

Det här exemplet ger följande utdata:

![Användning av kommandot \counterwithin](/files/8b0f8620a3af6dcaea1890d55f21291a98fb23b7)

**Kodsammanfattning**

* `\newcounter{example}`: Detta skapar en ny räknare att använda i vår miljö, även kallad `exempel`
* `\counterwithin*{example}{section}`: Detta länkar vår `exempel` räknare med den `section` räknare som används inom `\section` kommandot: varje gång vi utför ett `\section` kommando återställs `exempel` räknaren till noll. Observera att vi använde den stjärnmärkta versionen `\counterwithin*` för att undvika omdefinition av `\theexample`
* Sedan skapar vi en ny miljö som också kallas `exempel`. Inom den miljön använder vi `\stepcounter{example}` för att öka miljöns räknare. Observera också att vi skriver `\textbf{Exempel~\thesection.\theexample}` för att skriva ut **Exempel** `<sektionsnummer>.<exempelnummer>`

```latex
\newenvironment{example}[1][]{%
\stepcounter{example}%
\par\vspace{5pt}\noindent
\fbox{\textbf{Exempel~\thesection.\theexample}}%
\hrulefill\par\vspace{10pt}\noindent\rmfamily}%
{\par\noindent\hrulefill\vrule width10pt height2pt depth2pt}
```

**\counterwithout{somecounter}{anothercounter}**

`\counterwithout{*somecounter*}{*anothercounter*}` tar bort länken mellan `*somecounter*` och `*anothercounter*` så att de är oberoende. För valfritt par av räknare kan du växla mellan att använda `\counterwithout` och `\counterwithin`, som följande exempel visar för `exempel` och `section` räknarna — du kan öppna detta exempel i Overleaf via länken under koden.

```latex
\section{Första ekvationen}
\begin{example}
\begin{equation}
    f(x)=\frac{x}{1+x^2}
\end{equation}
\end{example}

\subsection{Andra ekvationen}
\begin{example}
\begin{equation}
    f(x)=\frac{x+1}{x-1}
\end{equation}
\end{example}
\vspace{6pt}\noindent Notera hur räknaren \texttt{example} återställs i början av avsnittet \ref{sec:n0}.
\section{Tredje ekvationen}
\label{sec:n0}
\begin{example}
\begin{equation}
    f(x)=\frac{x+1}{x-1}
\end{equation}
\end{example}
\vspace{6pt}\noindent Här skrev vi \verb|\counterwithout{example}{section}| så att \texttt{example} inte längre återställs i början av ett avsnitt. I avsnitten \ref{sec:n1} och \ref{sec:n2} fortsätter \texttt{example}-räknaren att öka. \counterwithout{example}{section}
\section{Fjärde ekvationen}
\label{sec:n1}
\begin{example}
\begin{equation}
    f(x)=\frac{x^2+x^3}{1+x^3}
\end{equation}
\end{example}
\section{Femte ekvationen}
\label{sec:n2}
\begin{example}
\begin{equation}
    f(x,k)=\frac{x^2-x^k}{1+x^3}
\end{equation}
\end{example}
```

[Öppna detta `\counterwithout` exempel i Overleaf](<https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Example+of+using+counterwithout\&snip=\documentclass{article}&#xA;\counterwithin{equation}{section}&#xA;\newcounter{example}&#xA;\counterwithin*{example}{section}&#xA;\newenvironment{example}\[1]\[]{%&#xA;\stepcounter{example}%&#xA;\par\vspace{3pt}\noindent&#xA;\fbox{\textbf{Example~\thesection.\theexample}}%&#xA;\hrulefill\par\vspace{3pt}\noindent\rmfamily}%&#xA;{\par\noindent\hrulefill\vrule+width10pt+height2pt+depth2pt\par}&#xA;\begin{document}&#xA;\section{First+equation}&#xA;\begin{example}&#xA;\begin{equation}&#xA;++++f(x)=\frac{x}{1+x^2}&#xA;\end{equation}&#xA;\end{example}&#xA;&#xA;\subsection{Second+equation}&#xA;\begin{example}&#xA;\begin{equation}&#xA;++++f(x)=\frac{x+1}{x-1}&#xA;\end{equation}&#xA;\end{example}&#xA;\vspace{6pt}\noindent+Note+how+the+\texttt{example}+counter+is+reset+at+the+start+Section+\ref{sec:n0}.+&#xA;\section{Third+equation}&#xA;\label{sec:n0}&#xA;\begin{example}&#xA;\begin{equation}&#xA;++++f(x)=\frac{x+1}{x-1}&#xA;\end{equation}&#xA;\end{example}&#xA;\vspace{6pt}\noindent+Here,+we+wrote+\verb|\counterwithout{example}{section}|+so+that+\texttt{example}+is+no+longer+reset+at+the+start+of+a+section.+In+Sections+\ref{sec:n1}+and+\ref{sec:n2}+the+\texttt{example}+counter+keeps+increasing.+\counterwithout{example}{section}&#xA;\section{Fourth+equation}&#xA;\label{sec:n1}&#xA;\begin{example}&#xA;\begin{equation}&#xA;++++f(x)=\frac{x^2+x^3}{1+x^3}&#xA;\end{equation}&#xA;\end{example}&#xA;\section{Fifth+equation}&#xA;\label{sec:n2}&#xA;\begin{example}&#xA;\begin{equation}&#xA;++++f(x,k)=\frac{x^2-x^k}{1+x^3}&#xA;\end{equation}&#xA;\end{example}&#xA;\end{document}>)

Det här exemplet ger följande utdata:

![Använda kommandot counterwithout](/files/462619500ced48b794678e0ca6928d0034f6481d)

## Exempel

### enumerate

Den `enumerate` listmiljön använder fyra *räknare* variabler som håller reda på det aktuella etikettvärdet för varje nivå:

|          |                                |
| -------- | ------------------------------ |
| **Nivå** | **`enumerate`** räknarvariabel |
| Nivå 1   | `enumi`                        |
| Nivå 2   | `enumii`                       |
| Nivå 3   | `enumiii`                      |
| Nivå 4   | `enumiv`                       |

Dessa räknare kan ändras med hjälp av `\setcounter` kommandot. Se exemplet nedan—vilket inte nödvändigtvis är den bästa lösningen (se [Overleafs listor](/latex/sv/latex-grunder/04-lists.md) artikeln för mer information):

```latex
Det här exemplet visar ett sätt att ändra numreringen av en lista; här ändras värdet på räknaren \texttt{enumi} så att listnumreringen börjar på 4 (det ökas med kommandot \verb|\item|):

\begin{enumerate}
\setcounter{enumi}{3}
\item Något.
\item Något annat.
\item Ett annat element.
\item Det sista objektet i listan.
\end{enumerate}
```

[Öppna detta exempel i Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Modifying+an+enumerate+counter\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cbegin%7Bdocument%7D%0A%5Csection%7BIntroduction%7D%0AThis+example+shows+one+way+to+change+the+numbering+of+a+list%3B+here%2C+changing+the+value+of+the+%5Ctexttt%7Benumi%7D+counter+to+start+the+list+numbering+at+4+%28it+is+incremented+by+the+%5Cverb%7C%5Citem%7C+command%29%3A%0A%0A%5Cbegin%7Benumerate%7D%0A%5Csetcounter%7Benumi%7D%7B3%7D%0A%5Citem+Something.%0A%5Citem+Something+else.%0A%5Citem+Another+element.%0A%5Citem+The+last+item+in+the+list.%0A%5Cend%7Benumerate%7D%0A%5Cend%7Bdocument%7D)

Det här exemplet ger följande utdata:

![Modifiera en enumerate-räknare](/files/b0f72f5e282e49936aea4913dd22aacaeca5830c)

## Standardräknare i LaTeX

| Användning             | Namn                                                                                                                   |
| ---------------------- | ---------------------------------------------------------------------------------------------------------------------- |
| För dokumentstrukturen | <p>- del<br>- kapitel<br>- avsnitt<br>- underavsnitt<br>- underunderavsnitt<br>- stycke<br>- understycke<br>- sida</p> |
| För flytande objekt    | <p>- ekvation<br>- figur<br>- tabell</p>                                                                               |
| För fotnoter           | <p>- fotnot<br>- mpfootnote</p>                                                                                        |
| För `enumerate` miljön | <p>- enumi<br>- enumii<br>- enumiii<br>- enumiv</p>                                                                    |

## Vidare läsning

För mer information, se:

* [Miljöer](/latex/sv/kommandon/02-environments.md)
* [Kommandon](/latex/sv/kommandon/01-commands.md)
* [Listor](/latex/sv/latex-grunder/04-lists.md)
* [Sidnumrering](/latex/sv/formatering/03-page-numbering.md)
* [Avsnitt och kapitel](/latex/sv/dokumentstruktur/01-sections-and-chapters.md)
* [Matematiska uttryck](/latex/sv/matematik/01-mathematical-expressions.md)
* [Infoga bilder](/latex/sv/fler-amnen/27-inserting-images.md)
* [Tabeller](/latex/sv/figurer-och-tabeller/01-tables.md)
* [Att skriva tentor i LaTeX](/latex/sv/faltspecifikt/09-typesetting-exams-in-latex.md)
* [Skriv ditt eget paket](/latex/sv/klassfiler/03-writing-your-own-package.md)
* [Att skriva din egen klass](/latex/sv/klassfiler/04-writing-your-own-class.md)
* [Den inte så korta introduktionen till LaTeX2ε](http://www.ctan.org/tex-archive/info/lshort/)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://overleaf-pro.ayaka.space/latex/sv/formatering/10-counters.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
