2
1

Ich habe hier auf golatex.de eine Frage gelesen und mich damit mal beschäftigt und wollte sie hier vorstellen.

Problemstellung: Gesucht ist eine Umgebung "messtab" und einen Befehl \messwert, sodass der Quellcode

Open in writeLaTeX
\begin{messtab}{Versuch 2110}
\messwert{0.0}{0.0}
\messwert{0.5}{0.7}
\messwert{1.0}{1.2}
\messwert{1.5}{2.1}
\messwert{2.0}{2.5}
\end{messtab}

eine Tabelle erzeugt. Die Anzahl der Messwerte soll ohne Änderung der Befehle variiert werden können. Nach Möglichkeit mit Verwendung eines Counters.

Hat jemand Ideen? Ich werde unten folgend als Antwort einen eigenen Ansatz von mir posten.

gefragt 18 Mai '14, 13:45

Felix's gravatar image

Felix
1.3k525667
Akzeptiert-Rate: 47%

bearbeitet 18 Mai '14, 13:51


Mein Lösungs-Vorschlag ist der folgende:

  • Umgebungsdefinition mittels \newenvironment{Name}[Anzahl Argumente]{Startcode}{Endcode}
  • Die Tabelle starte ich mit \tabular und setze \endtabular in den Endcode, was gemeinsam der Standardsyntax \begin{tabular} ... \end{tabular} entspricht und in Umgebungen weniger zu Fehlern führen kann als die begin/end-Syntax
  • Analog mit table für die Gleitumgebung mit Beschriftung (caption), \centering fürs Zentrieren, und schön auf die Reihenfolge der Schachtelung achten
  • Ein separates Makro erzeugt die Tabellen-Zeile aus seinen Argumenten
Open in writeLaTeX
\documentclass{article}
\usepackage[ngerman]{babel}
\usepackage{amsmath}
\newenvironment{messtab}[1]{\table\centering\caption{#1}\tabular{cc}}
  {\endtabular\endtable}
\newcommand{\messwert}[2]{#1 & #2 \\}
\begin{document}
\begin{messtab}{Versuch 2110}
  \messwert{0.0}{0.0}
  \messwert{0.5}{0.7}
  \messwert{1.0}{1.2}
  \messwert{1.5}{2.1}
  \messwert{2.0}{2.5}
\end{messtab} 
\end{document}

Tabelle mit Messwerten

Verbesserungsvorschläge in Kommentaren oder weiterer Antwort willkommen! Den Sinn eines Zählers sehe ich bisher noch nicht.

Permanenter link

beantwortet 18 Mai '14, 13:49

Felix's gravatar image

Felix
1.3k525667
Akzeptiert-Rate: 47%

bearbeitet 18 Mai '14, 17:48

Vielleicht will man ja eine laufende Nummer, also im begin-Teil von messtab ein \setcounter{messwert}{0} und dann eine dreispaltige Tabelle und am Anfang von \messwert ein \setcounter{messwert}\themesswert. &

Für mich stellt sich abseits davon, dass die Frage durchaus von generellem Interesse sein könnte, ein wenig die Frage, ob es sinnvoll ist, Fragen nach der Lösung einer Aufgabe, von der wir nicht wissen, in welchem schulischen Umfeld sie gestellt wurden, zu beantworten. In der Regel wird mit einer Aufgabe ja ein bestimmter didaktischer Sinn verbunden, der so verloren geht.

(18 Mai '14, 16:53) Bes

@Bes Stimmt! Ich habe im anderen Forum aus gleichem Grund zunächst auf eigenes Nachdenken und Ansatz verwiesen. Dann ging doch mein Basteltrieb durch. :-o Ich hab mal etwas erläutert, der Sinn ist ja nicht Hinlegen einer Lösung und fertig, sondern das Anregen von Verständnis. Das Bearbeiten oder Sich-einfacher-machen liegt eh in eigener Verantwortung. In diesem Sinne hoffe ich, dass der ursprüngliche Fragesteller echte Fragen stellt, die bei Teilproblemen helfen und ihm oder ihr bei einer eigenen Lösungserarbeitung helfen.

(18 Mai '14, 17:52) Felix

Das ginge gut mit NOX

Open in writeLaTeX
\documentclass[10pt,a4paper]{article}%
\usepackage[utf8]{inputenc}%
\usepackage[ngerman]{babel}%
\usepackage[colspecstaysintable,c]{nox}
\usepackage{amsmath}
\title{Tabellen mit vielen Messwerten}
\begin{document}%
\maketitle
\def\testtext{Ein bisschen Text zum Füllen der Linien und Absätze, der Sections
  und Subsection oder wozu auch immer. }
\makeatletter
\renewcommand{\tn@table@align}{l}%Ausrichtung der Tabelle lcr
\makeatother
\renewcommand{\cellflush}{\raggedleft}
\testtext
\deflintab{%Werteliste mit zwei Messwerten
{0.0},{0.0},
{0.5},{0.7},
{1.0},{1.2},
{1.5},{2.1},
{12.0},{12.5},
{0.0},{0.0},%Anzahl der angezeigten Werte erhöhen siehe unten \tntab[2]{10}{Versuch 2110}
{0.5},{0.7},
{1.0},{1.2},
{1.5},{2.1},
{12.0},{12.5},
{0.0},{0.0},
{0.5},{0.7},
{1.0},{1.2},
{1.5},{2.1},
{12.0},{12.5},
{0.0},{0.0},
{0.5},{0.7},
{1.0},{1.2},
{1.5},{2.1},
{12.0},{12.5}
}

\tntabledimen{1}{5}%Tabellenmaße Zeilenhöhe und Spaltenbreite(x*Grundmaß)
\tntab[2]{10}{Versuch 2110}%Tabelle mit 2 Spalten und 10 Werten und caption
\testtext
\testtext
\deflintab{%Werteliste mit drei Messwerten
{0.0},{0.0},{0.0},
{0.5},{0.7},{0.0},
{1.0},{1.2},{0.0},
{1.5},{2.1},{0.0},
{12.0},{12.5},{0.0},
%{0.0},{0.0},{0.0}
%{0.5},{0.7},{0.0}
%{1.0},{1.2},{0.0}
%{1.5},{2.1},{0.0}
%{12.0},{12.5},{0.0}
}

\tntabledimen{1}{4}%Tabellenmaße Zeilenhöhe und Spaltenbreite(x*Grundmaß)
\tntab[3]{10}{Versuch 2111}%Tabelle mit 3 Spalten und 10 Werten und caption
\testtext
\end{document}
Permanenter link

beantwortet 28 Mai '14, 00:39

ctansearch's gravatar image

ctansearch
(ausgesetzt)
Akzeptiert-Rate: 18%

bearbeitet 28 Mai '14, 00:45

Deine Antwort
Vorschau umschalten

Folgen dieser Frage

Per E-Mail:

Wenn sie sich anmelden, kommen Sie für alle Updates hier in Frage

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs fügen Sie einfach zwei Leerzeichen an die Stelle an der die neue Linie sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Frage-Themen:

×256
×16

gestellte Frage: 18 Mai '14, 13:45

Frage wurde gesehen: 9,162 Mal

zuletzt geändert: 28 Mai '14, 00:45