From 4b8aa8530c1a8d261c3a0433360f23704c238b19 Mon Sep 17 00:00:00 2001 From: lclerel- lclerel- Date: Thu, 19 Mar 2026 18:15:33 +0100 Subject: [PATCH] Exos --- ex0/ft_print_program_name.c | 25 +++++++++++++ ex1/ft_print_params.c | 32 +++++++++++++++++ ex2/ft_rev_params.c | 32 +++++++++++++++++ ex3/ft_sort_params.c | 68 ++++++++++++++++++++++++++++++++++++ ex3/test | Bin 0 -> 12648 bytes 5 files changed, 157 insertions(+) create mode 100644 ex0/ft_print_program_name.c create mode 100644 ex1/ft_print_params.c create mode 100644 ex2/ft_rev_params.c create mode 100644 ex3/ft_sort_params.c create mode 100755 ex3/test diff --git a/ex0/ft_print_program_name.c b/ex0/ft_print_program_name.c new file mode 100644 index 0000000..d219cc1 --- /dev/null +++ b/ex0/ft_print_program_name.c @@ -0,0 +1,25 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_print_program_name.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: lclerel- +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2026/03/19 15:36:50 by lclerel- #+# #+# */ +/* Updated: 2026/03/19 18:05:56 by lclerel- ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include + +int main(int argc, char **argv) +{ + int i; + + (void)argc; + i = 0; + while (argv[0][i] != '\0') + i++; + write(1, argv[0], i); + write(1, "\n", 1); +} diff --git a/ex1/ft_print_params.c b/ex1/ft_print_params.c new file mode 100644 index 0000000..06447d6 --- /dev/null +++ b/ex1/ft_print_params.c @@ -0,0 +1,32 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_print_params.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: lclerel- +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2026/03/19 16:03:11 by lclerel- #+# #+# */ +/* Updated: 2026/03/19 18:05:40 by lclerel- ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include + +int main(int argc, char **argv) +{ + int i; + int len; + + (void)argc; + i = 1; + while (i < argc) + { + len = 0; + while (argv[i][len] != '\0') + len++; + write(1, argv[i], len); + write(1, "\n", 1); + i++; + } + return (0); +} diff --git a/ex2/ft_rev_params.c b/ex2/ft_rev_params.c new file mode 100644 index 0000000..0df0548 --- /dev/null +++ b/ex2/ft_rev_params.c @@ -0,0 +1,32 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_rev_params.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: lclerel- +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2026/03/19 16:09:13 by lclerel- #+# #+# */ +/* Updated: 2026/03/19 18:05:23 by lclerel- ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include + +int main(int argc, char **argv) +{ + int i; + int len; + + (void)argc; + i = argc - 1; + while (i > 0) + { + len = 0; + while (argv[i][len] != '\0') + len++; + write(1, argv[i], len); + write(1, "\n", 1); + i--; + } + return (0); +} diff --git a/ex3/ft_sort_params.c b/ex3/ft_sort_params.c new file mode 100644 index 0000000..27f8d79 --- /dev/null +++ b/ex3/ft_sort_params.c @@ -0,0 +1,68 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_sort_params.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: lclerel- +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2026/03/19 16:47:37 by lclerel- #+# #+# */ +/* Updated: 2026/03/19 18:09:21 by lclerel- ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include + +int ft_strcmp(char *s1, char *s2) +{ + int i; + + i = 0; + while (s1[i] != '\0' && s1[i] == s2[i]) + i++; + return (s1[i] - s2[i]); +} + +void ft_display(int argc, char **argv) +{ + int i; + int len; + + i = 1; + while (i < argc) + { + len = 0; + while (argv[i][len]) + len++; + write(1, argv[i], len); + write(1, "\n", 1); + i++; + } +} + +int main(int argc, char **argv) +{ + int i; + int j; + char *temp; + + if (argc < 2) + return (0); + i = 1; + while (i < argc - 1) + { + j = i + 1; + while (j < argc) + { + if (ft_strcmp(argv[i], argv[j]) > 0) + { + temp = argv[i]; + argv[i] = argv[j]; + argv[j] = temp; + } + j++; + } + i++; + } + ft_display(argc, argv); + return (0); +} diff --git a/ex3/test b/ex3/test new file mode 100755 index 0000000000000000000000000000000000000000..9b401d5f244cf7b1a7e9010d509470b5d7831e86 GIT binary patch literal 12648 zcmeHNeQZ8)QoemZ*ybB_0!1*g~llNV|3CIywDK6K|S$EIrbS5G>hW?*~@+)A;Kq-oX{N z;e#tQSz)==h6PLZ_hsPGr6rBK3%;#-$lpTOuY#@{OS&vFm#e@9UWSexyG6r^A2dy^ zyLssNfz<<~@Dv{n_qa0pFzWf`0z|{zag^x&hQb=~pY) zACxvxf9g(i;-uTF3H@^RU%YLt$XQrI7My(aKl=E^FM^}=%H4YAgPG@H6z3M521I#gYMwvTzy1m;>X`#G zdM174eBc&_dA)ora7!5v+|onS`gmYQSEeg}E)Gsw8yuKhw%-ArE4uOy=xjb?optDl z%2U%$waQbIHD@x@&rC_@V>djR12@P&UgYcP^MN@IWKIV1hW_fRUm;}sg0R5%oc;!f zmcE3|kn{w)OY?LgJfUaKokq(u)wi?RUtsOjDBRsPRt^{qcuU~M{;`RP3(mmC4%|>) zyjNawb+U`pp;sFjCzzzt##{l?gg z@>t+j<>6X@(A0PUF3BYbZZ8BUM}7ew9lU4cb5-ypq5D!PWuTOSQU*#HC}p6Ofl>xa z8Td~#P#2B#H8<8p!?n>!EInL1yt%oyxlv8U)p}_fXP|uiJHC)pRfMo|0o)I`r-;5V z42Upfq^w}lGKPYYn0PK3u}py|hS@ASx;k6ijC!?RZOYXf8i6=46psp7W0LM|Vvk?`xEpa2}h2xii@gB+s?1E!2U>=ZSxx0ON^_ME| zd#++sJh^7e7aBHv9$~Z@5tgO45L?SMSzAW!Ba7`e>+%1g zYpI|AS6oAFq1yVme!#;0H*aU-*!H+J6uJL&k5YTFM1|0(jq4;VowgA7k*p@Unj{Ne zi_OsbjOYKX&+8^!pJBP*7Gf{`AIbP8YIEGUHo*dmMOoM${C^?GGe_~l9~`pHd7Y*9 zHR>n&|4i`z&Q6EV()C5Wqpi*F*#xVm8jr6DmeW2@y|=!}SMT$AHuaccj~=wBqqeE0 zxOTJGSKlyC`_UTFvd7<;@YO%oD0=qzlj&G25*zRgghEbFqIHiy7>mXGBC(>~9Z&ha z!;glWy-m&a9#ySNjikb6B2@?b7IneCNNp@`nQBP%cKaJdZ=2sI+S>h_@1oe=<@esD zyQ2k6ba(n2MQ_0G6_H*z6@(CpMJ(_qy-;16q|t1uP;JtT#zS_DUXKHlb{v?r z=fLE1gzH>f=ytShP#S{1+&3G?=$hg^>(u!f^|36b!_R!rUF`6C;7xiT6tgo){C;}J z6w`T~_$)uI4#)b`U1H`~-y)xwzJ-bc9p&Pqtg|2EQ($My`F%vy0{Zybhzl%nF4*3B z!e=R7#_I{^_cG%;R20~;TI$s#gz;g)Jt75nf#^LeK{$OK4)n|KdB(p96-BJfeaFK1 zF{l(9?}-KQNx&7jyI!u+pjKFl+4&8qC}MT)I~ZpCK~^dSfB(VwHK~8U;P*G3PC2cv#HTk1E5KF6l=?MIj5D5!aa#YJ4wuFjT1`)W<38A9i zU@$c()bL0QY}(RF+C9&j$y6jBD`*(d2SW)Wfoh2;*iFV|vQ%@BuI^wMG`S_zTv&-@ zJYgoS5rSG;J8SVyltJ3}fgL2*!B21~5`rM&;08{r^k;j6oCy_f$04}Ogi3Q2=?m~& z64an&B_n-l3-0LuM#1?t&Pj9g*fLF;pSDu zh|l>GZbYC^fV@7jLE9JCQR46K-(U{Ud=K$G4nEEgu&}gSLi9id*DTD}h_4ZUA1UIx z0>{aGUSB*77^aB%M~Q!w_`EIx6yT^2XMZeNk0mZKn1S}^LbshiM|76KKp0Mtz?kbX?uy!ddS1IoRj}LV3-s3&%eJ3 z;#Wameqlai--Aj%pXV$59qU$BBxM-cI-|bKd#A jfcFLG&Su!>eH(3g!QtQ0ggJY0e$6JEzr{gtG{rvwRZ=W+ literal 0 HcmV?d00001