Seite 1 von 1

Tabellenzeile durchstreichen

Verfasst: Di 28. Feb 2023, 11:12
von fragendergast
Hallo zusammen,

vorab mein Minimalbeispiel:
\documentclass[fontsize=11pt, DIV=15, parskip=half-]{scrartcl}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{cancel}
\begin{document}
Es ist $kgv(3,4,8) = 24$. 
Betrachte also
\[
\begin{tabular}{cccccccccccccccccccccccc}
1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 & 10 & 11 & 12 & 13 & 14 & 15 & 16 & 17 & 18 & 19 & 20 & 21 & 22 & 23 & 24 \\
\end{tabular}
\]
und streiche alle Elemente $k$ mit $k\equiv 0 \pmod 3$ oder $k\equiv 1 \pmod 3$:
\[
\begin{tabular}{cccccccccccccccccccccccc}
\cancel{1} & 2 & \cancel{3} & 4 & 5 & \cancel{6} & 7 & 8 & \cancel{9} & 10 & 11 & \cancel{12} & 13 & 14 & \cancel{15} & 16 & 17 & \cancel{18} & 19 & 20 & \cancel{21} & 22 & 23 & \cancel{24} \\
\end{tabular}
\]
\end{document}
Es geht mir darum, dass ich einzelne Elemente streichen möchte, was ja hier auch geht.
Allerdings wäre es mir sehr recht, wenn der Strich überall gleich wäre. Hier ist ja bei ein-und zweistelligen Zahlen verschieden.
Wie kann ich das wohl beheben?

Vielen Dank an alle Helfer :)

Re: Tabellenzeile durchstreichen

Verfasst: Di 28. Feb 2023, 13:49
von ich meine ja nur
Der Winkel des Strichs hängt logischer Weise von der Breite des durchgestrichenen Textes ab. Daher stellt sich die Frage, was du konkret haben willst. Soll der Strich bei kürzeren Zahlen nur einen Teil der Zahl abdecken oder bei längeren Zahlen links und rechts über die Zahl hinaus gehen? Oder willst du ganz andere Striche, beispielsweise horizontales Durchstreichen? Oder sollen bei mehrstelligen Zahlen die Ziffern einzeln durchgestrichen werden? Oder …

Re: Tabellenzeile durchstreichen

Verfasst: Di 28. Feb 2023, 19:04
von fragendergast
Da ich die Zahlen alle in einzelne Zellen gepackt habe, dachte ich an:
1) Alle Zellen gleichgroß machen
2) Ganze Zelle durchstreichen, unabhängig vom Inhalt

Re: Tabellenzeile durchstreichen

Verfasst: Di 28. Feb 2023, 19:42
von gast.
Dann ist aber cancel das ganz falsche Paket. Das streicht keine Tabellenzellen durch, sondern das übergebene Argument, vollkommen unabhängig davon, ob es in einer Tabellenzelle steht oder nicht. Dagegen kann man natürlich eine Zahl künstlich um unsichtbare Stellen erweitern:
\cancel{\hphantom{0}1}
.

Re: Tabellenzeile durchstreichen

Verfasst: Di 28. Feb 2023, 20:02
von fragendergast
Sehr interessant, vielen Dank dafür. Das kann ich sicher mal brauchen :D

Aber hier hilft es mir leider nicht, denn es sieht jetzt so aus (die 1 habe ich künstlich erweitert):
streichen.png
streichen.png (7.5 KiB) 921 mal betrachtet
Wenn das Kreuz jetzt direkt durch die Mitte der 1 gehen würde, wäre alles ok.

Re: Tabellenzeile durchstreichen

Verfasst: Mi 1. Mär 2023, 07:00
von markusv
Du kannst ja auch vor und nach der Zahl etwas unsichtbares einfügen, bspw. ein geschütztes halbes Leerzeichen:
\cancel{\,3\,}

Re: Tabellenzeile durchstreichen

Verfasst: Mi 1. Mär 2023, 07:52
von ich meine ja nur
Zahlenspalten zu zentrieren, macht es übrigens i. d. R. schwerer, sie zu lesen. Das gilt nicht nur, wenn man sie ausnahmsweise vertikal verfolgt, sondern auch, wenn man sie horizontal liest. In deinem Fall ist es natürlich eher egal, weil du wohl keine Tabelle, sondern nur eine Reihe angibst. Reihen würde ich allerdings wiederum nicht als Tabelle setzen, sondern entweder einfach per
\[ 1\ 2\ 3\ 4 … \]
oder – und das wäre meine bevorzugte Weise – mit Komma
\[ 1, 2, 3, 4, … \]
angeben. Durch die gleichbleibenden Abstände, ist beides deutlich besser zu lesen, wobei man Aufzählungen, Listen, Mengen etc. eben mit Komma setzt, was die Lesbarkeit weiter erhöht. Ganz nebenbei fällt dann IMHO auch das ursprüngliche Problem weg, weil dann kaum noch jemand auf die Idee kommen dürfte, das haben zu wollen.

Und dann sei noch erwähnt, dass man eine Tabelle mit 24 c-Spalten einfacher per *{24}{c} deklariert. Da verzählt man sich nicht so leicht. :)

Das alles nur so als Ergänzung. Den Rest haben ja meine Vorredner schon sehr schön erklärt.