Wednesday, April 20, 2016

Koordinat Kutub

Pengantar

Secara umum kita mengenal dua tata koordinat, yaitu koordinat kartesius dan koordinat kutub. Pada tulisan ini akan kita bahas tentang penggunaan koordinat kutub dalam menggambar prisma (seperti tampak pada gambar di samping) dengan menggunakan paket TikZ. Gambar itu dibuat berdasarkan pada butir soal Ujian Nasional Tahun 2005 Matematika SMK Teknologi berikut ini.
Diketahui prisma ${ABC.DEF}$$AB=8\ \textrm{cm}$, $AC=6\ \textrm{cm}$, $AB\perp AC$, dan volume prisma $240\,\textrm{cm}^3$. Tinggi prisma tersebut adalah ....
A. $5\ \textrm{cm}$
B. $10\ \textrm{cm}$
C. $15\ \textrm{cm}$
D. $20\ \textrm{cm}$
E. $30\ \textrm{cm}$
Langkah awal dalam menggambarnya, tentu, dengan menetapkan koordinat titik $A$.  Menetapkan koordintat titik $D$, dengan panjang $AD$ tertentu, mungkin bukan masalah karena $\overline{AD}$ tegak (vertikal), tetapi tidak demikian dalam hal menetapkan koordinat titik $B$. Hal lain, tentu kita ketahui bahwa besar sudut bertanda negatif dalam arah searah putar jarum jam, demikian pula sebaliknya.


Untuk contoh konstruksi ini disyaratkan

