| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 
 |  
 
/*********************************/
/*			CALCULATRICE 		 */
/*********************************/
 
#include<stdlib.h>
#include<stdio.h>
#include<unistd.h>
#include<sys/types.h>
#include<sys/wait.h>
 
/*********************************/
/*			ADDITION	 		 */
/*********************************/
int Add(int x,int y){
int Res;	
	pid_t P = fork();
			if(P == 0){
				printf("je suis le fils addition: PID = %d", getpid() );
				printf("mon pere: PID = %d", getppid() );
				Res = x + y;
				exit(Res);
			}else if(P < 0){
				printf("FORK a echoue");
				exit(1);
			}else{
				printf("je suis le pere : PID = %d", getpid() );
				printf("mon fils: PID = %d", P );
				//wait();
			}
}
/*********************************/
/*		 MULTIPLICATION 		 */
/*********************************/
float Mult(float f,float g){
	float Res;
	pid_t P = fork();
			if(P == 0){
				printf("je suis le fils multiplication: PID = %d", getpid() );
				printf("mon pere: PID = %d", getppid() );
				Res = f * g;
				exit(Res);
			}else if(P < 0){
				printf("FORK a echoue");
				exit(1);
			}else{
				printf("je suis le pere : PID = %d", getpid() );
				printf("mon fils: PID = %d", P );
				//wait();
			}
}
/*********************************/
/*			   MAIN 			 */
/*********************************/
main(){
	int P;
	int x,y;
	inr resultat1;
	float f,g;
	float resultat2;
	char choix;
 
	printf("Donner votre choix (addition/multiplication): A/M");
	scanf(choix);
 
	switch (choix){
		case 'a': 
			printf("donner deux entiers:");
			scanf(x,y);
			Add( x, y);
			printf("resultat =" , wait(resultat1) );
			break;
 
		case 'm':
			printf("donner deux reels:");
			scanf(f,g);
			Mult(f,g);
			printf("resultat =" , wait(resultat2) );
			break;
 
		default:
			printf("faux caractere!");
	}
 
} | 
Partager