Différences entre versions de « C algo td4 »
Ligne 69 : | Ligne 69 : | ||
</div> | </div> | ||
= Exercice 2 = | = Exercice 2 = | ||
+ | |||
+ | Écrire un programme permettant de manipuler des polynômes. Un polynôme de degré d peut s’écrire sous la forme : | ||
+ | |||
+ | <center> | ||
+ | <math>P(X) = c_0.X^0 + c_1.X^1 + c_2.X^2 + \cdots + c_d.X^d \,</math> | ||
+ | </center> | ||
+ | |||
+ | On limitera le degré de nos polynômes à la valeur 10 et nous considérerons seulement les polynômes dans <math>\N</math>. | ||
+ | |||
+ | == Question 1 == | ||
+ | Écrire un programme permettant la saisie des coefficients d’un polynôme de degré d. | ||
+ | == Question 2 == | ||
+ | Ajouter des instructions permettant l’affichage à l’écran un polynôme de degré d. | ||
+ | == Question 3 == | ||
+ | Ajouter des instructions permettant d’effectuer la somme de deux polynômes de degrés au plus d. | ||
+ | == Question 4 == | ||
+ | Ajouter des instructions permettant d’évaluer un polynôme pour une valeur x particulière. |
Version du 12 mars 2014 à 13:29
Exercice 1
Une matrice de Toeplitz (du nom du mathématicien allemand Otto Toeplitz 1881-1940) est une matrice dont les coefficients sur une diagonale descendant de gauche à droite sont les mêmes.
Par exemple, la matrice suivante est une matrice de Toeplitz :
On souhaite écrire un programme qui permette de créer et d’afficher des matrices de Toeplitz. Ce programme devra effectuer les opérations suivantes :
- Demander à l’utilisateur la saisie d’un nombre de lignes et d’un nombre de colonnes ;
- Demander à l’utilisateur la saisie d’une séquence d’initialisation ;
- Générer la matrice correspondante ;
- Afficher cette matrice.
Faire une analyse du sujet en décrivant les fonctionnalités du programme en langage naturel ou sous forme d’algorigramme et écrivez le en C.
Afficher la solution:
#include <stdio.h>
#include <stdlib.h>
int main(void) {
int ligne, colonne, i, j;
/* Récupération des paramètres de la matrice */
printf("Combien de lignes : ");
scanf("%d", &ligne);
printf("Combien de colonnes : ");
scanf("%d", &colonne);
/* Déduction des paramètres de la séquence d'initialisation */
int seq_size = ligne + colonne - 1, sequence[seq_size];
int mat[ligne][colonne];
printf("\n");
for (i = 0; i < seq_size; i++) {
printf("Rentrez la valeur de l'index %d : ", i + 1);
scanf("%d", &sequence[i]);
}
/* Construction de la matrice */
for (i = 0; i < ligne; i++) {
for (j = 0; j < colonne; j++) {
if (i == 0) {
mat[i][j] = sequence[j];
} else {
if (j == 0) {
mat[i][j] = sequence[colonne + i - 1];
} else {
mat[i][j] = mat[i - 1][j - 1];
}
}
}
}
/* Affichage de la matrice */
for (i = 0; i < ligne; i++) {
printf("|");
for (j = 0; j < colonne; j++) {
printf("%d", mat[i][j]);
if (j < colonne - 1) {
printf(",");
}
}
printf("|\n");
}
return EXIT_SUCCESS;;
}
Exercice 2
Écrire un programme permettant de manipuler des polynômes. Un polynôme de degré d peut s’écrire sous la forme :
On limitera le degré de nos polynômes à la valeur 10 et nous considérerons seulement les polynômes dans .
Question 1
Écrire un programme permettant la saisie des coefficients d’un polynôme de degré d.
Question 2
Ajouter des instructions permettant l’affichage à l’écran un polynôme de degré d.
Question 3
Ajouter des instructions permettant d’effectuer la somme de deux polynômes de degrés au plus d.
Question 4
Ajouter des instructions permettant d’évaluer un polynôme pour une valeur x particulière.