Différences entre versions de « C algo »

De The Linux Craftsman
Aller à la navigation Aller à la recherche
Ligne 202 : Ligne 202 :
 
}
 
}
 
</source>
 
</source>
 
+
</div>
 
== Exercice 2 ==
 
== Exercice 2 ==
  
Ligne 233 : Ligne 233 :
 
}
 
}
 
</source>
 
</source>
 
+
</div>
 
== Exercice 3 ==
 
== Exercice 3 ==
  
Ligne 265 : Ligne 265 :
 
}
 
}
 
</source>
 
</source>
 +
</div>
 
== Exercice 4==
 
== Exercice 4==
  
Ligne 295 : Ligne 296 :
 
}
 
}
 
</source>
 
</source>
 
+
</div>
 
== Exercice 5 ==
 
== Exercice 5 ==
  
Ligne 322 : Ligne 323 :
 
}
 
}
 
</source>
 
</source>
 
+
</div>
 
== Exercice 6 ==
 
== Exercice 6 ==
  
Ligne 351 : Ligne 352 :
 
}
 
}
 
</source>
 
</source>
 
+
</div>
 
== Exercice 7 ==
 
== Exercice 7 ==
  
Ligne 382 : Ligne 383 :
 
}
 
}
 
</source>
 
</source>
 +
</div>
 
== Exercice 8 ==
 
== Exercice 8 ==
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:700px">
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:700px">
Ligne 406 : Ligne 408 :
 
}
 
}
 
</source>
 
</source>
 
+
</div>
 
== Exercice 9 ==
 
== Exercice 9 ==
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:700px">
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:700px">
Ligne 433 : Ligne 435 :
 
}
 
}
 
</source>
 
</source>
 +
</div>

Version du 26 février 2014 à 18:40

TD1

Exercice 1

Écrire un programme qui demande la saisie d’une lettre de l’alphabet et qui affiche la lettre majuscule correspondante. Il est vivement recommandé d’utiliser les propriétés du codage ASCII.

Afficher la solution:

#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>

int main(void) {
	char c;
	printf("Veuillez entrer une minuscule: ");
	scanf("%c", &c);
	printf("La majuscule correspondante est %c", toupper(c));
	return EXIT_SUCCESS;
}

Exercice 2

Écrire un programme qui convertit un montant en fonction d’un taux de change. Les modalités d’affichage sont les suivantes :

Entrez le montant a convertir : 12
Le montant a convertir est : 12.000000

Entrez le taux de change a appliquer : 2
Le taux de change a appliquer est : 2.000000

Le montant converti est : 24.000000

Afficher la solution:

#include <stdio.h>
#include <stdlib.h>

int main(void) {
	float m, t;
	printf("Entrez le montant a convertir : ");
	scanf("%f", &m);
	printf("Le montant a convertir est :  %f\n\n", m);
	printf("Entrez le taux de change a appliquer :  ");
	scanf("%f", &t);
	printf("Le taux de change a appliquer est :  %f\n\n", t);
	printf("Le montant converti est :  %f", m*t);
	return EXIT_SUCCESS;
}

Exercice 3

Écrire un programme qui permet de calculer l’IMC (Indice de Masse Corporelle) d’une personne adulte selon la formule suivante :

Les modalités d’affichage sont les suivantes :

Entrez votre taille (en metres) : 1.75
Votre taille est : 1.75

Entrez votre poids : 65
Votre poids est : 65.00

Votre IMC est : 21.224489

Afficher la solution:

#include <stdio.h>
#include <stdlib.h>

int main(void) {
	float t, p;
	printf("Entrez votre taille (en metres) :: ");
	scanf("%f", &t);
	printf("Votre taille est :  %f\n\n", t);
	printf("Entrez votre poids :  ");
	scanf("%f", &p);
	printf("Votre poid est :  %f\n\n", p);
	printf("Votre IMC est :  %f", p/(t*t));
	return EXIT_SUCCESS;
}

Exercice 4

Écrire un programme qui demande la somme d’argent souhaitée et détermine si le retrait est autorisé ou non. Le retrait est refusé dans le cas où la somme demandée dépasse 100. Le message sera adapté selon la situation : Retrait accepté ou Retrait refusé.

Exemple :

Bonjour, entrez la somme demandee : 130
La somme demandee est : 130
Retrait refuse

Afficher la solution:

#include <stdio.h>
#include <stdlib.h>

int main(void) {
	float s;
	printf("Bonjour, entrez la somme demandee : ");
	scanf("%f", &s);
	printf("La somme demandee est : %f\n\n", s);
	if (s > 100) {
		printf("Retrait refuse");
		return EXIT_FAILURE;
	}
	printf("Retrait accepté");
	return EXIT_SUCCESS;
}

Exercice 5

Modifier le programme qui demande la saisie d’une lettre de l’alphabet et qui affiche la lettre majuscule correspondante afin qu’il vérifie que le caractère saisi au clavier est bien une lettre minuscule. Dans un second temps, on pourra modifier encore le programme pour que celui-ci affiche la lettre minuscule correspondant à une lettre majuscule qui aurait été saisie.

Afficher la solution:

#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>

int main(void) {
	char c;
	printf("Veuillez entrer une lettre : ");
	scanf("%c", &c);
	if(c >= 'a' && c <= 'z'){
		printf("La majuscule correspondante est %c", toupper(c));
	}else if(c >= 'A' && c <= 'Z'){
		printf("La minuscule correspondante est %c", tolower(c));
	}else{
		printf("Le caractère saisi n'est pas une lettre !");
		return EXIT_FAILURE;
	}
	return EXIT_SUCCESS;
}

Exercice 6

Écrire un programme qui demande la saisie des coefficients dans d’une équation du second degré , et qui indique s’il existe des solutions.

Pour rappel:

Afficher la solution:

#include <stdio.h>
#include <stdlib.h>

int main(void) {
	float a, b, c, delta;
	printf("-- Résolution des equations du second degre -- \n");
	printf("Veuillez entrer la variable a : ");
	scanf("%f", &a);
	printf("Veuillez entrer la variable b : ");
	scanf("%f", &b);
	printf("Veuillez entrer la variable c : ");
	scanf("%f", &c);
	delta = b*b - 4*a*c;
	printf("Delta vaut b*b-4*a*c soit : %f\n", delta);
	if(delta > 0){
		printf("Il y a deux solutions");
	}else if(delta == 0){
		printf("Il y a une solution");
	}else{
		printf("Il n'y a pas de solution dans R");
	}
	return EXIT_SUCCESS;
}

TD2

Exercice 1

Afficher la solution:

int main(){
	int i = 1;
    int tab[5];
    for (i=0; i<5; i++){
        printf("saisir index %d: ",i+1);
        scanf("%d", &tab[i]);
    }
    for (i=0; i<5; i++){
        printf("%d \n", tab[i]);
    }
    return 0;
}

Exercice 2

Afficher la solution:

#include <stdio.h>
#include <stdlib.h>

int main()
{
    printf("TP2A Programme CHANELAW \n ");
    printf("Fichier TP3A.c \n ") ;
    printf("Auteur Chane-law Ahmed ali Belaid \n");
    printf("Groupe 1A \n");
    printf("19/02/2014 \n");
    int a = 1, b = 11, y = 0, z = 0;
    int tab_a[3], tab_b[3];
    do{
       a++;
       b -= 4;
       tab_a[y] = a;
       tab_b[y] = b;
       y++;
    }while (b>=0);
    for(z = 0; z < y; z++){
        printf("a = %d et b = %d\n", tab_a[z], tab_b[z]);
    }
    return 0;
}

Exercice 3

Afficher la solution:

#include <stdio.h>
#include <stdlib.h>

int main()
{
    printf("TP2A Programme CHANELAW \n ");
    printf("Fichier TP3A.c \n ") ;
    printf("Auteur Chane-law Ahmed ali Belaid \n");
    printf("Groupe 1A \n");
    printf("19/02/2014 \n\n");
    int a = 5, b = 2, n = 0, z = 0;
    printf("Entrez la taille du tableau: \n");
    scanf("%d", &n);
    int tab_a[n], tab_b[n];
    for(b = 1; b < n; b++){
       a = a*b;
       tab_a[z] = a;
       tab_b[z] = b;
       z++;
    }
    for(b = 0; b <= z; b++){
        printf("a = %d et b = %d\n", tab_a[b], tab_b[b]);
    }
    return 0;
}

Exercice 4

Afficher la solution:

#include <stdio.h>
#include <stdlib.h>

int main()
{
    printf("TP2A Programme CHANELAW \n ");
    printf("Fichier TP3A.c \n ") ;
    printf("Auteur Chane-law Ahmed ali Belaid \n");
    printf("Groupe 1A \n");
    printf("19/02/2014 \n\n");
    int i = 0, n;
    char x = 'n';
    printf("Ty ve la line ? (O/n) ");
    scanf("%c", &x);
    printf("Combien ty ve ditoile ? ");
    scanf("%d", &n);
    for(i = 0; i < n; i++){
        printf("*");
        if(x == 'O'){
            printf("\n");
        }
    }
    return 0;
}

Exercice 5

Afficher la solution:

#include <stdio.h>
#include <stdlib.h>

int main()
{
    printf("TP2A Programme CHANELAW \n ");
    printf("Fichier TP3A.c \n ") ;
    printf("Auteur Chane-law Ahmed ali Belaid \n");
    printf("Groupe 1A \n");
    printf("19/02/2014 \n\n");
    int a = -1;
    while(a < 0){
        printf("Saisissez un nombre positif : ");
        scanf("%d", &a);
        if(a > 0){
            printf("Le nombre saisi est %d", a);
        }
    }
    return 0;
}

Exercice 6

Afficher la solution:

#include <stdio.h>
#include <stdlib.h>

int main()
{
    printf("TP2A Programme CHANELAW \n ");
    printf("Fichier TP3A.c \n ") ;
    printf("Auteur Chane-law Ahmed ali Belaid \n");
    printf("Groupe 1A \n");
    printf("19/02/2014 \n\n");
    int a = -1;
    printf("Saisissez un nombre positif : ");
    while(a < 0){
        scanf("%d", &a);
        if(a > 0){
            printf("Le nombre saisi est %d", a);
        }else{
            printf("Saisie incorrecte, recommencez votre saisie : ");
        }
    }
    return 0;
}

Exercice 7

Afficher la solution:

#include <stdio.h>
#include <stdlib.h>

int main()
{
    printf("TP2A Programme CHANELAW \n ");
    printf("Fichier TP3A.c \n ") ;
    printf("Auteur Chane-law Ahmed ali Belaid \n");
    printf("Groupe 1A \n");
    printf("19/02/2014 \n\n");
    int a;
    while(a < 10 || a > 20){
        printf("Saisissez un nombre entre 10 et 20 : ");
        scanf("%d", &a);
        if(a > 20){
            printf("Plus petit !\n");
        }else if (a < 10){
            printf("Plus grand !\n");
        }else{
            printf("Toi mettre %d", a);
        }
    }
    return 0;
}

Exercice 8

Afficher la solution:

#include <stdio.h>
#include <stdlib.h>

int main()
{
    printf("TP2A Programme CHANELAW \n ");
    printf("Fichier TP3A.c \n ") ;
    printf("Auteur Chane-law Ahmed ali Belaid \n");
    printf("Groupe 1A \n");
    printf("19/02/2014 \n\n");
    int a, i, res = 0;
    printf("Saisissez un nombre: ");
    scanf("%d", &a);
    for(i = 1; i <= a; i++){
        res += i;
    }
    printf("Le résultat est: %d", res);
    return 0;
}

Exercice 9

Afficher la solution:

#include <stdio.h>
#include <stdlib.h>

int main()
{
    printf("TP2A Programme CHANELAW \n ");
    printf("Fichier TP3A.c \n ") ;
    printf("Auteur Chane-law Ahmed ali Belaid \n");
    printf("Groupe 1A \n");
    printf("19/02/2014 \n\n");
    int a, i, res = 0;
    for(i = 0; i < 5; i++){
        printf("Saisissez le nombre %d: ",i+1);
        scanf("%d", &a);
        if(res < a){
            res = a;
        }
    }
    printf("Le plus grand nombre est: %d", res);
    return 0;
}