From 3ede55482f6b4f45cda50cb9c7005342b2f05324 Mon Sep 17 00:00:00 2001 From: Kenryu Shibata Date: Wed, 21 May 2025 22:41:44 +0900 Subject: [PATCH] added programs --- programs/p310/info.json | 10 ++++++ programs/p310/main | Bin 0 -> 15832 bytes programs/p310/main.c | 69 ++++++++++++++++++++++++++++++++++++++ programs/p311/info.json | 10 ++++++ programs/p311/main | Bin 0 -> 15832 bytes programs/p311/main.c | 20 +++++++++++ section/introduction.tex | 70 ++++----------------------------------- 7 files changed, 115 insertions(+), 64 deletions(-) create mode 100644 programs/p310/info.json create mode 100755 programs/p310/main create mode 100644 programs/p310/main.c create mode 100644 programs/p311/info.json create mode 100755 programs/p311/main create mode 100644 programs/p311/main.c diff --git a/programs/p310/info.json b/programs/p310/info.json new file mode 100644 index 0000000..e36a59a --- /dev/null +++ b/programs/p310/info.json @@ -0,0 +1,10 @@ +{ + "language": "C", + "name": "演習 3-10", + "description": "3つの整数値の等価検証プログラム。", + "output": { + "type": "screenshot", + "content": "./assets/p310.png" + }, + "note": "" +} diff --git a/programs/p310/main b/programs/p310/main new file mode 100755 index 0000000000000000000000000000000000000000..01c065b8334234e0ad100640290cc84399c156b4 GIT binary patch literal 15832 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 literal 0 HcmV?d00001 diff --git a/programs/p310/main.c b/programs/p310/main.c new file mode 100644 index 0000000..39b8e3e --- /dev/null +++ b/programs/p310/main.c @@ -0,0 +1,69 @@ +#include + +#define NON_EQUAL 0 +#define ONE_EQUAL 1 +#define ALL_EQUAL 2 + +#ifndef USE_ALT + +int main(void) { + int a, b, c; + + printf("Int A: "); + scanf("%d", &a); + printf("Int B: "); + scanf("%d", &b); + printf("Int C: "); + scanf("%d", &c); + + if (a == b && a == c) { + printf("All three values are equal.\n"); + } else if (a != b && a == c) { + printf("Two values are equal.\n"); + } else if (a != c && a == b) { + printf("Two values are equal.\n"); + } else if (b == c) { + printf("Two values are equal.\n"); + } else { + printf("All three values are different.\n"); + } + + return 0; +} + +#endif // !(defined(USE_ALT)) + +#ifdef USE_ALT + +// alternetive answer +int main(void) { + int flag = 0; // remember, boolean in C is just integer + + int a, b, c; + + printf("Int A: "); + scanf("%d", &a); + printf("Int B: "); + scanf("%d", &b); + printf("Int C: "); + scanf("%d", &c); + + flag += a == b; + flag += a == c; + + if (flag != ALL_EQUAL) { + flag += b == c; + } + + if (flag == NON_EQUAL) { + printf("All three values are different.\n"); + } else if (flag == ONE_EQUAL) { + printf("Two values are equal.\n"); + } else { + printf("All three values are equal.\n"); + } + + return 0; +} + +#endif // defined(USE_ALT) diff --git a/programs/p311/info.json b/programs/p311/info.json new file mode 100644 index 0000000..9889715 --- /dev/null +++ b/programs/p311/info.json @@ -0,0 +1,10 @@ +{ + "language": "C", + "name": "演習 3-11", + "description": "論理OR演算子を使用して2つの整数値の差が10以下であるか、11以上であるかを検証するプログラム。", + "output": { + "type": "screenshot", + "content": "./assets/p311.png" + }, + "note": "" +} diff --git a/programs/p311/main b/programs/p311/main new file mode 100755 index 0000000000000000000000000000000000000000..58a4a8fbd6f0da65c2436fb5facee00e9e44bf84 GIT binary patch literal 15832 zcmeHOeQX>@6`wmhjhiO+1Y6#}I6KZ}0|xUC$ulvF?z6)DGiv+teH z%eg{D`~y4E?r+|k-V#BzXCW?jOObTD#43>x zTg83iF3>c>k&q>bUXF1#>=iIJ5w8Id?KWXXVqy^g2X5y zo{V$tsOSyV$`#{xYx5|oFIQ^2-yxr zw7W!hm&lGWLVQM!C&mPi*fuyxOe{iA!v67+->yJ*g>4>#Q6WAf$NuQMZu-;sJ4|*3 zs<5CWqzA^GQWAoZ{e21SsB4Mw$-v!wg#0bl4_S&QBXy@}v&@M$$F++_TWWl_)79PX zBs)4z^z6!acUVtkta$Os&YpB(_vx4!9nYC#sc5^}8H;vzw}H@>OGk62Rho!S?COqo zcdCx9wtMZx;l3OWycTpV$0Q&o_Dxel_9yE2kfeX})C#;cb+}kpJw3Lko_-Vzlsffn zT!N3ciF);jLdkW6t~+irbwW>NPw1JXnFB?kXj*OtH6UOhky3Q^eA2W)V>)(f_io)u zC9RCWVvJ?C*grDd*RQv$J=I)?+F8vnZ%$1*QGp&qW%qLybwxWfioiZH9w8o=xeYcy9rgBNgX|qc%UJD}j^`8G| zq|{pXq++LHC&r4!bgDgda@=&xo?TC*Pfl1p9acwYEFK+CrK0gpwOx&??XmW*SVwz1 z3^N#Q<`_h3Ja1bRI~_YLEE-@0gl4h0Tx`Z z(bvwI`5Ha?4pI<-AOb-If(Qf=2qF+fAc(*xN8qn5_kXOFKWNgm4c_0Bfl(SfN<9Y?s_V1&Nj}rS<5=l6Dl!Tc~X&q1weZHMQhv;i(K5}$eO zDscLcvmH3^|9)Nt$fzw3JPi%;t{3AI|MT$F+mCBgf6~hD+&p}2Fg_Fiwf5Fqg$RUW z{V!A@{zNBzGYe#l@2@2Pn;%M;x~aYX z;Xdv4+YMUiP3`SF?&@j{%c%yxJ^DYhw+k92N^2k0rrw=D4cGMMvIjvE`r6fh@rV5P zpA!O6j)OAyJhnARK?H&b1Q7@#5JVt|KoEf-0zm|V2m}!bBJjTwfe^fX8Ma)dcaI{r zr)9PevSPr@WQ?L=r3}S%l<}gGbd93oW|Nj;7Zu}VDVbATTZzZ}WqB%0uyy=mad!B4MBlc~6_zNAapFy<( zM-Glr;JpYadYdEV@K>6Zu(P5$(%;MzyIK)B78>7;I-f%AecfTv`7y7 zWaMHyk&pJ6@XwJIG8deJ2m}!bA`nC%h(Hj5AOb-If(Qf=_`i(6nuNUUYqSrWpDzX} z7+VRyMYxhsz)ML?u(?mBCaULNl6n8}7A_~;OgK&Zjq%wEQ|&%slnV_B1o8Jf6&rDy zWPaYtHYQLl_Z%Y5P&q%}*mNP@(-iFgMiQj;9#qe~_wNer?+a7OC?P)=;{HKQxE~eM z#9axAtk+29>%eC>Ot6_zCiZ_n$;|sl#k)RguDC<;{IY~(!b??o{ag-@oKl{pa;omX z2D~5K@1UFde~9qQgc(9V-!Jd)@86?51W%@)SG=vJ3U4*_GZ)Jkheq*HWwF*9KOxu= z?B7qmW(huy(|Yx^f<7!(icy*m><6FyQGdaw-%Wa+Kg>S_nGlRRe7}x~`|mNCUnh9{ z%R)Gvg#+ssG>=&SUC4yQTEX*)^_L-2ul=t|enjltmSAcX>+#=^{Pn`$&%cvaErR#U zb0ya$e}mxp!unf~!C3p#LAY=QXAQ-H%h!Uw9={dz5#V#&n7;%0;Z=g~Gpvsl-Anq(#9o{IKeC;fuUNnPILb4ml=4sGJpno^{_*0-?6J99}(>US#)e+P~ z|MK@PIG!-QK=t^q_cHNu^9QCErHXD` zwPBxka?I4-;haGGihd=6cH?OC1wq@X!`?Rf(=j^d$PEW)4 z433^GO^B48FXRl@NUO2>3_W97rk*Solasn(xy4D5DJJuVo-XC{lVDOK>A-XsQK3zS zm6oj?I?{V!P#-)vpzA^(IDWAAz;Hj9!wp6s)O4>@8#p5L{Ue9^dPnp_LqkUgkLkyH z`$h)A!v94;f;axdW`5j-UzKsAziy_4)k-ZFsMSP&Sc(Ajsdzw53`(u&nApwL8#+aNzEpmtWeXF7SKI(i(bho zqv*iL42uLE%HR@`Xh69_&K0V3sk+7lA-%W^jE2Qwi?fUfR@< zkQx5o>?r9OkXxHR2Lj$B*q+xt1zMQ!I)d*zyl!CmL9o3AYXY{PCjZl9&+9AZvpu&V z3K?7@vHc9$&yf8kB4Qh{?QGBMnJ&;FmF;<5mL-S04g-oz{_EchT3q9>J+EtK>Bb3n zUYWT4%wv26N^#A^GOwHF$$r!`moctwKdI$+C|Eb!^Eytu%VR7Rf4=?{(9pimqgU63 z6J$S1dgN??!ymsq=&)TxU$`GfKnaQ0&z|J@;yhv&j#_(#?&k{GAFd@sp43%zeD?f% zQy}8=z7Au1u6ELA&%e)2^y9vYiG2yLNccn3F3kW)wAFK&!A*E9PB@~Eg`x5eWWKzl|1?FUj}WhJ+EK+ zJ4t21RObBcp8+k-5t^>mbs~R<==aAm<8Q&XrN*AurPFw0fW$mcT98>k3k5iK**~u% z`MXm7ew3zTwLTt4e*|0XKep#}<&`#2Lee~_p4l(sdr(qqUtRCTJQMcA6|f!4A3z3m z?4Q?35wiF5(N}Hy2n5s-y;{Wf{`t%Hwa8hQ9+*b$ZZL|EI_xBn^L*dcxFLG|pn|0ms}hJgS8 literal 0 HcmV?d00001 diff --git a/programs/p311/main.c b/programs/p311/main.c new file mode 100644 index 0000000..4dbedd8 --- /dev/null +++ b/programs/p311/main.c @@ -0,0 +1,20 @@ +#include + +int main(void) { + int a, b; + + printf("Int A: "); + scanf("%d", &a); + printf("Int B: "); + scanf("%d", &b); + + int diff = a - b; + + if (diff >= 11 || diff <= -11) { + printf("Difference is greater than or equal to 11.\n"); + } else { + printf("Difference is less than or equal to 10.\n"); + } + + return 0; +} diff --git a/section/introduction.tex b/section/introduction.tex index 3386076..ff9cc1c 100644 --- a/section/introduction.tex +++ b/section/introduction.tex @@ -1,70 +1,12 @@ \section{はじめに} -Start Writing! +\subsection{実行環境} -Use lualatex + biber to compile. +この課題のプログラムは以下の環境で動作することが確認されている: -Test Bib\cite{example} - -いろはにほへと ちりぬるを - -{\gtfamily \sffamily \LaTeX で自由な組版を。} - -{\gtfamily \sffamily Write freely with \LaTeX{}.} - -{\ttfamily LaTeX shall be free forever!} - -\noindent -この行のテキストは四十二字です。ああああああああああああああああああああああああああいいいい - -\defaultlistingstyle - -\begin{lstlisting}[language=C, caption=Basic Hello World] -#include - -int square(int n) { - return n*n; -} - -int main(int argc, char** argv) { - char* msg = "Hello World"; - int x = 3; - int y = square(x); - printf("%s\n", msg); - printf("f(x) = x^2; x: %d, y: %d\n", x, y); - return 0; -} -\end{lstlisting} - -\begin{displaymath} - \int_{a}^{b} f(x) \,dx = F(b)-F(a) -\end{displaymath} - \begin{itemize} - \item C - \item Python - \item Javascript - \item Rust - \item Haskell + \item OS: NixOS 25.05 (Warbler) + \item CPU アーキテクチャ: \texttt{x86\_64} + \item C コンパイラ: \texttt{gcc バージョン 14.2.1 20250322 (GCC)} + \item C コンパイラオプション: \texttt{-Wall <ソースコード名> -o <実行ファイル名>} \end{itemize} - -\begin{enumerate} - \item lualatex .tex - \item biber - \item lualatex .tex - \item lualatex .tex -\end{enumerate} - -\newpage - -\section{Section} - -section - -\subsection{Sub Section} - -sub section - -\paragraph{Paragraph} - -paragraph