Guest User

Untitled

a guest
Mar 17th, 2018
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.49 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdio.h>
  3. #include <string.h>
  4.  
  5. void comprendre(char verbe[], char objet[]);
  6. void interpreter(char ordre[], char *verbe, char *objet);
  7. void saisie(char *ordre);
  8. char renomme(char *objet);
  9.  
  10. //----------------------------------------------------------------------------------------------------------------
  11.  
  12. void comprendre(char verbe[], char objet[])     // FONCTION DE COMPRÉHENSION
  13. {
  14. int i;
  15. char nom[20]={0};
  16. if(strstr(verbe, "tuer")!=NULL)         // TUER
  17.   printf("Crèves %s !!!!\n\n", objet);         // à terme on appellera la fonction tuer
  18. if(strstr(verbe, "violer")!=NULL)       // VIOLER
  19.   printf("Tu la sens %s ?!! Hein ?! Tu la sens ?!!!!!\n\n", objet);
  20. if(strstr(verbe, "parler")!=NULL)       // PARLER
  21.   printf("Putain... J'parle vraiment avec n'importe qui. Hein %s ?\n\n", objet);
  22. }
  23.  
  24. //----------------------------------------------------------------------------------------------------------------
  25.  
  26. void saisie(char *ordre)    // FONCTION DE SAISIE
  27. {
  28. gets(ordre);        // gets à remplacer car dangereuse (mais gère les espaces)
  29. }
  30.  
  31. //----------------------------------------------------------------------------------------------------------------
  32.  
  33. void interpreter(char ordre[], char *verbe, char *objet)    // FONCTION DE INTERPRÉTATION
  34. {
  35. int i, j=0;
  36. char sav[20]={0};
  37.  
  38. for(i=0;ordre[i]!=' ';i++)      // tant qu'on ne trouve pas d'espace on continu
  39.    *(verbe+i)=ordre[i];         // à copier ordre dans verbe
  40. for(i++;ordre[i]!='\0';i++,j++)     // ensuite on copie la suite de ordre
  41.    *(objet+j)=ordre[i];         // dans objet jusqu'à la fin de la chaine
  42. if(strchr(objet, 'à')!=NULL)       // si "à " au début de "objet" on le supprime
  43.   {
  44.   strcpy(sav, objet);           // on sauve objet dans sav
  45.   for(i=0;i<20;i++)         // on remplit objet de caractère null
  46.      *(objet+i)='\0';
  47.   for(i=3;sav[i]!='\0';i++)     // ensuite on copie sav dans objet à partir du 3ème caractère
  48.      *(objet+(i-3))=sav[i];     // jusqu'au caractère null (de sav)
  49.   }
  50. }
  51.  
  52. //----------------------------------------------------------------------------------------------------------------
  53.  
  54. void main()                         // FONCTION MAIN
  55. {
  56. char ordre[30]={0}, verbe[20]={0}, objet[20]={0};
  57.  
  58. saisie(ordre);                      // on entre l'ordre
  59. interpreter(ordre, verbe, objet);           // on interprète l'ordre
  60. printf("\nverbe : %s\nobjet : %s\n\n", verbe, objet);   // on affiche
  61. comprendre(verbe, objet);               // on appelle comprendre
  62. }
  63.  
  64. //----------------------------------------------------------------------------------------------------------------
Add Comment
Please, Sign In to add comment