124 lines
2.1 KiB
C
124 lines
2.1 KiB
C
#include <stdio.h>
|
|
#include <stdlib.h>
|
|
|
|
|
|
//exercice 1
|
|
|
|
int racineCarree(int a){
|
|
int i =0 ;
|
|
while (i <a){
|
|
if (i*i==a ){
|
|
return i;
|
|
}
|
|
i=i +1 ;
|
|
}
|
|
return -1 ;
|
|
}
|
|
|
|
|
|
int* racineCarreeTab(int tab[],int lenght){
|
|
int newTab[lenght];
|
|
int valeur=0;
|
|
int i;
|
|
for (i=0;i<lenght;i++){
|
|
valeur=racineCarree(tab[i]);
|
|
newTab[i]=valeur;
|
|
}
|
|
|
|
}
|
|
|
|
int* creatTab(int newTab[]){
|
|
int i =0;
|
|
for (i=0;i<100000;i++){
|
|
newTab[i]=1000000;
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
//-------------------------------------------------------------
|
|
|
|
|
|
//exercice 3
|
|
|
|
|
|
|
|
int somme(int tab[],int lenght){
|
|
int somme =0;
|
|
for(int i =0 ; i<lenght;i++){
|
|
somme =+ tab[i];
|
|
}
|
|
return somme;
|
|
}
|
|
|
|
|
|
|
|
|
|
int conditionTri(int tab[],int lenght){
|
|
int valeur;
|
|
int i;
|
|
for (i=0;i<lenght;i++){
|
|
if (tab[i]==-1){
|
|
valeur=+1;
|
|
}
|
|
|
|
}
|
|
return valeur;
|
|
}
|
|
|
|
|
|
int* TriSpecial(int* tab,int lenght){
|
|
int newTab[lenght];
|
|
int condition =conditionTri(tab,lenght);
|
|
int i=0;
|
|
if (condition%2==1){
|
|
for (i;i<lenght;i++){
|
|
if(i%2==1){
|
|
newTab[i]=somme(racineCarreeTab(tab,lenght),lenght)*tab[i];
|
|
}else{
|
|
newTab[i]=racineCarree(tab[i]);
|
|
}
|
|
printf("%d ," , newTab[i]);
|
|
}
|
|
}else{
|
|
for (i;i<lenght;i++){
|
|
if(i%2==1){
|
|
newTab[i]=somme(tab,lenght)*tab[i];
|
|
}else{
|
|
newTab[i]=tab[i];
|
|
}
|
|
printf("%d ," , newTab[i]);
|
|
}
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
int main(void){
|
|
int nb=7;
|
|
int i=0;
|
|
int lenght =100000;
|
|
int tabTest[lenght];
|
|
int tabTest2[]={7 ,25, 9};
|
|
int a = racineCarree(nb);
|
|
creatTab(tabTest);
|
|
racineCarreeTab(tabTest,lenght);
|
|
printf("voici la racine carre de %d est : %d \n", nb,a );
|
|
printf("voici le tableau de racine carre: ");
|
|
for (i=0;i<lenght;i++){
|
|
printf(" %d ",tabTest[i]);
|
|
}
|
|
printf("\n");
|
|
printf("voici le trie : ");
|
|
// TriSpecial(tabTest2,lenght);
|
|
/* for (i=0;i<lenght;i++){
|
|
printf(" %d ,",tabTest2[i]);
|
|
}
|
|
printf("\n");*/
|
|
|
|
}
|
|
|
|
|