\usepackage{tikz}
\usetikzlibrary{calc,intersections}
\usepackage{pgfplots}
\pgfplotsset{compat=newest}
sedangkan untuk menandai sudut siku-siku digunakan makro
\newcommand{\siku}[4][.3cm]
{\coordinate (tempa) at ($(#3)!#1!(#2)$);
 \coordinate (tempb) at ($(#3)!#1!(#4)$);
 \coordinate (tempc) at ($(tempa)!0.5!(tempb)$);%midpoint
 \draw[gray] (tempa) -- ($(#3)!2!(tempc)$) -- (tempb);
}


Menetapkan koordinat kutub suatu titik

Dalam $\LaTeX$, koordinat kutub dari suatu titik $P$ menyatakan pasangan dari besar sudut $\theta=\angle{X_+OP}$ dan $r=OP$. Suatu koordinat kutub ditetapkan oleh
(besar sudut:panjang jari-jari)
Sebagai contoh, kita tetapkan dulu titik $\small{A}$ pada titik asal (origin) dengan
\coordinate (A) at (0:0);
Bagaimana cara menetapkan koordinat lainnya? Bayangkan, kita tetapkan sumbu $\overrightarrow{OX_+}$ sebagai kaki tetap/diam (invariant). Kemudian dengan berpusat di $O$, dari suatu titik pada $\overrightarrow{OX_+}$ kita buat busur dengan sudut pusat sebesar $\theta$ dan berakhir di titik $P'$, maka kita peroleh ruas garis $\overline{OP}$ dengan $OP'=r$.
Berdasarkan konsep itu, titik $B$ dibuat dengan membentuk sudut pusat $10^\circ$ searah putar jarum jam dengan jari-jari $4,5\ \textrm{cm}$. Kita tetapkan
\coordinate (B) at (-10:4.5);
dan titik $C$ dibuat dengan membentuk sudut pusat $50^\circ$ berlawanan arah putar jarum jam dengan jari-jari $1,75\ \textrm{cm}$, sehingga kita tetapkan
\coordinate (C) at (50:1.75);
sedangkan titik $D$ dibuat dengan membentuk sudut pusat $90^\circ$ berlawanan arah putar jarum jam dengan jari-jari $1,75\ \textrm{cm}$, sehingga kita tetapkan
\coordinate (D) at (90:3.5);
Untuk "melihat apa yang terjadi", kita hubungkan ketiga titik $A$, $C$, dan $B$ dalam garis putus-putus (dashed) yang "tipis" (help lines).
\draw[dashed,help lines] (A)--(C)--(B) ;
Kemudian kita hubungkan pula titik $D$, $A$, dan $B$ dalam bentuk garis utuh yang "normal" (thick).
\draw[thick] (D)--(A)--(B);
Muncul masalah, bukan? Bagaimana cara menetapkan koordinat titik $F$ agar $\overline{CF}\parallel\overline{AD}$?
Untuk hal ini kita memerlukan titik bantu $T$. Kita tetapkan suatu ruas garis dari $D$ ke arah $C$ yang menyiku di $T$, sehingga
\coordinate (T) at ($(D -| C)$);
Koordinat titik $F$ diperoleh sebagai ujung ruas garis $\overline{CT}$ yang dibuat sepanjang $3,5\ \textrm{cm}$.
\path ($(C)!3.5cm!(T)$) coordinate (F);
Untuk melihat apa yang terjadi, kita hubungkan $C$, dan $F$ dalam garis putus-putus.
\draw[dashed] (C)--(F);
Dengan cara yang sama, kita buat ruas garis $\overline{BE}$ yang sejajar dengan $\overline{AD}$ dan $\overline{CF}$.
\coordinate (P) at ($(D -| B)$);
\path ($(B)!3.5cm!(P)$) coordinate (E);
\draw[thick] (B)--(E);
Sekarang sudah "aman", tinggal melakukan "sentuhan akhir". Membuat sisi atas
\draw[thick] (D)--(E)--(F)--cycle;
lalu menandai sudut siku-siku di $A$
\siku{B}{A}{C}
dan menamai titik-titik $A$, $B$, $C$, $D$, $E$, dan $F$.
\node[below] at (A) {$A$} node[right] at (B) {$B$} node[right,yshift=.1cm] at (C) {$C$} node[left] at (D) {$D$} node[right] at (E) {$E$} node[above] at (F) {$F$};


Penutup

Dari uraian di atas, diharapkan Anda sudah dapat:
  • menetapkan dan menggunakan koordinat-koordinat titik yang dinyatakan dalam koordinat kutub
  • membuat garis yang sejajar dengan garis lain dan melalui suatu titik di luar garis yang diketahui
  • menandai sudut siku-siku dengan menggunakan makro
Adapun pengkodean selengkapnya beserta dokumen yang dihasilkannya dari contoh kontruksi di atas dapat Anda lihat di bawah ini.

Demikian semoga bermanfaat.

$\square$ Adjie Gumarang Pujakelana 2016

\documentclass{article}
\usepackage{fourier}
\usepackage{tikz}
\usetikzlibrary{calc,intersections}
\usepackage{pgfplots}
\pgfplotsset{compat=newest}
\newcommand{\siku}[4][.3cm]
{\coordinate (tempa) at ($(#3)!#1!(#2)$);
 \coordinate (tempb) at ($(#3)!#1!(#4)$);
 \coordinate (tempc) at ($(tempa)!0.5!(tempb)$);%midpoint
 \draw[gray] (tempa) -- ($(#3)!2!(tempc)$) -- (tempb);
}
\usepackage[active,tightpage]{preview}
\PreviewEnvironment[]{tikzpicture}

\begin{document}

\centering

\begin{tikzpicture}[scale=1.5,line join=rounded]
\coordinate (A) at (0:0) coordinate (B) at (-10:4.5) coordinate (C) at (50:1.75) coordinate (D) at (90:3.5);
\draw[dashed,help lines] (A)--(C)--(B) ;
\draw[thick] (D)--(A)--(B);
\coordinate (T) at ($(D -| C)$);
\path ($(C)!3.5cm!(T)$) coordinate (F);
\draw[dashed] (C)--(F);

\coordinate (P) at ($(D -| B)$);
\path ($(B)!3.5cm!(P)$) coordinate (E);
\draw[thick] (B)--(E);

\draw[thick] (D)--(E)--(F)--cycle;
\siku{B}{A}{C}
\node[below] at (A) {$A$} node[right] at (B) {$B$} node[right,yshift=.1cm] at (C) {$C$} node[left] at (D) {$D$} node[right] at (E) {$E$} node[above] at (F) {$F$};
\end{tikzpicture}

\end{document}




Monday, March 28, 2016

Animasi dalam PDF?

Mukadimah

Anda pernah menemukan gambar animasi di dalam berkas portable document format (PDF)? Bagaimana Anda membuat gambar animasi di dalam berkas PDF?
Pada tulisan ini akan saya tunjukkan contoh cara membuat gambar animasi di dalam berkas dokumen $\small\LaTeX$. Ada beberapa cara yang dapat dilakukan tetapi saya memilih salah satunya yang saya anggap relatif mudah. Sebagai contoh, saya buat gambar seperti yang telah diterbitkan di sini. Agar dapat membentuk animasi, tentu saja, dengan beberapa penambahan paket dan perintah. Dokumen tersebut disusun di dalam kelas dokumen Beamer. Karena terlalu "berat", dokumen tersebut tidak dapat disusun dalam jaringan (daring) di ShareLaTeX. Akhirnya saya menyusunnya di dalam TeX Live
Setelah dihasilkan berkas PDF, kemudian saya ubah (convert) dokumen PDF itu menjadi berkas flash Adobe (SWF) dengan menggunakan software dari situs ini. Terakhir kedua berkas PDF dan SWF itu secara bersama-sama digunakan untuk menyusun dokumen animasi di dalam kelas dokumen Standalone dengan menggunakan paket Animate dan Media9.

Tahap 1

Saya membuat berkas yang dinamai sebagai Animasi.tex sebagaimana telah ditulis di sana. Saya menyusunnya di dalam kelas dokumen Beamer dengan tema Warsaw
\PassOptionsToPackage{dvipsnames,svgnames}{xcolor}
\documentclass[compress]{beamer}
\usetheme{Warsaw}
Beamer sudah memuat paket xcolor, tetapi saya perlu menetapkan dua warna baru
\definecolor{biruku}{cmyk}{1,0.80,0.30,0.05}
\definecolor{bistre}{RGB}{150, 113, 23}
oleh karena itu (khusus dalam Beamer) saya harus memuat baris pertama tersebut.Untuk huruf teks saya gunakan Palatino.
\renewcommand\rmdefault{pplx}
sedangkan untuk huruf matematis saya gunakan
\usefonttheme{professionalfonts}
Pada tema Warsaw, kepala dan kaki frame tebagi dalam dua "sisi". Saya membaginya secara imbang 50% : 50%. Nah, pada bagian kaki ingin saya tempatkan teks. Pada sisi kiri untuk penulis dan pada sisi kanan untuk judul. Untuk hal ini saya gunakan
\setbeamertemplate{footline}
{
  \leavevmode%
  \hbox{%
  \begin{beamercolorbox}[wd=.5\paperwidth,ht=2.25ex,dp=1ex,center]{author in head/foot}%
    \usebeamerfont{author in head/foot}\insertshortauthor
  \end{beamercolorbox}%
  \begin{beamercolorbox}[wd=.5\paperwidth,ht=2.25ex,dp=1ex,center]{title in head/foot}%
    \usebeamerfont{title in head/foot}\insertshorttitle\hspace*{3em}
  \end{beamercolorbox}}%
  \vskip0pt%
}
dengan
\author{\tiny\textcopyright 2016\ Adjie Gumarang Pujakelana}
\title{\tiny Animasi dari \LaTeX}
Subjek gambar didukung oleh
\usepackage{tkz-euclide}
\usetkzobj{all}
\usepackage{tikz}
Agar animasi menampilkan tiap langkah (yang ingin ditampilkan) dalam membuat gambar, maka ditetapkan perintah baru (dinamai visible on) yang bersesuaian dengan perintah di dalam Beamer. Ini bagian dari perintah di dalam gambar TikZ. Oleh karena itu ditetapkan sebagai
\tikzset{
  invisible/.style={opacity=0},
  visible on/.style={alt={#1{}{invisible}}},
  alt/.code args={<#1>#2#3}{%
    \alt<#1>{\pgfkeysalso{#2}}{\pgfkeysalso{#3}} % \pgfkeysalso doesn't change the path
  },
}
Dalam penggunaannya saya nyatakan, misalnya,
\tkzDrawSegments[add= 0.3 and 0.25,color=biruku!80,visible on=](D,E)
yang berarti bahwa gambar ruas garis $\small\overline{DE}$ ditampilkan pada langkah kedua. Demikian seterusnya, sesuai dengan pengkodean ini.
Langkah pertama sengaja saya tetapkan "tanpa menggambar", yaitu berupa path.
\path[visible on=] (D)--(E);
Setelah menetapkan semua langkah dalam menggambar yang ingin ditampilkan, kemudian saya menyusun (compile) berkas itu untuk menghasilkan Animasi.pdf.

Tahap 2

Saya mengubah berkas Animasi.pdf menjadi Animasi.swf dengan menggunakan SWFTools, piranti lunak (software) yang gartis. Setelah software itu terpasang, buka dan klik File > Open PDF > Animasi.pdf > Open. Tunggu beberapa saat. Setelah pengubahan selesai, klik tombol Save SWF (lambang disket di bawah menu Edit) dan namai sebagai Animasi.swf (sebaiknya pada folder yang sama dengan tempat Animasi.pdf), klik Save.

Tahap 3 (Tahap Akhir)

Pada tahap inilah saya membuat berkas animasi. Saya melakukannya di ShareLaTeX. Berikut ini pengkodean untuk membuat berkas animasinya.
\documentclass[varwidth,border=1pt]{standalone}

\usepackage{graphicx}
\usepackage{animate}
\usepackage{media9}

\begin{document}

\centering
\makeatletter\edef\animcnt{\the\@anim@num}\makeatother%
\animategraphics[loop,controls,width=\textwidth]{1}{Animasi}{1}{47}

\end{document}
Kemudian saya unggah kedua berkas Animasi.pdf dan Animasi.swf tadi dan disusun (compile). Hasilnya dapat Anda lihat di bawah ini. Silakan Anda unduh dan buka dengan menggunakan Adobe Reader. Untuk tampilan penuh, klik View lalu Full Screen Mode.



Demikian semoga bermanfaat.

$\square$ Adjie Gumarang Pujakelana 2016

Thursday, December 24, 2015

Menggambar Fungsi Implisit

Pengantar

Perbedaan antara fungsi implisit dan fungsi eksplisit dapat dilihat dalam persamaan fungsinya. Secara umum fungsi dinyatakan secara eksplisit dimana variabel tak bebas dan variabel bebasnya dapat dinyatakan sebagai
\[y=f(x)\]
Dalam fungsi implisit, selain variabel tak bebas dan variabel bebasnya tidak berbentuk eksplisit seperti di atas, juga terdiri dari beberapa variabel dan dinyatakan sebagai
\[R(x_1,x_2,\ldots,x_n)=0\]
Untuk dua variabel, misalnya, berbentuk
\[R(x,y)=0\]
Nah, tulisan ini memang didasari oleh fungsi implisit yang disodorkan kepada saya dalam bentuk soal sebagai berikut.
Tentukan semua bilangan real $(x,y)$ dari sistem persamaan \begin{cases}
\sqrt{x-y}=x+y-7\\
\sqrt{x+y}=x-y-1
\end{cases}
Setelah itu, yang pertama terpikirkan adalah bagaimana menyelesaikan soal tersebut secara grafis; menyiasati penyelesaian soal selain cara aljabar. Soal ini tampak rumit, baik untuk diselesaikan secara aljabar maupun secara grafis. Secara aljabar saya coba menyelesaikannya dengan cara mengkuadratkan kedua ruas, tetapi ini menghasilkan jawaban yang keliru (karena cara tersebut tidak berlaku pada fungsi implisit). Hal ini diketahui setelah saya memeriksanya secara grafis pada WolframAlpha. Saya hentikan untuk menjawabnya secara aljabar, karena jawaban itu sudah ditemukan oleh Pak Anang. Saya kembali ke daya tarik semula, yaitu mencari cara untuk menyelesaikannya secara grafis. Akhirnya ditemukan juga, kita dapat menyelesaikannya dengan menggunakan paket pgfplots.

Menggambar Fungsi Implisit

Perhatikan gambar di atas. Berbeda dari penggunaan paket pgfplots sebelumnya dalam tulisan-tulisan ini, fungsi implisit digambar dengan menggunakan perintah utama dari gnuplot. Saya juga sudah mencobanya dengan menggunakan SageMath, tetapi pengkodeannya terlalu rumit.

Kurva dari fungsi implisit kita gambar dalam perintah dasar \addplot dengan dua opsi utama
raw gnuplot,empty line=jump
diiukuti oleh perintah
gnuplot {
    set contour base;
    set cntrparam levels discrete 0.001;
    unset surface;
    set view map;
    set isosamples 500;
    splot ... ;
    };
Ketiga titik itu kita ganti dengan rumus fungsi yang akan kita gambar.

Sebagai contoh, untuk menggambar kurva dari $\sqrt{x-y}=x+y-7$ kita harus menyatakan persamaan fungsinya secara implisit dengan ruas kanan nol menjadi $\sqrt{x-y}-x-y+7=0$. Kemudian fungsi dari ruas kiri itu kita cantumkan dalam perintah berikut ini.
\addplot[name path=satu,blue,
    raw gnuplot,very thick,
    empty line=jump 
    ] gnuplot {
      set contour base;
      set cntrparam levels discrete 0.001;
      unset surface;
      set view map;
      set isosamples 500;
      splot sqrt(x-y)-x-y+7;%biru
    };
Nama path dicantumkan dalam opsi karena (seperti tampak pada gambar di atas) saya akan menetapkan koordinat titik potong dari kedua kurva tersebut. Agar opsi ini diterima, lebih dulu kita muat library intersections pada preamble.
\usetikzlibrary{intersections}
Kurva kedua untuk $\sqrt{x+y}=x-y-1$ kita ubah menjadi $\sqrt{x+y}-x+y+1=0$, kemudian kita cantumkan dalam
\addplot[name path=dua,red,
    raw gnuplot,very thick,
    empty line=jump 
    ] gnuplot {
      set contour base;
      set cntrparam levels discrete 0.001;
      unset surface;
      set view map;
      set isosamples 500;
      splot sqrt(x+y)-x+y+1;%merah
    };


Menetapkan Koordinat Titik Potong antara Dua Kurva

Dengan library intersections kita sudah menamai masing-masing path dari kedua kurva sebagai satu dan dua. Sekarang kita sebut nama titik potongnya itu sebagai $P$, maka kita nyatakan
\path [name intersections={of=satu and dua,by=P}];
Bila pada $P$ kita ingin menandainya dengan noktah berupa lingkaran kecil, maka kita gambar (misalnya) dengan
\draw[fill=yellow] (P) circle [radius=1.25pt];
Hal-hal lainnya dalam pengkodean ini dapat Anda pelajari dalam tulisan sebelumnya tentang penggunaan paket pgfplots.


Penutup

Nah, berikut ini saya sertakan pengkodean selengkapnya dan dokumen yang dihasilkannya. Contoh dokumen tersebut saya susun dalam jaringan melalui Online LaTeX Editor ShareLaTeX
Demikian semoga bermanfaat.


$\square$ Adjie Gumarang Pujakelana 2015
\documentclass{article}
\usepackage[margin=2cm,a4paper]{geometry}
\usepackage{tikz}
\usepackage{pgfplots}
\pgfplotsset{compat=newest}
\usetikzlibrary{intersections}
\let\ds\displaystyle
\pagestyle{empty}

\begin{document}

\begin{tikzpicture}
  \begin{axis}[clip=false,
  axis lines=center, 
  xmin=-1,xmax=12,
  ymin=-1,ymax=5,
  xtick={1,6,7,8,10},ytick={2,3,4},
  enlargelimits=false
  ]
\addplot[name path=satu,blue,
    raw gnuplot,very thick,
    empty line=jump 
    ] gnuplot {
      set contour base;
      set cntrparam levels discrete 0.001;
      unset surface;
      set view map;
      set isosamples 500;
      splot sqrt(x-y)-x-y+7;%biru
    };
\addplot[name path=dua,red,
    raw gnuplot,very thick,
    empty line=jump 
    ] gnuplot {
      set contour base;
      set cntrparam levels discrete 0.001;
      unset surface;
      set view map;
      set isosamples 500;
      splot sqrt(x+y)-x+y+1;%merah
    };
\path [name intersections={of=satu and dua,by=P}];
\draw[fill=yellow] (P) circle [radius=1.25pt];
\draw[dashed,gray] (axis cs:0,2.5)--(P) (axis cs:6.5,0)--(P);
\node[coordinate,pin=95:{\color{red}\small{$\ds\sqrt{x+y}=x-y-1$}}] at (axis cs:7.9,3.5){};
\node[blue,coordinate,pin=80:{\color{blue}\small{$\ds\sqrt{x-y}=x+y-7$}}] at (axis cs:8,1.5){};
  \end{axis}
\end{tikzpicture}

\end{document}





Tuesday, December 22, 2015

Segitiga, Dalil Pythagoras, dan Persamaan Kuadrat

Pengantar

Tulisan ini didasari oleh soal berikut ini.
Diketahui salah satu sisi siku-siku suatu segitiga siku-siku $\small21$cm lebih panjang dari sisi siku-siku lainnya. Jika panjang hipotenusanya adalah $\small39$cm, maka panjang sisi terpendek dari segitiga siku-siku tersebut adalah ... cm.
Nah, bila kita buat konstruksi gambar yang berkaitan dengan soal tersebut maka akan kita peroleh gambar seperti tampak di samping ini. Pada tulisan ini kita akan membuat gambar sederhana tersebut. Dengan menggunakan paket tikz, kita akan pelajari tentang cara
  • menetapkan koordinat
  • menggambar segitiga, sebagai path tertutup
  • menamai ruas garis, sebagai ukuran panjang sisi segitiga
  • menandai sudut siku-siku


Teknis Gambar TikZ

Tentu, lebih dulu, kita muat paket tikz pada preamble.
\usepackage{tikz}
Kemudian, pada badan dokumen, setiap gambar tikz ditulis di dalam environment brikut ini.
\begin{tikzpicture}  
...
\end{tikzpicture}
Sekarang kita mulai dengan menetapkan ketiga koordinat, sebagai titik-titik sudut segitiga itu. Hal ini dapat kita lakukan dengan "membayangkan" kedudukan dari ketiga titik itu pada bidang koordinat, atau kita dapat menyelidikinya dengan menggunakan GeoGebra.
\coordinate (A) at (0,0);
\coordinate (B) at (3,0);
\coordinate (C) at (0,5);
Kita "sebut" ketiga koordinat itu sebagai $\small{A}$, $\small{B}$, dan $\small{C}$. Dalam hal ini, pusat koordinat $\small A(0,0)$ kita perlakukan sebagai tempat sudut siku-siku.

Untuk menggambar (draw) segitiga, kita nyatakan secara berurutan ketiga koordinat itu dalam bentuk 
\draw[] (A)--(B)--(C)--cycle;
Bila diinginkan kita dapat isi kurung siku itu sebagai opsi terhadap gambar segitiga itu, misalnya dengan mewarnai sisinya atau mengarsir daerahnya.

Selanjutnya kita akan menamai ukuran panjang dari ketiga sisinya. Pada sisi $\small\overline{AB}$ kita misalkan sebagai $\small{x}$. Peletakkan nama ini hanya menyediakan tempat, bukan menggambar ruas garisnya. Ini dinyatakan oleh perintah path dan node sebagai berikut.
\path[] (A)--(B) node[below,midway] {$x$};
Perintah path menyediakan tempat untuk nama itu, yaitu di antara koordinat $\small{A}$ dan $\small{B}$. Sedangkan perintah node menetapkan letak nama itu dan menuliskannya. Opsi below menyatakan bahwa nama itu terletak bawah ruas garis $\small\overline{AB}$ dan oleh opsi midway diletakkannya itu di tengah-tengahnya.

Pada sisi $\small\overline{BC}$, sisi miring dengan ukuran $\small\overline{39}$, kita ingin agar nama itu mengikuti kemiringan sisinya. Untuk hal ini kita tambahkan opsi sloped pada perintah node.
\path[] (C)--(B) node[above,midway,sloped] {$39$};
Hal yang sama kita lakukan dalam menamai sisi $\small\overline{CA}$.
\path[] (C)--(A) node[below,midway,sloped] {$x+21$};
Terakhir, sebagai salah satu pilihan, akan kita gunakan paket lain, yaitu tkz-euclide, untuk menandai sudut siku-siku. Untuk keperluan ini kita mencantumkannya pada preamble sebagai
\usepackage{tkz-euclide}
\usetkzobj{all}
Sedangkan dalam penggunaannya, tanda siku-siku pada $\angle{BAC}$ (penyebutannya melawan arah putar jarum jam) dinyatakan dengan 
\tkzMarkRightAngle[draw=gray,opacity=.5,scale=2](B,A,C)
Opsi-opsinya menyatakan bahwa tanda siku-siku itu digambar dengan warna abu-abu (gray), dengan tingkat keburaman (opacity) 50%, dan berukuran dalam skala 2. Tentu saja opsi-opsi ini dapat disesuaikan dengan selera kita.


Penutup

Bila rangkaian perintah yang telah diuraikan di atas dipadukan maka akan membentuk pengkodean selengkapnya seperti tampak dalam struktur dokumen berikut ini. Pengkodean ini untuk menggambar segitiga sebagaimana tampak pada gambar di atas. Adapun jawaban selengkapnya untuk soal tersebut terlampir dalam dokumen di bawahnya. Dokumen tersebut saya susun dalam jaringan melalui Online LaTeX Editor ShareLaTeX
Demikian semoga bermanfaat.

$\square$ Adjie Gumarang Pujakelana 2015
\documentclass[a4paper,10pt]{article}
\usepackage[margin=2cm]{geometry}
\usepackage{tikz}
\usepackage{tkz-euclide}
\usetkzobj{all}
\pagestyle{empty}

\begin{document}

\begin{tikzpicture}  
\coordinate (A) at (0,0);
\coordinate (B) at (3,0);
\coordinate (C) at (0,5);

\draw[] (A)--(B)--(C)--cycle;

\path[] (A)--(B) node[below,midway] {$x$};
\path[] (C)--(B) node[above,midway,sloped] {$39$};
\path[] (C)--(A) node[below,midway,sloped] {$x+21$};

\tkzMarkRightAngle[draw=gray,opacity=.5,scale=2](B,A,C)
\end{tikzpicture}

\end{document}



Sunday, December 20, 2015

Membagi Bilangan dengan LongDiv dan XintFrac

Pengantar

Pada sekolah-sekolah tingkat dasar, materi pembagian bilangan oleh bilangan lain merupakan kemampuan dasar yang harus dimiliki oleh para siswa. Dalam konsep pembagian (division) dikenal istilah pembagi (divisor), hasil bagi (quotient), dan sisa (remainder). Jika dari pembagian itu diperoleh sisa nol maka disebut habis dibagi
Nah, bagaimana Anda menunjukkan proses pembagian bilangan ini pada dokumen tertulis yang Anda susun?
Dalam tulisan ini akan kita tinjau pembagian suatu bilangan (dividend) oleh bilangan lain (divisor) dengan menggunakan makro longdiv dan paket xintfrac.

Pembagian Bentuk Panjang (Long Division)

Pembagian ini dikenal juga sebagai bagi kurung atau pembagian cara pistol. Salah satu cara untuk menunjukkan proses pembagian dalam bentuk panjang, dapat kita gunakan makro longdiv. Pada preamble kita cantumkan
\input{longdiv}
Kemudian kita gunakan (pada badan dokumen), misalnya, untuk memperlihatkan pembagian bilangan $\small12345$ oleh $\small13$ dengan perintah
\longdiv{12345}{13} 
maka hasilnya akan tampak seperti pada Contoh 1 dalam dokumen terlampir di bawah ini. Dengan demikian contoh-contoh lainnya kita perlihatkan dengan
\longdiv{31415926}{2} 
\longdiv{81}{3}
\longdiv{1132}{99}
\longdiv{86491}{94}
Kita lihat bahwa dalam masing-masing pembagian tersebut memperlihatkan proses pembagiannya hingga diperoleh hasil bagi dan sisanya.

Cara Lain

Bila kita ingin menunjukkan pembagian dengan hasil dan sisanya ditulis ke samping kanan, seperti pada Contoh 6 s.d. 8, maka dapat kita gunakan paket xintfrac dengan tambahan perintah baru. Pada preamble kita muat

\usepackage{xintfrac}
\newcommand\hasil[2]{%
    \xintNum {#1/#2}+\xintFrac{\xintIrr{\xintTFrac {#1/#2}}}}
Sebagai contoh dalam penggunaannya, pada badan dokumen, kita tulis

$\ds\frac{43365}{5}=\hasil{43365}{5}$
maka hasilnya akan tampak seperti pada Contoh 6 dalam dokumen terlampir di bawah ini. Dengan demikian Contoh 7 dan 8 kita tulis dengan

$\ds\frac{508811}{79}=\hasil{508811}{79}$\\
$\ds\frac {123456789012345678901234567890}{9876543210}
=\hasil{123456789012345678901234567890}{9876543210}$
Dapatkah Anda sebutkan, bilangan berapa pada contoh terakhir itu?


Penutup

Demikianlah dokumen berikut ini saya susun dalam jaringan melalui Online LaTeX Editor ShareLaTeX. Semoga bermanfaat.


$\square$ Adjie Gumarang Pujakelana 2015




Saturday, December 19, 2015

Pembagi Terbesar Bersisa Sama

Hari ini saya belajar dari Pak Anang yang mengajukan soal sebagai berikut.
"Berapakah bilangan $\small{A}$ terbesar sehingga jika $\small480608$, $\small508811$, dan $\small723217$ dibagi oleh $\small{A}$ akan memberikan sisa yang sama."
Jawaban atas soal tersebut sudah saya tulis dalam dokumen berikut ini. 



Lalu, apa hal penting dalam penyusunan dokumen tersebut?
Silakan Anda perhatikan kolom kanan pada jawaban dalam dokumen tersebut. Penentuan nilai $\small{b-a}$ dan $\small{c-b}$ itu tidak saya tuliskan secara manual melainkan dilakukan oleh paket xlop dengan perintah
$b-a=$ \opsub[style=text]{508811}{480608}\\
$c-b=$ \opsub[style=text]{723217}{508811}
untuk menunjukkan pengurangan dari kedua bilangan itu dengan arah ke samping kanan.
Kemudian perhatikan di bawahnya. Menentukan faktor persekutuan terbesar (great common divisordari kedua bilangan itu juga dilakukan oleh paket xlop dengan perintah (makro)
\opcopy{28203}{a}%
\opcopy{214406}{b}%
\opgcd{a}{b}{FPB}%
$\gcd(\opprint{a},\opprint{b})=\opprint{FPB}$
Tampak bahwa nilai beda yang telah diperoleh sebelumnya dari hasil perintah \opsub, yaitu $\small28203$ dan $\small214406$ berturut-turut saya tetapkan sebagai $\small{a}$ dan $\small{b}$. Lalu nilai faktor persekutuan terbesarnya saya tetapkan sebagai $\small{FPB}$. Setelah itu barulah memberi perintah \gcd untuk memperoleh hasilnya.

Yang terakhir, perhatikan kolom kanan pada bagian terbawah. Pemfaktoran bilangan atas faktor-faktor prima tersebut dihasilkan oleh makro dari Nickie, seorang pakar di forum, berikut ini. Makro ini saya simpan sebagai faktorprima.tex yang kemudian disertakan pada preamble dalam penyusunan dokumen di atas.
\makeatletter

\newcount\factorize@n  % the number to be factorized
\newcount\factorize@t  % temporary
\newcount\factorize@p  % a candidate factor
\newcount\factorize@c  % counter of factors (total)
\newcount\factorize@w  % counter of factors (power of given candidate)

% machinery for factorization
%
\def\factorize#1{%
  \factorize@begin{#1}%
  \factorize@n=#1
  \factorize@c=0
  \factorize@p=2
  \factorize@try%
  \factorize@p=3
  \factorize@try%
  \factorize@p=5
  \factorize@loop%
  \ifnum\factorize@c>0
    \ifnum\factorize@n>1
      \factorize@process{\the\factorize@n}{1}%
    \fi%
  \else%
    \factorize@process{\the\factorize@n}{1}%
  \fi%
  \factorize@end{#1}%
}
\def\factorize@loop{%
  \factorize@t=\factorize@p
  \multiply\factorize@t by \factorize@p
  \ifnum\factorize@t>\factorize@n\else%
    \factorize@try%
    \advance\factorize@p by 2
    \factorize@t=\factorize@p
    \multiply\factorize@t by \factorize@p
    \ifnum\factorize@t>\factorize@n\else%
      \factorize@try%
      \advance\factorize@p by 4
      \factorize@loop%
    \fi%
  \fi%
}
\def\factorize@try{%
  \factorize@w=0
  \factorize@try@aux%
  \ifnum\factorize@w>0
    \factorize@process{\the\factorize@p}{\the\factorize@w}%
    \advance\factorize@c by \factorize@w
  \fi%
}
\def\factorize@try@aux{%
  \factorize@t=\factorize@n
  \divide\factorize@t by \factorize@p
  \multiply\factorize@t by \factorize@p
  \ifnum\factorize@n=\factorize@t
    \divide\factorize@n by \factorize@p
    \advance\factorize@w by 1
    \factorize@try@aux%
  \fi%
}

% Stubs to be called at start, end, and when a factor is found
%
\def\factorize@begin#1{%
  \noindent%
  $#1 =%$
}
\def\factorize@end#1{%
  $%$
  \par%
}
\def\factorize@process#1#2{%
  \ifnum\factorize@c>0
    \times%
  \fi%
  \ifnum#2>1
    #1^{#2}%
  \else%
    #1%
  \fi%
}

\makeatother
Kemudian saya gunakan untuk
\factorize{28203}

\factorize{214406}

Demikianlah, berikut ini pengkodean selengkapnya untuk soal dan jawaban pada di atas. Dokumen tersebut saya susun dalam jaringan melalui Online LaTeX Editor ShareLaTeXSemoga bermanfaat.

$\square$ Adjie Gumarang Pujakelana 2015
\documentclass[10pt,a4paper]{article}
\usepackage[hmargin=2cm,top=2cm,bottom=2cm]{geometry}
\usepackage[dvipsnames,svgnames,table]{xcolor}
\definecolor{bistreb}{RGB}{150, 113, 23}
\definecolor{blau}{RGB}{17,94,140}
\renewcommand{\rmdefault}{put}
\usepackage[indonesian]{babel}
\usepackage{amsmath,amssymb,bm} 
\usepackage{xlop}
\input{faktorprima.tex}
\usepackage{multicol}
\setlength\columnseprule{.4pt}
\renewcommand{\columnseprulecolor}{\color{bistreb}}

\parindent0em

\begin{document}

{\color{blau}\bfseries Soal.}

\smallskip
Berapakah bilangan $A$ terbesar sehingga jika $480608$, $508811$, dan $723217$ dibagi oleh $A$ akan memberikan sisa yang sama?

\medskip
{\color{blau}\bfseries Jawaban:}
\begin{multicols}{2}
Misalkan ketiga bilangan itu $a_1$, $a_2$, dan $a_3$ dengan $a_1


Related Posts Plugin for WordPress, Blogger...