• Aucun résultat trouvé

Granet Vincent - Vincent.Granet@univ-cotedazur.fr

N/A
N/A
Protected

Academic year: 2022

Partager "Granet Vincent - Vincent.Granet@univ-cotedazur.fr"

Copied!
12
0
0

Texte intégral

(1)

Algorithmique et Langage C

www.polytech.unice.fr/žvg/index-xidian.html

Granet Vincent - Vincent.Granet@univ-cotedazur.fr

Xi’an - Octobre 2019 - Avril 2020

(2)

Actions élémentaires

(3)

Modèle de programme

D P R

f : DR

1

lecture d’une donnée

2

exécution d’une fonction/procédure prédéfinie

3

écriture d’un résultat

(4)

Lecture d’une donnée

Entrée standard

Identificateur de variable

v a r i a b l e x : réel

{Un réel est disponible sur l'entrée standard}

lire(x)

{le réel lu est en mémoire centrale et le nom x permet de le désigner}

(5)

Exécution d’une fonction prédéfinie

paramètre effectif « donnée » appel de fonction

{le nom x désigne un réel en mémoire}

cos(x)

{l'appel de cos(x) a calculé le cosinus de x}

un résultat unique

il est dans la notation de l’appel de la fonction

(6)

Exécution d’une procédure

si 0 ou plusieurs résultats paramètres effectifs « résultat »

{le nom x désigne un réel en mémoire}

p(x, y)

{l'appel de la procédure p sur la donnée x a calculé un résultat désigné par l'identificateur de variable y}

(7)

Écriture d’un résultat

Sortie standard

Symétrique de la lecture

{le nom y désigne un réel en mémoire}

écrire(y)

{la valeur désignée par y est écrite sur la sortie standard}

(8)

Affectation

presque dans tous les langages notre opérateur algorithmique ← v ←e

v a r i a b l e y : réel y ← 3.14159265

{l'identificateur y≈π} y ← cos(x)

{−16y61}

(9)

Axiomatique de Hoare

Affirmations/Assertions

Antécédent/Conséquent (pré/post conditions)

{ P }

E

{Q }

Preuve de programme Règles de déduction

Affectation :

{ P }

x ←e

{Q = Pex}

Q est égale à P dans laquelle toutes les apparitions libres de e ont été remplacées par x

{x=9 x+1=9+1=10}

y ←x+1

{y=10}

{x=9 x+1=9+1=10}

x ←x+1

{x=10}

(10)

Algorithme complet du calcul d’un cosinus

v a r i a b l e x, y : réel

{Un réel est disponible sur l'entrée standard}

lire(x)

{le réel lu est en mémoire centrale et le nom x permet de le désigner}

y ← cos(x)

{la variable y désigne le cosinus de x et −16y61} écrire(y)

{le cosinus de x est écrit sur la sortie standard}

(11)

/ Ce programme C écrit sur la sortie standard le cosinus d'un réel lu sur l'entrée standard.

Auteur : V. Granet (vg@unice.fr) /

#i n c l u d e <stdio.h>

#i n c l u d e <stdlib.h>

#i n c l u d e <math.h>

i n t main( v o i d) { d o u b l e x, y;

/ un réel est disponible sur l'ES /

scanf("%lf", &x);

/ le réel lu est en mémoire centrale et le nom x permet de le désigner /

y = cos(x);

/ la variable y désigne le cosisnus de x et

−1 6 y 6 1

/

printf("%f\n", y);

/ le cosinus de x est écrit sur la sortie standard /

(12)

Références

Documents relatifs

Mais par ailleurs on distingue aussi les formes de langage, par exemple la lettre : on voit très bien qu’il y a le roman par lettres ou la possibilité de mettre des lettres dans

Les orbitales 2p x et 2p z ne s’hybrident pas.. Tous les atomes de carbone de ces molécules sont hybridés sp 2 ; cependant, sur le plan expérimental, il a été montré

C’est à Rodez, dans la classe de Josef Ulla que j’ai entendu parler de vos livres la première fois : les enfants entretiennent une correspondance avec vous (voir

Figure 9 shows the image of an accretion disk with rin = 6M surrounding a Schwarzschild black hole left panel, and an ultracompact star with surface radius defined by = 0.05

• - Connaître les circonstances de survenue et les facteurs de risques des rectites radiques.. • - Savoir

Enfin, pour des populations de grande taille regardées sur des grandes durées de temps, on considère les limites d’échelle des processus de Galton-Watson issu d’une grande

Brain imaging studies have shown that different spatial patterns of neural activation are associated with thinking about different semantic categories of pictures and words

Directeur de la publication: Roger Guyot Rédacteur en chef: Roger Guyot Secrétaire de rédaction: Vincent Roussel Rédaction: Didier Rie - Vincent Roussei - RégisGuyot