如何解决有条件的问题?

如何解决有条件的问题?

我想问如何解决以下问题。这是一个文体包,我需要创建一个条件。我选择了学期制和学士学位。选择学期制论文时,仅显示作者和导师。学士学位论文显示作者、导师和对手。如果尚未在标题中指定对手,则在学士学位论文的情况下也必须显示。下面您可以看到学期制和学士学位论文的结果。

这是一个代码:

\ifx\akt@type\type@semestral
\else
& \\%
{\slshape \csname opponenttext@\orig@lang\endcsname:}     & \@Opponent \\%
\fi


(\opponent@lastname\relax)-if opponent is not specify
(opponenttext)-show Opponent.
(@Opponent)-name of opponent.
\akt@type\type@semestral-semestral thesis
\akt@type\type@bachelor-bachelor thesis

I think it could be done way with two conditions, such as: 
if (\opponent@lastname\relax  or \akt@type\type@semestral) 
<DO NOT SHOW OPPONENT> 
else 
<SHOW OPPONENT>.

我不知道如何查看病情的具体形式。你能帮助我吗?

第一张图片是学期论文,没问题,条件允许,如果是学期论文,则不显示对手。第二张图片是学士论文,其中指定了对手(例如 Lionel Messi),并显示了对手。第三张(最后一张)图片是学士论文,标题中未指定对手,但显示了对手。

学期论文

学士论文展示

学士论文-未出示

答案1

坦率地说,如果没有例子,很难提供很好的帮助。这个答案没有经过测试,因为显然如果没有更多信息,我就无法测试它。所以它可能根本不起作用,或者它可能无法完成它应该做的事情,或者它可能做了它应该做的事情但没有做你想要它做的事情,或者它可能会导致并发症,打电话叫披萨要你花钱,或者坚持打电话给 NASA 并寻求帮助离开地球。

你想要的就是这样的东西吗?虽然很难说,但看起来你可能想要的就是这个。

\ifx\akt@type\type@semestral
\else
  \ifx\opponent@lastname\relax
  \else
    & \\%
    {\slshape \csname opponenttext@\orig@lang\endcsname:}     & \@Opponent \\%
  \fi
\fi

以下是上述策略的简单说明:

\documentclass{article}
\newif\iffruit
\newcommand*\classifyme{%
  \iffruit\relax
  \else
    \ifx\myseason\relax
    \else
      : A vegetable available in \myseason.
    \fi
  \fi
  \global\let\myseason\relax\fruitfalse
}
\begin{document}
Strawberry\fruittrue\classifyme

Peach\fruittrue\def\myseason{summer}\classifyme

Runner beans\fruitfalse\classifyme

Sweetcorn\fruitfalse\def\myseason{autumn}\classifyme

\end{document}

季节性非水果

相关内容