Cours:TDs 1103 : Différence entre versions

De troyesGEII
Aller à : navigation, rechercher
({{Bleu|Td 4 : fichiers}})
Ligne 103 : Ligne 103 :
 
</source>
 
</source>
  
=={{Bleu|Td 4 : fichiers}}==
+
=={{Bleu|Td 5 : fichiers}}==
  
 
<source lang=c>
 
<source lang=c>

Version du 26 novembre 2013 à 22:36

Td 4 : structures

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

struct complexe
{
	double pr;
	double pi;
} z1,z2,r;

void entree1();
void entree2();
void affichage();
void somme();
void diff();
void mult();
void carre();
void cube();

int main()
{
	char c;

	do
	{
		printf("Arithmetique complexe\n");
		printf("1 : saise 1er nombre          2: saisie 2ème nbre\n");
		printf("A ... affiche res             +  calcul de z1+z2\n");
		printf("-  calcul de z1-z2            *  calcul de z1xz2\n");
		printf("c  calcul de z2²              U calcul de z1^3\n");
		printf("q ou Q pour quitter \n");
		do scanf("%c",&c); while (c=='\n');                             // La touche "entrée" n'est pas toujours récupérée par le scanf précédent
		switch (c)
		{
			case '1': entree1();break;
			case '2' : entree2();break;
			case 'a' :
			case 'A' : affichage();break;
			case '+' : somme();break;
			case '-' : diff();break;
			case '*' : mult();break;
			case 'c' : carre();break;
			case 'U' : cube();break;
		}
	} while ((c!='q') &&(c!='Q'));
    return 0;
}

void entree1()
{
	printf("partie reelle = ");
	scanf("%lf",&z1.pr);
	printf("partie imaginaire = ");
	scanf("%lf",&z1.pi);
}

void entree2()
{
	printf("partie reelle = ");
	scanf("%lf",&z2.pr);
	printf("partie imaginaire = ");
	scanf("%lf",&z2.pi);
}

void affichage()
{
    if (r.pi>0)       printf("r = %.2lf + %.2f i \n",r.pr,r.pi);
    else if (r.pi==0) printf("r = %.2lf \n",r.pr,r.pi);
    else              printf("r = %.2lf - %.2f i \n",r.pr,-r.pi);
}

void somme()
{
    r.pr=z1.pr+z2.pr;
    r.pi=z1.pr+z2.pi;
}

void diff()
{
    r.pr=z1.pr-z2.pr;
    r.pi=z1.pr-z2.pi;
}

void mult()
{
    r.pr=z1.pr*z1.pr-z2.pi*z2.pi;
    r.pi=z1.pr*z2.pi+z1.pi*z2.pr;
}

void carre()
{
    r.pr=z1.pr*z1.pr-z1.pi*z1.pi;
    r.pi=2*z1.pr*z1.pi;
}

void cube()
{
    r.pr=z1.pr*z1.pr*z1.pr-3*z1.pr*z1.pi*z1.pi;
    r.pi=3*z1.pr*z1.pr*z1.pi-z1.pi*z1.pi*z1.pi;
}

Td 5 : fichiers

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


int main()
{
    FILE *f;

    f=fopen("test.txt","w+t");                          // ouverture du fichier test.txt en écriture
    if (f==NULL) {
        printf("Erreur à l'ouverture du fichier !\\n");
        exit(-1);                                       // fin du programme avec code d'erreur -1
    }
    fprintf(f,"bonjour !");                             // écriture dans le fichier du message bonjour !
    fclose(f);                                          // fermeture du fichier
    exit(0);                                            // fin du programme
}