void aff_suscomp(int *tab_int, int pow, int pow2, int i) { int j; j = 0; printf("\n\t\t"); aff_equation(tab_int, pow); printf("\n"); printf("\033[01;32mComposant %d: \033[01;37m", i / 2); printf("\t"); if (pow > pow2) while (j++ < pow * 6) printf("="); else while (j++ < pow2 * 6) printf("="); printf("\n"); }
void affichage(float tab[]) { printf("\n%c",201); ligne(12);/*boucle d'affichage double ligne*/ printf("%c\n",187); printf("%c R%csultats: %c\n",186,130,186); printf("%c",200); ligne(12);/*boucle d'affichage double ligne*/ printf("%c",188); printf("\n\nSomme Xi = %f",tab[0]); printf("\nSomme Yi = %f\n",tab[1]); printf("\nMoyenne des Xi = %f",tab[2]); printf("\nMoyenne des Yi = %f\n",tab[3]); printf("\nSomme des (Xi * Yi) = %f",tab[4]); printf("\n\nPente de la droite:=========> a = %f",tab[7]); printf("\nOrdonn%ce %c l'origine:=======> b = %f",130,133,tab[8]); printf("\nCoefficient de corr%clation:=> r = %lf",130,tab[9]); /*Fonction d'affichage de l'equation*/ aff_equation(tab); printf("\n"); getchar(); }
void aff_subcomp(int *tab_int, int pow) { printf("\t\t"); aff_equation(tab_int, pow); printf("\n\n"); }
void main () { int position,choix=-1,choix1=-1,choix1_2=-1,N,i=1; /*Déclaration des variables*/ float Xi[MAX],Yi[MAX],result[10]; float ProduitXiYi[MAX]; float carre_ecart_a_moyenne_Xi[MAX]; float carre_ecart_a_moyenne_Yi[MAX]; int j = 0; while (j < 53) { Xi[j] = data[0].country_nb[j]; Yi[j] = data[8].country_nb[j]; j++; } /*Appel de la fonction d'affichage d'en-tête*/ entete(); /********/ /* MENU */ /********/ while(choix!=0) { titre("Menu Principale:"); printf("\nEntrez le num%cro de l\'op%cration d%csir%ce:\n",130,130,130,130); printf("\n(1) Entrer o%c modifier les donn%ces (Xi et Yi).",151,130); printf("\n(2) D%cterminer l\'%cquation de la droite",130,130); printf("\n(3) Afficher le tableau des valeurs interm%cdiaires.",130); printf("\n(4) Afficher les r%csultats.",130); printf("\n(5) Sauvegadrer les donn%ces dans un fichier.",130); printf("\n(0) Quitter le programme."); printf("\n\n Quel est votre choix? :"); scanf("%d",&choix); switch (choix) { case 1: { choix1=-1;choix1_2=-1; while(choix1!=0) { titre("Menu Donnees:"); printf("\nEntrez le num%cro de l\'op%cration d%csir%ce:\n",130,130,130,130); printf("\n(1) Entrer des nouvelles valeurs."); printf("\n(2) Modiffier les valeurs existantes."); printf("\n(3) Revenir au menu principale."); printf("\n(0) Quitter le programme."); printf("\n\n Quel est votre choix? :"); scanf("%d",&choix1); switch (choix1) { case 1: { titre("Donnees:");/*Fonction d'affichage de titre*/ /*Appel de la fonction d'entrée du nombre d'élement*/ N=nbrelement(); i=1; /*Entree des élements Xi*/ titre("Entree des valeurs de Xi:");/*Fonction d'affichage de titre*/ while (i<(N+1)) { printf("Entrez la valeur de X%d: ",i); scanf("%f",&Xi[i]);i++; }; i=1; /*Entree des élements Yi*/ titre("Entree des valeurs de Yi:");/*Fonction d'affichage de titre*/ while (i<(N+1)) { printf("Entrez la valeur de Y%d: ",i); scanf("%f",&Yi[i]);i++; } printf("\nTappez une touche pour revenir au menu pr%cc%cdant:",130,130); getchar(); getchar(); printf("\n\n"); };break; case 2: { choix1_2=-1; while(choix1_2!=0) { titre("Menu Modiffication Donnees"); printf("\nEntrez le num%cro de l\'op%cration d%csir%ce:\n",130,130,130,130); printf("\n(1) Modifier un %cl%cment des Xi.",130,130); printf("\n(2) Modifier un %cl%cment des Yi.",130,130); printf("\n(3) Revenir au menu pr%cc%cdant.",130,130); printf("\n(4) Revenir au menu principale."); printf("\n(0) Quitter le programme."); printf("\n\n Quel est votre choix? :"); scanf("%d",&choix1_2); switch (choix1_2) { case 1: { titre("Modiffication d'un element des Xi:"); printf("Entrez la position de l\'%cl%cment dans le tableau:",130,130); scanf("%d",&position); printf("\nEntrez la nouvelle valeur de X%d:",position); scanf("%lf",&Xi[position]); printf("\n Modification %cffectu%ce...\n",130,130); };break; case 2: { printf("\n\nEntrez la position de l\'%cl%cment dans le tableau:",130,130); scanf("%d",&position); printf("\nEntrez la nouvelle valeur de Y%d:",position); scanf("%lf",&Yi[position]); printf("\n Modification %cffectu%ce...\n",130,130); };break; case 3:choix1=-1;choix1_2=0;break; case 4:choix1_2=0;choix1=0;choix=-1;break; case 0:choix1=0;choix1_2=0;break; default:;break; } } };break; case 3:choix=-1;choix1=0;break; case 0:choix=0;choix1=0;break; default:printf("\n Entr%ce non valide!");break; } } };break; case 2: { /*Appel de la fonction de regression linéaire*/ regression(Xi,Yi,N,result,ProduitXiYi,carre_ecart_a_moyenne_Xi,carre_ecart_a_moyenne_Yi); printf("\nOp%Cration termin%ce...\n",130,130); /*Affichage de l'éqation et de la corrélation "r"*/ aff_equation(result); printf("\nCoefficient de corr%clation:=> r = %lf\n\n",130,result[9]); printf("Tappez une touche pour revenir au menu pr%cc%cdant:",130,130); getchar(); getchar(); printf("\n\n"); };break; case 3: { /*Affichage du tableau des resultats*/ affich_tab(result,Xi,Yi,ProduitXiYi,carre_ecart_a_moyenne_Xi,carre_ecart_a_moyenne_Yi,N); printf("\nTappez une touche pour revenir au menu pr%cc%cdant:",130,130); getchar(); getchar(); printf("\n\n"); };break; case 4: { /*Affichage des résultats*/ affichage(result); printf("\nTappez une touche pour revenir au menu pr%cc%cdant:",130,130); getchar(); };break; case 5: { fichier(result,Xi,Yi,ProduitXiYi,carre_ecart_a_moyenne_Xi,carre_ecart_a_moyenne_Yi,N); printf("\nTappez une touche pour revenir au menu pr%cc%cdant:",130,130); getchar(); } case 0:;break; default:printf("\nEntree non valide!\n");break; }; } getchar(); }