Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <time.h>
- #define FALSE 0
- #define TRUE 1
- #define MAX 49
- #define TAILLE 6
- /*---------------------------------------------------------------------------Question 1-----------------------------------------------------------------------------------------*/
- int ajouter_tab(int tab[] , int *n , int val)
- {
- int i;
- for ( i = 0 ; i < *n && tab[i] < val ; i++)
- {
- if (tab[i] == val)
- {
- return FALSE;
- }
- }
- int j;
- for( j = *n ; j >= i ; j--)
- {
- tab[j] = tab[j-1];
- }
- tab[i] = val;
- *n++;
- return TRUE;
- }
- /*---------------------------------------------------------------------------Question 2-----------------------------------------------------------------------------------------*/
- void Tri_Croissant(int tab[] , int taille)
- {
- int i;
- int j;
- int temp;
- for ( i = 0 ; i < taille ; i++)
- {
- for(j = i + 1 ; j < taille ; j++)
- {
- if(tab[i] > tab[j])
- {
- temp = tab[i];
- tab[i] = tab[j];
- tab[j] = temp;
- }
- }
- }
- }
- void init(int tab[], int taille)
- {
- srand(time(NULL));
- int i;
- int j;
- int trv;
- for ( i = 0 ; i < taille ; i++)
- {
- do
- {
- tab[i] = rand() % (MAX + 1);
- trv = 0;
- for ( j = 0 ; j < i ; j++ )
- {
- if(tab[i] == tab[j])
- {
- trv = 1;
- }
- }
- } while (trv);
- }
- Tri_Croissant(tab,taille);
- }
- /*---------------------------------------------------------------------------Question 3-----------------------------------------------------------------------------------------*/
- void lire_tab(int tab[] , int taille)
- {
- int i;
- int j;
- int trv;
- for ( i = 0 ; i < taille ; i++)
- {
- do
- {
- trv = 0;
- printf("saisisr la %d valeur du tableau : \n", i+1);
- if(scanf("%d",&tab[i]) !=1 )
- {
- printf("Erreur a la saisi \n");
- exit(1);
- }
- else
- {
- for(j = 0 ; j < taille ; j++)
- {
- if(tab[i] == tab[j])
- {
- trv = 1 ;
- }
- }
- }
- } while (trv && (tab[i] < 1 || tab[i] > 49) );
- }
- Tri_Croissant(tab,taille);
- }
- /*-----------------------------------------------------Question 4-----------------------------------------------------------------------------------------*/
- int compare_tab(int tab1[] , int tab2[] , int n)
- {
- Tri_Croissant(tab1,n);
- Tri_Croissant(tab2,n);
- int i;
- for( i = 0 ; i < n ; i++)
- {
- if(tab1[i] != tab2[i])
- {
- return FALSE;
- }
- }
- return TRUE;
- }
- void affiche_tab(int tab[] , int taille)
- {
- int i;
- for( i = 0 ; i < taille ; i++)
- {
- printf("%d\t",tab[i]);
- }
- printf("\n");
- }
- int main(void)
- {
- int tab1[TAILLE];
- int tab2[TAILLE];
- /*Génération d'un tableau de 6 case aléatoire entre [1;49] */
- init(tab1,TAILLE);
- affiche_tab(tab1,TAILLE);
- /*Remplissage d'un second tableau par l'ulitilsateur entre [1;49]*/
- lire_tab(tab2,TAILLE);
- affiche_tab(tab2,TAILLE);
- /*Comparaison des 2 tableaux*/
- int a = compare_tab(tab1,tab2,TAILLE);
- if(a)
- {
- printf("TRUE \n");
- }
- else
- {
- printf("FALSE \n");
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement