Anzeige:
Ergebnis 1 bis 7 von 7

Thema: Zwei codebox-Umgebungen nebeneinander.

  1. #1
    Registrierter Benutzer
    Registriert seit
    19.07.2013
    Beiträge
    6

    Zwei codebox-Umgebungen nebeneinander.

    Hallo Leute,

    ich schreibe derzeit an einer Seminararbeit und bekomme etwas Platzprobleme.

    Jetzt möchte ich gerne zwei Codebox-Umgebungen nebeneinander setzen. Bekomme das aber absolut nicht hin.
    Im Moment sieht das ganze so aus:

    Hier ein der Codeauszug:
    Code:
    %
    \documentclass{llncs}
    %
    
    \usepackage{clrscode3e} %pseudocode
    \usepackage{subcaption}
    \captionsetup{compatibility=false}
    %
    \begin{document}
    
    \begin{figure}[ht] 
      \begin{subfigure}[b]{0.3\textwidth}
    	\begin{codebox}
    	\Procname{$\proc{BubbleSort(A)}$}
    	\li \For $i \gets 1$ \To $\attrib{A}{length}$ \Do
    	\li \For $j \gets \attrib{A}{length}$ \Downto $i+1$ \Do
    	\li \If $A[i] < A[j-1]$ \Then
    	\li swap  $A[j] \leftrightarrow A[j-1]$
    	\End
    	\End
    	\End
    	\end{codebox}	
    \caption{BubbleSort in Pseudocode}
    \label{fig:bubblesort}
     \end{subfigure}
    
      \begin{subfigure}[b]{0.3\textwidth}
    	\begin{codebox}
    	\Procname{$\proc{BubbleSort(A)}$}
    	\li $n \gets \attrib{A}{length}$
    	\li \Repeat
    	\li $\id{swapped} \gets \const{false}$
    	\li \For $i \gets 1$ \To $\attrib{A}{length}-1$ \Do
    	\li \If $A[i] > A[i+1]$ \Then
    	\li swap  $A[i] \leftrightarrow A[i+1]$
    	\li $\id{swapped} \gets \const{true}$
    	\End
    	\li \Until $\id{swapped} \isequal \const{true}$
    	\end{codebox}
    \caption{Opitimierter BubbleSort in Pseudocode}
    \label{fig:bubblesortopt}
     \end{subfigure}
    \end{figure}
    
    \end{document}
    Ich hoffe Ihr könnt mir helfen.

    Gruß, André
    Geändert von ai.casselfornia (19-07-2013 um 14:27 Uhr)

  2. #2
    Registrierter Benutzer
    Registriert seit
    04.11.2012
    Beiträge
    23
    Schonmal Minipages probiert? Zum Beisiel so ungefähr:

    Code:
    \begin{figure}
    \centering
    \begin{minipage}{0.45\textwidth}		
    Code1
    \end{minipage}\hfill
    \begin{minipage}{0.45\textwidth}
    Code2
    \end{minipage}
    \end{figure}
    ist allerdings ungetestet.

  3. #3
    Registrierter Benutzer
    Registriert seit
    19.07.2013
    Beiträge
    6
    Zitat Zitat von javatar Beitrag anzeigen
    Schonmal Minipages probiert?
    Hallo,

    ja hatte ich bereit getestet. Bringt leider keinen Erfolg. Das Einzige was sich ändert, ist die Breite der caption unter dem Code. Scheint als wolle die Codebox einfach nicht neben die andere. Sie muss aber! Irgendwie.

    Sonst noch jemand eine Idee.

  4. #4
    Registrierter Benutzer
    Registriert seit
    03.04.2007
    Ort
    Wrestedt
    Beiträge
    987

    irgendwie

    Zitat Zitat von ai.casselfornia Beitrag anzeigen
    Hallo,

    ja hatte ich bereit getestet. Bringt leider keinen Erfolg. Das Einzige was sich ändert, ist die Breite der caption unter dem Code. Scheint als wolle die Codebox einfach nicht neben die andere. Sie muss aber! Irgendwie.

    Sonst noch jemand eine Idee.
    Hallo ai.casselfornia,

    wenn es irgendwie sein muss ... ich würde einfach zwei Dateien erstellen, eine in denen deine Codeboxen jeweils auf eine Seite gedruckt werden. Dann mit einem Werkzeug zur Bearbeitung von PDFs die jeweiligen Codeboxen beschneiden.

    Dann in deinem Haupdokument die beiden PDFs nebeneinander einfügen. Bin jetzt zu müde, denke aber, dass es leichter sein wird, als LaTex Dinge beizu bringen, die es nicht machen will.

    Viel Erfolg

    Gruß

    Martin

    PS.: zur Papierzeiten haben die Setzer etc. die Bildchen ausgeschnitten und nebeneinander geklebt, dann eingescannt ... Man muss sich nur zu helfen wissen

    EDIT: Hier mal im Anhang was ich meine...
    Code:
    \documentclass{llncs}
    \usepackage{clrscode3e} 
    \usepackage{subcaption}
    \captionsetup{compatibility=false}
    \usepackage{graphicx}
    \usepackage{subfig} 
    \begin{document}
    
    
    \begin{figure}
        \includegraphics[width=0.6\textwidth]{Bild1.pdf}
        \includegraphics[width=0.6\textwidth]{Bild2.pdf}
    %\caption{Titel unterm gesamten Bild}
    \end{figure}
    
    \end{document}
    Geändert von nixversteh (20-07-2013 um 08:39 Uhr) Grund: Nachtrag
    Der aus Büchern erworbene Reichtum fremder Erfahrung heißt Gelehrsamkeit. Eigene Erfahrung ist Weisheit. Das kleinste Kapital von dieser ist mehrt wert, als Millionen von jener.

    Gotthold Ephraim Lessing

  5. #5
    Registrierter Benutzer Avatar von rais
    Registriert seit
    18.07.2005
    Beiträge
    5.752
    Moin moin,
    Zitat Zitat von ai.casselfornia Beitrag anzeigen
    Jetzt möchte ich gerne zwei Codebox-Umgebungen nebeneinander setzen. Bekomme das aber absolut nicht hin.
    wenn Du etwas nebeneinander setzen willst, darfst Du dazwischen keinen neuen Absatz erzeugen.
    Ersetze
    Zitat Zitat von ai.casselfornia Beitrag anzeigen
    Code:
     \end{subfigure}
    
      \begin{subfigure}[b]{0.3\textwidth}
    durch
    Code:
     \end{subfigure}%
    %bzw. \hfill, \hspace{..}...
      \begin{subfigure}[b]{0.3\textwidth}
    BTW:
    Zitat Zitat von ai.casselfornia Beitrag anzeigen
    Code:
    \usepackage{clrscode3e} %pseudocode
    Wenn Du Klassen/Pakete nutzt, die nicht über CTAN abrufbar sind, wäre ein Link zum erforderlichen Paket/zur erforderlichen Klasse das Mindeste, was Du angeben solltest.

    MfG
    Rainer
    There's nothing a good whack with a hammer won't fix!

  6. #6
    Registrierter Benutzer
    Registriert seit
    19.07.2013
    Beiträge
    6
    Zitat Zitat von rais Beitrag anzeigen
    wenn Du etwas nebeneinander setzen willst, darfst Du dazwischen keinen neuen Absatz erzeugen.
    Super das war es! Hatte ganz vergessen, dass ein Absatz im Quelltext auch im Dokument erscheint.

    Vielen Lieben Dank (auch an nixversteh. So hatte ich es zwischenzeitlich auch gelöst, aber das war leider nicht die einzige Stelle, an der ich das Problem hatte.)

    Zitat Zitat von rais Beitrag anzeigen
    Wenn Du Klassen/Pakete nutzt, die nicht über CTAN abrufbar sind, wäre ein Link zum erforderlichen Paket/zur erforderlichen Klasse das Mindeste, was Du angeben solltest.
    Ja sorry total vergessen. Beim nächsten mal gelobe ich Besserung.

    Schönes Wochenende allerseits.

  7. #7
    Registrierter Benutzer
    Registriert seit
    03.04.2007
    Ort
    Wrestedt
    Beiträge
    987

    Improvisieren

    Hallo ai.casselfornia,

    es war mir klar, dass es eine LÖSUNG geben würde, nur ich kannte sie ...

    Lieben Gruß

    Martin
    Der aus Büchern erworbene Reichtum fremder Erfahrung heißt Gelehrsamkeit. Eigene Erfahrung ist Weisheit. Das kleinste Kapital von dieser ist mehrt wert, als Millionen von jener.

    Gotthold Ephraim Lessing

Stichworte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •