Advertisement
Guest User

9exos bon dodo

a guest
Aug 19th, 2018
177
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 11.56 KB | None | 0 0
  1. /* ************************************************************************** */
  2. /*                                                                            */
  3. /*                                                        :::      ::::::::   */
  4. /*   ft_putnbr.c                                        :+:      :+:    :+:   */
  5. /*                                                    +:+ +:+         +:+     */
  6. /*   By: pidecler <marvin@42.fr>                    +#+  +:+       +#+        */
  7. /*                                                +#+#+#+#+#+   +#+           */
  8. /*   Created: 2018/08/04 18:09:42 by pidecler          #+#    #+#             */
  9. /*   Updated: 2018/08/09 16:32:17 by pidecler         ###   ########.fr       */
  10. /*                                                                            */
  11. /* ************************************************************************** */
  12.  
  13. void    ft_putchar(char c);
  14.  
  15. void    ft_putnbr(int nbr)
  16. {
  17.     unsigned int vp;
  18.  
  19.     vp = nbr;
  20.     if (nbr < 0)
  21.     {
  22.         ft_putchar(45);
  23.         vp = -nbr;
  24.     }
  25.     if (vp < 10)
  26.     {
  27.         ft_putchar(vp + '0');
  28.     }
  29.     if (vp > 9)
  30.     {
  31.         ft_putnbr(vp / 10);
  32.         ft_putnbr(vp % 10);
  33.     }
  34. }
  35. /* ************************************************************************** */
  36. /*                                                                            */
  37. /*                                                        :::      ::::::::   */
  38. /*   ft_atoi.c                                          :+:      :+:    :+:   */
  39. /*                                                    +:+ +:+         +:+     */
  40. /*   By: pidecler <marvin@42.fr>                    +#+  +:+       +#+        */
  41. /*                                                +#+#+#+#+#+   +#+           */
  42. /*   Created: 2018/08/02 14:02:33 by pidecler          #+#    #+#             */
  43. /*   Updated: 2018/08/04 18:14:41 by pidecler         ###   ########.fr       */
  44. /*                                                                            */
  45. /* ************************************************************************** */
  46.  
  47. int     ft_nbr(char *str, int i)
  48. {
  49.     int n;
  50.  
  51.     n = 0;
  52.     while (str[i] >= '0' && str[i] <= '9')
  53.     {
  54.         n = n * 10;
  55.         n = n + (str[i] - '0');
  56.         ++i;
  57.     }
  58.     return (n);
  59. }
  60.  
  61. int     ft_atoi(char *str)
  62. {
  63.     int i;
  64.  
  65.     i = 0;
  66.     if (str == 0)
  67.         return (0);
  68.     while (str[i] != '\0')
  69.     {
  70.         if (str[i] == ' ' || (str[i] >= 9 && str[i] <= 13))
  71.             ++i;
  72.         else
  73.         {
  74.             if (str[i] == '-')
  75.                 if (!(str[i + 1] < '0' || str[i + 1] > '9'))
  76.                     return (-(ft_nbr(str, i + 1)));
  77.             if (str[i] == '+')
  78.                 if (!(str[i + 1] < '0' || str[i + 1] > '9'))
  79.                     return (ft_nbr(str, i + 1));
  80.             if (str[i] < '0' || str[i] > '9')
  81.                 return (0);
  82.             if (str[i] >= '0' || str[i] <= '9')
  83.                 return (ft_nbr(str, i));
  84.             ++i;
  85.         }
  86.     }
  87.     return (0);
  88. }
  89. /* ************************************************************************** */
  90. /*                                                                            */
  91. /*                                                        :::      ::::::::   */
  92. /*   ft_strstr.c                                        :+:      :+:    :+:   */
  93. /*                                                    +:+ +:+         +:+     */
  94. /*   By: pidecler <marvin@42.fr>                    +#+  +:+       +#+        */
  95. /*                                                +#+#+#+#+#+   +#+           */
  96. /*   Created: 2018/08/04 18:24:54 by pidecler          #+#    #+#             */
  97. /*   Updated: 2018/08/04 18:30:21 by pidecler         ###   ########.fr       */
  98. /*                                                                            */
  99. /* ************************************************************************** */
  100.  
  101. char    *ft_strstr(char *str, char *to_find)
  102. {
  103.     int i;
  104.     int l;
  105.     int index;
  106.  
  107.     i = 0;
  108.     l = 0;
  109.     index = 0;
  110.     if (to_find[index] == '\0')
  111.         return (str);
  112.     while (to_find[l] != '\0')
  113.         ++l;
  114.     while (str[index] != '\0')
  115.     {
  116.         while ((str[index + i] == to_find[i]) && (to_find != '\0'))
  117.         {
  118.             if ((l - 1) == i)
  119.                 return (&str[index]);
  120.             ++i;
  121.         }
  122.         i = 0;
  123.         ++index;
  124.     }
  125.     return (0);
  126. }
  127. /* ************************************************************************** */
  128. /*                                                                            */
  129. /*                                                        :::      ::::::::   */
  130. /*   ft_strncmp.c                                       :+:      :+:    :+:   */
  131. /*                                                    +:+ +:+         +:+     */
  132. /*   By: pidecler <marvin@42.fr>                    +#+  +:+       +#+        */
  133. /*                                                +#+#+#+#+#+   +#+           */
  134. /*   Created: 2018/08/04 18:34:17 by pidecler          #+#    #+#             */
  135. /*   Updated: 2018/08/04 18:37:42 by pidecler         ###   ########.fr       */
  136. /*                                                                            */
  137. /* ************************************************************************** */
  138.  
  139. int     ft_strncmp(char *s1, char *s2, unsigned int n)
  140. {
  141.     unsigned int    i;
  142.  
  143.     i = 0;
  144.     while (i <= n && (s1[i] != '\0' || s2[i] != '\0'))
  145.     {
  146.         if (s1[i] != s2[i])
  147.         {
  148.             return (s1[i] - s2[i]);
  149.         }
  150.         ++i;
  151.     }
  152.     return (0);
  153. }
  154. /* ************************************************************************** */
  155. /*                                                                            */
  156. /*                                                        :::      ::::::::   */
  157. /*   ft_strcapitalize.c                                 :+:      :+:    :+:   */
  158. /*                                                    +:+ +:+         +:+     */
  159. /*   By: pidecler <marvin@42.fr>                    +#+  +:+       +#+        */
  160. /*                                                +#+#+#+#+#+   +#+           */
  161. /*   Created: 2018/08/04 19:19:33 by pidecler          #+#    #+#             */
  162. /*   Updated: 2018/08/06 16:54:00 by pidecler         ###   ########.fr       */
  163. /*                                                                            */
  164. /* ************************************************************************** */
  165.  
  166. char    *ft_strcapitalize(char *str)
  167. {
  168.     int i;
  169.  
  170.     i = 0;
  171.     while (str[i] != '\0')
  172.     {
  173.         if ((str[i] >= 'a' && str[i] <= 'z') && ((str[i - 1] < 48) || \
  174.                     (str[i - 1] > 57 && str[i - 1] < 65) || \
  175.                     (str[i - 1] > 90 && str[i - 1] < 97) || str[i - 1] > 122))
  176.         {
  177.             str[i] -= 32;
  178.             i++;
  179.         }
  180.         if ((str[i] >= 'A' && str[i] <= 'Z') && (str[i - 1] < 48 || \
  181.                     (str[i - 1] > 57 && str[i - 1] < 65) || \
  182.                     (str[i - 1] > 90 && str[i - 1] < 97) || str[i - 1] > 122))
  183.             i++;
  184.         if (str[i] >= 'A' && str[i] <= 'Z')
  185.         {
  186.             str[i] += 32;
  187.             i++;
  188.         }
  189.         else
  190.             ++i;
  191.     }
  192.     return (str);
  193. }
  194. /* ************************************************************************** */
  195. /*                                                                            */
  196. /*                                                        :::      ::::::::   */
  197. /*   ft_str_is_alpha.c                                  :+:      :+:    :+:   */
  198. /*                                                    +:+ +:+         +:+     */
  199. /*   By: pidecler <marvin@42.fr>                    +#+  +:+       +#+        */
  200. /*                                                +#+#+#+#+#+   +#+           */
  201. /*   Created: 2018/08/04 19:44:59 by pidecler          #+#    #+#             */
  202. /*   Updated: 2018/08/04 20:09:43 by pidecler         ###   ########.fr       */
  203. /*                                                                            */
  204. /* ************************************************************************** */
  205.  
  206. int     fct2(char *str, int i)
  207. {
  208.     if (!('a' <= str[i] && str[i] <= 'z'))
  209.     {
  210.         if (!('A' <= str[i] && str[i] <= 'z'))
  211.             return (0);
  212.     }
  213.     return (1);
  214. }
  215.  
  216. int     ft_str_is_alpha(char *str)
  217. {
  218.     int i;
  219.  
  220.     i = 0;
  221.     if (str[0] == '\0')
  222.         return (1);
  223.     while (str[i] != '\0')
  224.     {
  225.         if (fct2(str, i) == 0)
  226.             return (0);
  227.         i++;
  228.     }
  229.     return (1);
  230. }
  231. /* ************************************************************************** */
  232. /*                                                                            */
  233. /*                                                        :::      ::::::::   */
  234. /*   ft_str_is_numeric.c                                :+:      :+:    :+:   */
  235. /*                                                    +:+ +:+         +:+     */
  236. /*   By: pidecler <marvin@42.fr>                    +#+  +:+       +#+        */
  237. /*                                                +#+#+#+#+#+   +#+           */
  238. /*   Created: 2018/08/04 20:11:41 by pidecler          #+#    #+#             */
  239. /*   Updated: 2018/08/08 18:28:07 by pidecler         ###   ########.fr       */
  240. /*                                                                            */
  241. /* ************************************************************************** */
  242.  
  243. int     ft_is_alpha(char c)
  244. {
  245.     if (c >= 'a' && c <= 'z')
  246.         return (0);
  247.     if (c >= 'A' && c <= 'Z')
  248.         return (0);
  249.     if (c >= '0' && c <= '9')
  250.         return (1);
  251.     return (0);
  252. }
  253.  
  254. int     ft_str_is_numeric(char *str)
  255. {
  256.     int i;
  257.  
  258.     i = 0;
  259.     if (str[0] == '\0')
  260.         return (1);
  261.     while (str[i])
  262.     {
  263.         if (ft_is_alpha(str[i]) == 0)
  264.             return (0);
  265.         i++;
  266.     }
  267.     return (1);
  268. }
  269. /* ************************************************************************** */
  270. /*                                                                            */
  271. /*                                                        :::      ::::::::   */
  272. /*   ft_str_is_lowercase.c                              :+:      :+:    :+:   */
  273. /*                                                    +:+ +:+         +:+     */
  274. /*   By: pidecler <marvin@42.fr>                    +#+  +:+       +#+        */
  275. /*                                                +#+#+#+#+#+   +#+           */
  276. /*   Created: 2018/08/04 20:40:56 by pidecler          #+#    #+#             */
  277. /*   Updated: 2018/08/04 21:12:57 by pidecler         ###   ########.fr       */
  278. /*                                                                            */
  279. /* ************************************************************************** */
  280.  
  281. int     ft_is_alpha(char c)
  282. {
  283.     if (c >= 'a' && c <= 'z')
  284.         return (1);
  285.     if (c >= 'A' && c <= 'Z')
  286.         return (0);
  287.     if (c >= '0' && c <= '9')
  288.         return (0);
  289.     return (0);
  290. }
  291.  
  292. int     ft_str_is_lowercase(char *str)
  293. {
  294.     int i;
  295.  
  296.     i = 0;
  297.     if (str[0] == '\0')
  298.         return (1);
  299.     while (str[i])
  300.     {
  301.         if (ft_is_alpha(str[i]) == 0)
  302.             return (0);
  303.         i++;
  304.     }
  305.     return (1);
  306. }
  307. /* ************************************************************************** */
  308. /*                                                                            */
  309. /*                                                        :::      ::::::::   */
  310. /*   ft_str_is_uppercase.c                              :+:      :+:    :+:   */
  311. /*                                                    +:+ +:+         +:+     */
  312. /*   By: pidecler <marvin@42.fr>                    +#+  +:+       +#+        */
  313. /*                                                +#+#+#+#+#+   +#+           */
  314. /*   Created: 2018/08/05 12:39:51 by pidecler          #+#    #+#             */
  315. /*   Updated: 2018/08/09 12:18:51 by pidecler         ###   ########.fr       */
  316. /*                                                                            */
  317. /* ************************************************************************** */
  318.  
  319. int     ft_is_alpha(char c)
  320. {
  321.     if (c >= 'a' && c <= 'z')
  322.         return (0);
  323.     if (c >= 'A' && c <= 'Z')
  324.         return (1);
  325.     if (c >= '0' && c <= '9')
  326.         return (0);
  327.     return (0);
  328. }
  329.  
  330. int     ft_is_uppercase(char *str)
  331. {
  332.     int i;
  333.  
  334.     i = 0;
  335.     if (str[0] == '\0')
  336.         return (1);
  337.     while (str[i])
  338.     {
  339.         if (ft_is_alpha(str[i]) == 0)
  340.             return (0);
  341.         i++;
  342.     }
  343.     return (1);
  344. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement