Vous êtes sur la page 1sur 29

Initiation à la programmation

ANDRIAMAROZAKANIAINA Tahiry

22 octobre 2018
ANDRIAMAROZAKANIAINA Tahiry Initiation à la programmation 22 octobre 2018 2 / 29
Introduction

C'est quoi un programme ?

Un programme est une suite de procédure qui permet de traiter ou


résoudre un problème donné.
Le code (ensemble d`instruction) est écrit dans un langage de
programmation.
Traitement automatique en fonction des données (ou paramètres)
entrés par l`utilisateur.
L`exécution peut renvoyer un ou plusieurs résultats.

ANDRIAMAROZAKANIAINA Tahiry Initiation à la programmation 22 octobre 2018 3 / 29


Introduction

Outils et environnement de programmation

Le code du programme peut être créer avec un simple éditeur de texte.


Les commandes/instructions sont écrites les unes à la suite des autres
(de haut en bas).
Pour convertir le chier source en chier exécutable (binaire), on a
besoin d`un logiciel appelé compilateur.

ANDRIAMAROZAKANIAINA Tahiry Initiation à la programmation 22 octobre 2018 4 / 29


Introduction

Outils et environnement de programmation

Le code du programme peut être créer avec un simple éditeur de texte.


Les commandes/instructions sont écrites les unes à la suite des autres
(de haut en bas).
Pour convertir le chier source en chier exécutable (binaire), on a
besoin d`un logiciel appelé compilateur.
Les instructions dans le programme doivent être traduites en langage
machine avant l`exécution

ANDRIAMAROZAKANIAINA Tahiry Initiation à la programmation 22 octobre 2018 5 / 29


Langage C

Initiation en langage C

Structure d`un programme en C


Variables et constantes
Fonctions élémentaires
Instructions de contrôle
Gestion des mémoires

ANDRIAMAROZAKANIAINA Tahiry Initiation à la programmation 22 octobre 2018 6 / 29


Langage C

Structure d'un programme C

#include<stdio.h> //Directive de preprocesseur

int main() //Fonction principale


{
printf ("Hello World !"); //Affiche 'Hello world!'
return 0;
}

ANDRIAMAROZAKANIAINA Tahiry Initiation à la programmation 22 octobre 2018 7 / 29


Langage C

Structure d'un programme C

Le préprocesseur eectue un prétraitement du programme source


avant qu'il soit compilé.
Ce préprocesseur exécute des instructions particulières appelées
directives. Ces directives sont identiées par le caractère # en tête.
Inclusion de chiers
#include <nom-de-chier> /* répertoire standard */
stdio.h : Pour le traitement des données en entrée et sortie ( achage,
récupération des données,. . . )
math.h pour l'utilisation des fonctions mathématiques
#include<stdio.h> inclut déjà le code pour l`utilisation de la fonction
printf()

ANDRIAMAROZAKANIAINA Tahiry Initiation à la programmation 22 octobre 2018 8 / 29


Langage C

Variable et constante

Une variable est un élément d`un programme qui permet de mémoriser


des valeurs
Une variable doit avoir un nom qui ne contient pas de caractères
spéciaux ni d`espace, sauf _
Le nom d`une variable peut être composé de caractères
alpha-numérique [A-z] ou [0-9] mais ne doit pas commencer par un
nombre
Chaque variable doit être déclarée avant toutes utilisations
Le type des données à stocker dans chaque variable doit être déni au
moment de la déclaration, pour réserver un espace mémoire
compatible aux données

ANDRIAMAROZAKANIAINA Tahiry Initiation à la programmation 22 octobre 2018 9 / 29


Langage C

Utilisation des variables

Syntaxe de la déclaration de variable : type nomVariable ;


ex : int n ; // déclaration de variable qui va contenir un entier
Une variable peut être initialiser lors de la déclaration ex : int n = 0 ;
Une constante est un élément qui ne change pas de valeur
Syntaxe : #dene PI 3.14

ANDRIAMAROZAKANIAINA Tahiry Initiation à la programmation 22 octobre 2018 10 / 29


Langage C

Type de données

Les types de base utilisés en C sont :


int : pour un les nombres entiers
short : pour les entiers courts
long : pour les entiers long
oat : pour les nombres réels
double : réels long
char : pour les caractères

ANDRIAMAROZAKANIAINA Tahiry Initiation à la programmation 22 octobre 2018 11 / 29


Langage C

Aectation

L`aectation est une opération qui consiste à attribuer une valeur à


une variable
Syntaxe : Variable = Valeur ou opération ;

ANDRIAMAROZAKANIAINA Tahiry Initiation à la programmation 22 octobre 2018 12 / 29


Langage C

Achage : printf()

printf( " %format de l'achage " , var) permet d'acher la valeur de


la variable
printf( " chaîne " ) permet d'acher la chaîne de caractères qui se
trouve entre " "

ANDRIAMAROZAKANIAINA Tahiry Initiation à la programmation 22 octobre 2018 13 / 29


Langage C

Exemple 1

#include<stdio.h>
#define PI 3.14159
int main() //Fonction principale
{
int a=1, b=2;
float r= 7.45;
printf( " a vaut :%d et b vaut:%d \n " , a, b); //a vaut 1

printf( " le rayon =%f \n " ,r);

printf ("Valeur de PI: %f \n", PI);


return 0;
}

ANDRIAMAROZAKANIAINA Tahiry Initiation à la programmation 22 octobre 2018 14 / 29


Langage C

Format (typage) de variable

%f : réel (oat)
%d : entier (int)
%c : caractère (char)
%lf : double
%s : chaîne de caractères
%e : réel en notation scientique
%.2f : réel avec 2 chires après virgule

ANDRIAMAROZAKANIAINA Tahiry Initiation à la programmation 22 octobre 2018 15 / 29


Langage C

Exemple 2

/*Exemple d'affectation*/
#include<stdio.h>
int main()
{
float a,b,c,d;
a=6;
c=a;
d=8;
c=3;
a=c;
printf( "a= %f c=%f b=% d=%f \n" , a,c,b,d);
return 0;
}

ANDRIAMAROZAKANIAINA Tahiry Initiation à la programmation 22 octobre 2018 16 / 29


Langage C

Récupération de valeur :scanf()

Syntaxe : scanf("%d",&n) ;
lit la valeur tapée par l'utilisateur au clavier et elle la stocke dans la
variable n.
Le premier argument est une chaîne de caractères qui donne le format
de la lecture. Cette chaîne ne peut contenir que des formats, pas de
messages.
Rem : noter la présence du caractère & devant n (adresse associée à la
variable n) et ce n'est pas équivaut à scanf("%d", n) ;

ANDRIAMAROZAKANIAINA Tahiry Initiation à la programmation 22 octobre 2018 17 / 29


Langage C

Opérateurs de base

+, -, *, / opérateurs arithmétique de base


% reste d'une division entière
== test d'égalité
!= test de diérence
! négation
|| ou logique pour évaluer une expression
&& et logique pour évaluer une expression
Test de comparaison (inférieur, supérieur, inférieur ou égal...)

ANDRIAMAROZAKANIAINA Tahiry Initiation à la programmation 22 octobre 2018 18 / 29


Langage C

Exemple

/* Calcul surface d'un rectangle*/


#include<stdio.h>
int main()
{
float a,b,s;

printf("Entrer la valeur de a (longueur):");


scanf("%f",&a);
printf("Entrer la valeur de b (largeur):");
scanf("%f",&b);
s=a*b;
printf("Surface=%f\n",s);
return 0;
}

ANDRIAMAROZAKANIAINA Tahiry Initiation à la programmation 22 octobre 2018 19 / 29


Langage C

Instruction

Une expression suivie d'un point-virgule est appelée instruction.


Exemple : c=a+b ;
Lorsque l'on veut regrouper plusieurs instructions, on peut créer ce
que l'on appelle un bloc, c'est-à-dire un ensemble d'instructions
(suivies respectivement par des points-virgules) et comprises entre les
accolades { et }

ANDRIAMAROZAKANIAINA Tahiry Initiation à la programmation 22 octobre 2018 20 / 29


Langage C

Structure de contrôle

Structure conditionnelle : instructions qui permettent de tester si une


condition est vraie ou non
Trois types de test :
Instruction if. . . .(SI)
Instruction if. . . .else (SI. . . .SINON)
Instruction switch. . . .case

ANDRIAMAROZAKANIAINA Tahiry Initiation à la programmation 22 octobre 2018 21 / 29


Langage C

if

if est la structure de test la plus basique, on la retrouve dans tous les


langages (avec une syntaxe diérente. . . ) Elle permet d'exécuter une
série d'instructions si jamais une condition est réalisée.
Syntaxe :
if (condition réalisée)
{
//liste d'instructions ;
}

ANDRIAMAROZAKANIAINA Tahiry Initiation à la programmation 22 octobre 2018 22 / 29


Langage C

Exemple test if

#include<stdio.h>
int main()
{
int n;

printf("Entrer la valeur de n:");


scanf("%d",&n);
if(n%2==0)
{
printf("n est un nombre pair\n");
}
printf("n vaut %d\n",n);
return 0;
}

ANDRIAMAROZAKANIAINA Tahiry Initiation à la programmation 22 octobre 2018 23 / 29


Langage C

if

La condition doit se trouver entre parenthèses


Il est possible de dénir plusieurs conditions à remplir avec les
opérateurs ET et OU (&& et ||)
if ((condition1)&&(condition2))
if ((condition1)||(condition2))
S'il n'y a qu'une instruction, les accolades ne sont pas nécessaires. . .

ANDRIAMAROZAKANIAINA Tahiry Initiation à la programmation 22 octobre 2018 24 / 29


Langage C

if....else

L'expression if ... else permet d'exécuter une autre série d'instructions


en cas de non-réalisation de la condition.
Syntaxe :
if (condition réalisée)
{
//liste d'instructions
} else
{
//autre série d'instructions
}

ANDRIAMAROZAKANIAINA Tahiry Initiation à la programmation 22 octobre 2018 25 / 29


Langage C

Exemple if...else
#include<stdio.h> /* ax+b=0*/
int main()
{
float a,b,x;
printf("Entrer la valeur de a:");
scanf("%f",&a);
printf("Entrer la valeur de b:");
scanf("%f",&b);
if(a==0)
{
printf("Pas de solution\n");
}
else
{
x=-b/a;
printf("Solution: x=%f\n",x);
}
return 0;
ANDRIAMAROZAKANIAINA Tahiry Initiation à la programmation 22 octobre 2018 26 / 29
Langage C

Opérateur conditionnel ternaire

Il est possible de faire un test plus court grâce à la structure suivante :


(condition) ? instruction si vrai : instruction si faux ;
((a==0) ? b=1 : b=0 ;
Remarques :
la condition doit se trouver entre parenthèses
Lorsque la condition est vraie, l'instruction de gauche est exécutée
Lorsque la condition est fausse, l'instruction de droite est exécutée
En plus d'être exécutée, la structure ? : renvoie la valeur résultant de
l'instruction exécutée. c = ((a == 1) ? b=b+1 : b=b-1) ;

ANDRIAMAROZAKANIAINA Tahiry Initiation à la programmation 22 octobre 2018 27 / 29


Langage C

switch....case
switch permet de faire plusieurs tests de valeurs sur le contenu d'une
même variable.
switch (Variable)
{
case Valeur1 :
//Liste d'instructions ;
break ;
case Valeur2 :
//Liste d'instructions ;
break ;
case Valeursn :
//Liste d'instructions ;
break ;
default :
//Liste d'instructions ;
}
ANDRIAMAROZAKANIAINA Tahiry Initiation à la programmation 22 octobre 2018 28 / 29
Langage C

switch....case

Les parenthèses qui suivent le mot clé "switch" indiquent une


expression dont la valeur est testée successivement par chacun des
"case"
Le mot clé "break" indique la sortie de la structure conditionnelle
"default" précède la liste d'instructions qui sera exécutée si
l'expression n'est jamais égale à une des valeurs

ANDRIAMAROZAKANIAINA Tahiry Initiation à la programmation 22 octobre 2018 29 / 29

Vous aimerez peut-être aussi