LaTeX: Test Sınavı Taslağı

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% testsinavi.tex
% July 2014
% Credits to:
% Caglar OFLAZOGLU
% coflazoglu[at]mku[dot]edu[dot]tr
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\documentclass[a4paper]{exam}
\usepackage{fullpage}
\usepackage[utf8]{inputenc}
\usepackage[turkish]{babel}
\usepackage{multicol}
\usepackage{xcolor,colortbl,tikz}
\usepackage{enumerate}	
\usepackage{forloop}
\usepackage[shortlabels]{enumitem}

\pagestyle{head}
\firstpageheader{}{}{}

\setlength{\columnsep}{1cm}

\textheight = 770pt
\textwidth = 530pt
	\topmargin = 5pt
	\voffset=-50.27pt
	\hoffset=-40.27pt	
\newcommand*\circled[1]{%
  \tikz[baseline=(char.base)]\node[draw,circle,inner sep=1.2pt,line width=0.2mm,](char) {#1};}
\newcolumntype{L}[1]{>{\raggedright\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}
\newcolumntype{C}[1]{>{\centering\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}
\newcolumntype{R}[1]{>{\raggedleft\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}
%secenekler icin tanim
\newcounter{tablecell}
\newcommand*{\numbercell}{%
  \stepcounter{tablecell}%
  \alph{tablecell})
}
%secenekler icin reset
\newcommand{\resetcounter}{
\setcounter{tablecell}{0}
}
%test alani icin sayac
\newcounter{testcell}
\newcommand*{\numbertestcell}{%
  \stepcounter{testcell}%
  \thetestcell)
}
%tekil soru	
\newcommand{\sorutekil}[1]{
\item \textbf{#1}\\ 
}		
% buyuk tip soru secenekleri tek sutun
\newcommand{\sorub}[6]{
\item \textbf{#1}\\ 
\begin{tabular}{L{8cm}}
  \numbercell #2 \\   \numbercell #3 \\
  \numbercell #4 \\   \numbercell #5 \\
  \numbercell #6 \resetcounter
\end{tabular}
}	
% kucuk tip soru secenekleri iki sutun
\newcommand{\soruk}[6]{
\item \textbf{#1}\\ 
\begin{tabular}{lL{5cm}}
  \numbercell #2 &   \numbercell #3 \\
  \numbercell #4 &   \numbercell #5 \\
  \numbercell #6 &   \resetcounter
\end{tabular}
}		
% cevap anahtari olusturma(soru sayisi parametre olarak gonderilecek)
\newcommand{\areatest}[1]{
\begin{center}
\begin{tabular} {| c | c | c | c | c | c |}
\hline
 
 \multicolumn{6}{|l|}{Ad Soyad:} \\ \hline
 \multicolumn{6}{|l|}{No:} \\ \hline
 \multicolumn{6}{|l|}{İmza:} \\ \hline
 \cellcolor{black}  &  &  &\cellcolor{black}  &  &\cellcolor{black}  \\ \hline
 & A & B & C & D & E \\ \hline
 \newcounter{ct}
 \forloop{ct}{0}{\value{ct} < #1}
 {
  \numbertestcell & \circled{A} & \circled{B} & \circled{C} & \circled{D} & \circled{E} \\ \hline
 }
  & \cellcolor{black} &  &\cellcolor{black}  &  &  \\ \hline
\end{tabular}
\end{center}
\setcounter{testcell}{0}
}
%sinav bilgileri
\newcommand{\class}{Sınavın Adı}
\newcommand{\examnum}{Sınavın Dönemi}
\newcommand{\examdate}{21/07/2014}
\newcommand{\timelimit}{35 Dakika}

\begin{document}

%header --start
\noindent
\begin{tabular*}{\textwidth}{l @{\extracolsep{\fill}} c @{\extracolsep{\fill}} r}
Ad Soyad: &   \textbf{\class} &    \textbf{\examdate} \\ 
Numara: &    \textbf{\examnum} &    \textbf{Süre: \timelimit} \\ 
İmza: &     &   \\ 
\end{tabular*} 
%header --end

\begin{enumerate}[\textbf{\arabic*)}]
\begin{multicols}{2}

\soruk{Soruyu yazın-1?}{Şık-1}{Şık-2}{Şık-3}{Şık-4}{Şık-5}
\sorub{Soruyu yazın-2?}{Şık-1}{Şık-2}{Şık-3}{Şık-4}{Şık-5}

% kolonu bolmek icin kullanilacak
\columnbreak

\sorutekil{Soruyu yazın-3?}

% 5 soruluk cevap anahtari, 5 rakamini degistirerek anahtari genisletebilirsiniz.
\areatest{5}
\end{multicols}
\end{enumerate}
\end{document}

latex_screens

Share