100% de satisfacción garantizada Inmediatamente disponible después del pago Tanto en línea como en PDF No estas atado a nada 4,6 TrustPilot
logo-home
Notas de lectura

Informatique - Les enregistrements

Puntuación
-
Vendido
1
Páginas
4
Subido en
13-09-2014
Escrito en
2012/2013

Bases de l'informatique: algorithme et programmation. Langage C.

Institución
Grado










Ups! No podemos cargar tu documento ahora. Inténtalo de nuevo o contacta con soporte.

Escuela, estudio y materia

Institución
Estudio
Grado

Información del documento

Subido en
13 de septiembre de 2014
Número de páginas
4
Escrito en
2012/2013
Tipo
Notas de lectura
Profesor(es)
Desconocido
Contiene
Todas las clases

Vista previa del contenido

Chapitre 6 : Les enregistrements

Un type de donné pour « stocker » plusieurs élements.
Exemples :
✔ Un entier codé comme
- un signe
-une valeur absolue
✔ une personne codée comme
-âge
-sexe
-taille

représente un élement de N x Bolléens x R (pdt cartésien en maths)

I. Un exemple, le type rationnel

coder p/q avec p appartient à Z
q appartient à A ( attention : si q=0 on a une erreur)

Nom du type : rationnel
Types importés : entier.nat

A) Fonction primitives

Noms et profils

 constructeurs

nouveau_nat : → rationnel
ecrire_num : entier * rationnel → rationnel
ecrire_den : entier*rationnel → rationnel

 accès
lire_num : rationnel → entier
lire_den : rationnel → entier

Axiomes

[1] lire_num (nouveau_nat)= num par défaut (=1?)
[2] lire_den (nouveau_nat)=den par défaut (=1?)
[3]lire_num ( ecrire_num(a,x))=a
[4]lire_den (ecrire_den(a,x))=a
[5]lire_den (ecrire_num(a,x))=lire_dén(x)
[6] lire_num(ecrire_dén(a,x))=lire_num(x)

Question : quelle construction pour le rationnel – 12/8

r:= nouveau_rationnel
r:= ecrire_num (-12, r)
r:=ecrire_den (8,r)

,Le même en une construction

r:= ecrire_den (8, ecrire_num ( -12, nouveau_rat))

Attention ! En algorithme on autorise nouveau_rat sans parenthèse car elle n'a
pas de paramètres en C. Toute fonction a des parenthèses → nouveau_rat()

multr = multiplication sur les rationnels
estposr= teste si un rationnel est positif ( on a droit à >=0, >0,<=0,<0 sur les
entiers)
memedenr (x,y) renvoie le plus petit dénominateur commun de x et y
egalitée=teste d'&galité entre deux rationnels
addr= addition de deux rationnels

II. Implantation d'un type enregistrement en C

Dans ce cours, on va créer un fichier spécial, ici rationnel.h qui va contenir la
définition du type rationnel ainsi que les fonctions primitives. Ce fichier sera
utilisé dans votre programme machin.C

/* fichier rationnel.h*/
/* définition du type enregistrement rationnel */
/* 11.03.2013, GUERDAM Sirine*/

#include <stdlib.h>
# define num_par_defaut 1 ←Définit les valeurs par défaut
#define den_par_defaut 1 ←qui sont deux constantes et
valent ici 1


struct rationnel /* struct= « enregistrement »*/
{
int numerateur ; /* premier champ*/
int denominateur ; /* deuxième champ*/
} ; /* ne pas oublier le ;*/

typedef struct rationnel rationnel ;
/* dit que le type « stuct rationnel » peut aussi s'appeler rationnel*/
/* signatures des opérations primitives */

rationnel nouveau_rat() ; /* dit juste les types paramètres/
resultats */
rationnel ecrire_num (int a, rationnel x) ;
rationnel ecrire_den(int a, rationnel x) ;
int lire_num (rationnel x) ;
int lire_den(rationnel x) ;

/* implantation des opérations primitives*/

rationnel nouveau_nat ()
{

, rationnel r ;
r= ecrire_num ( num_par_defaut, r ) ;
r= ecrire_den (den_par_defaut, r ) ;
return r ;
}

rationnel ecrire_num (int a, rationnel x)
{
x. numerateur=a ; /* modifie le champ « numerateur » de x */
return x ;
}
rationnel ecrire_den (int a, rationnel x)
{
x.denominateur = a ;
return x ;
}
int lire_num (rationnel x)
{
return x, numerateur ;
}
int lire_den (rationnel x)
{
return x.denominateur ;
}


rationnel ecrire_den( int a, rationnel x)
{
if (a==0) ;
{
exit (EXIT_FALURE) ; /* quitte le programme */
}
x.denominateur=a ;
return x ;
}


Fonction estposr et Fonction multr a réecrire d 'après les exos.

En :C Le rationnel vaut 12/-8

void affiche_rat(rationnel x)
{
printf(« Le rationnel vaut %d/%d \n », lire_num(x), lire_den(x)) ;
}




III.Type point 2D : Les points du plan
$4.76
Accede al documento completo:

100% de satisfacción garantizada
Inmediatamente disponible después del pago
Tanto en línea como en PDF
No estas atado a nada

Conoce al vendedor
Seller avatar
Streamerine

Conoce al vendedor

Seller avatar
Streamerine IUT Mesures Physiques
Seguir Necesitas iniciar sesión para seguir a otros usuarios o asignaturas
Vendido
4
Miembro desde
11 año
Número de seguidores
2
Documentos
7
Última venta
1 año hace

0.0

0 reseñas

5
0
4
0
3
0
2
0
1
0

Recientemente visto por ti

Por qué los estudiantes eligen Stuvia

Creado por compañeros estudiantes, verificado por reseñas

Calidad en la que puedes confiar: escrito por estudiantes que aprobaron y evaluado por otros que han usado estos resúmenes.

¿No estás satisfecho? Elige otro documento

¡No te preocupes! Puedes elegir directamente otro documento que se ajuste mejor a lo que buscas.

Paga como quieras, empieza a estudiar al instante

Sin suscripción, sin compromisos. Paga como estés acostumbrado con tarjeta de crédito y descarga tu documento PDF inmediatamente.

Student with book image

“Comprado, descargado y aprobado. Así de fácil puede ser.”

Alisha Student

Preguntas frecuentes