0% ont trouvé ce document utile (0 vote)
18 vues3 pages

Correction Révision1

Le document présente deux programmes en C. Le premier programme remplit un tableau d'entiers, calcule la moyenne des cases impaires, recherche un entier, ajoute un entier à une position donnée et inverse le tableau. Le second programme remplit un tableau d'entiers impairs, trouve le minimum et le maximum, compte les occurrences d'un entier, supprime la première occurrence d'un entier donné et inverse le tableau en utilisant un deuxième tableau.

Transféré par

hidourimouhib4
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
18 vues3 pages

Correction Révision1

Le document présente deux programmes en C. Le premier programme remplit un tableau d'entiers, calcule la moyenne des cases impaires, recherche un entier, ajoute un entier à une position donnée et inverse le tableau. Le second programme remplit un tableau d'entiers impairs, trouve le minimum et le maximum, compte les occurrences d'un entier, supprime la première occurrence d'un entier donné et inverse le tableau en utilisant un deuxième tableau.

Transféré par

hidourimouhib4
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Test1

Ecrire un programme C qui permet de :


1) remplir un tableau d’entier de taille n < 100 avec des valeurs comprises
entre
10 et 30
2) Calculer et afficher la moyenne des cases impairs
3) Chercher et afficher l’indice d’un entier saisi au clavier . Si on ne trouve
pas
l’entier on doit afficher un message.
4) Ajouter un entier saisi au clavier dans une position donnée(la position saisi
doit être inférieur à la taille du tableau).
5) Inverser le tableau sans utiliser un tableau intermédiaire

Correction
#include <stdio.h>

int main() {
int tableau[100];
int taille, i, sommeImpairs = 0, nbImpairs = 0, valeur, position, indice,
temp;
do{
printf("Entrez la taille du tableau (n < 100) : ");
scanf("%d", &taille);
}while(taille>200 || taillle<0)

// Remplissage du tableau avec des valeurs entre 10 et 30


for (i = 0; i < taille; i++) {
do{
printf(“tapez l’element %de du tableau”,i+1);
scanf(“%d”,&tableau[i]);
}while(tableau[i]<10 || tableau[i]>30);
}

// Calcul de la moyenne des cases impairs


for (i = 0; i < taille; i++) {
if (tableau[i] % 2 != 0) {
sommeImpairs += tableau[i];
nbImpairs++;
}
}
if (nbImpairs == 0) {
printf("Il n'y a pas de valeurs impairs dans le tableau.\n");
} else {
printf("La moyenne des cases impairs est : %f\n", (float)sommeImpairs /
nbImpairs);
}

// Recherche de l'indice d'un entier


printf("Entrez l'entier que vous cherchez : ");
scanf("%d", &valeur);
i=0
while(i<n &&tableau[i]!=valeur){
i++;

if (indice i<n) {
printf("L'entier %d est à l'indice %d.\n", valeur, i);
} else {
printf("L'entier %d n'a pas été trouvé dans le tableau.\n", valeur);
}
// Ajout d'un entier dans une position donnée
printf("Entrez l'entier à ajouter : ");
scanf("%d", &valeur);
printf("Entrez la position où vous voulez ajouter l'entier : ");
scanf("%d", &position);
if (position < 0 || position > taille) {
printf("Position invalide.\n");
} else {
for (i = taille; i > position; i--) {
tableau[i] = tableau[i - 1];
}
tableau[position] = valeur;
taille++;
}

// Inversion du tableau
for (i = 0; i < taille / 2; i++) {
temp = tableau[i];
tableau[i] = tableau[taille - i - 1];
tableau[taille - i - 1] = temp;
}
printf("Le tableau a été inversé avec succès.\n");

return 0;
}

test2
Ecrire un programme C qui permet de :
1) Remplir un tableau d’entier de taille n < 100 avec des valeurs impaires
2) chercher et afficher le minimum et le maximum du tableau
3) Chercher et afficher le nombre d’occurrences d’un entier saisi au clavier.
4) Supprimer la première occurrence d’un entier donné par l’utilisateur
5) Inverser le tableau en utilisant un deuxième tableau

Correction
#include <stdio.h>

int main() {
int tableau[100], taille, i, min, max, valeur, occurrences, indice, temp;

// 1) Remplir un tableau d'entiers de taille n < 100 avec des valeurs


impaires
do{
printf("Entrez la taille du tableau (n < 100) : ");
scanf("%d", &taille);
}while(taille<0 || taille>200);

printf("Entrez les valeurs impaires pour remplir le tableau : \n");


for (i = 0; i < taille; i++) {
do {
printf("Valeur %d : ", i+1);
scanf("%d", &tableau[i]);

} while (tableau[i] % 2 == 0);


}

// 2) Chercher et afficher le minimum et le maximum du tableau


min = max = tableau[0];
for (i = 1; i < taille; i++) {
if (tableau[i] < min) {
min = tableau[i];
}
if (tableau[i] > max) {
max = tableau[i];
}
}
printf("Le minimum du tableau est : %d\n", min);
printf("Le maximum du tableau est : %d\n", max);

// 3) Chercher et afficher le nombre d'occurrences d'un entier saisi au


clavier
printf("Entrez l'entier dont vous voulez chercher le nombre d'occurrences :
");
scanf("%d", &valeur);
occurrences = 0;
for (i = 0; i < taille; i++) {
if (tableau[i] == valeur) {
occurrences++;
}
}
printf("Le nombre d'occurrences de %d dans le tableau est : %d\n", valeur,
occurrences);

// 4) Supprimer la première occurrence d'un entier donné par l'utilisateur


printf("Entrez l'entier que vous voulez supprimer : ");
scanf("%d", &valeur);
i=0;
while(i<n && tablleau[i]!=val)
{
i++;
}
if (i<n) {
for (j= i; j < taille - 1; j++) {
tableau[j] = tableau[j+ 1];
}
taille--;
printf("Première occurrence de %d supprimée avec succès.\n", valeur);
} else {
printf("Entier non trouvé dans le tableau.\n");
}

// 5) Inverser le tableau en utilisant un deuxième tableau


int tableauInverse[100];
for (i = 0; i < taille; i++) {
tableauInverse[i] = tableau[taille - i - 1];
}

printf("Tableau inversé :\n");


for (i = 0; i < taille; i++) {
printf("%d ", tableauInverse[i]);
}
printf("\n");

return 0;
}

Vous aimerez peut-être aussi