diff --git a/DEV1.1/TP14/initiale b/DEV1.1/TP14/initiale index 87c487d..c07a87d 100755 Binary files a/DEV1.1/TP14/initiale and b/DEV1.1/TP14/initiale differ diff --git a/DEV1.1/TP14/initiale.c b/DEV1.1/TP14/initiale.c index 5d23ea9..0bb4dc1 100644 --- a/DEV1.1/TP14/initiale.c +++ b/DEV1.1/TP14/initiale.c @@ -4,11 +4,10 @@ int main(int argc,char** argv) { - char mot[20]; - if (argc > 1){ - mot[20]=*argv[1]; - mot[20]='\0'; - printf("%c\n",(mot[1])); + int argument; + if (argc>0){ + for (argument=1;argument!=argc;argument++) + printf("%c\n",(argv[argument][0])); } else puts("aucun argument !"); diff --git a/DEV1.1/TP14/multiplication b/DEV1.1/TP14/multiplication new file mode 100755 index 0000000..7f73efc Binary files /dev/null and b/DEV1.1/TP14/multiplication differ diff --git a/DEV1.1/TP14/multiplication.c b/DEV1.1/TP14/multiplication.c new file mode 100644 index 0000000..ae85179 --- /dev/null +++ b/DEV1.1/TP14/multiplication.c @@ -0,0 +1,27 @@ +#include +#include +#include + + +int main(int argc,char** argv) { + long int val1,val2; + char* pos1; + char* pos2; + val1=strtol(argv[1],&pos1,10); + if ((val1 == 0) && (*pos1==argv[1])) { + puts("L'argument 1 n'est pas un entier naturel !"); + return EXIT_FAILURE; + } else if (*argv[1] != '\0') + puts("Conversion partielle !"); + val2=strtol(argv[2],&pos2,10); + if ((val2 == 0) && (*pos2==argv[2])) { + puts("L'argument 2 n'est pas un entier naturel !"); + return EXIT_FAILURE; + } else if (*argv[2] != '\0') + puts("Conversion partielle !"); + printf("le calcul est égale à %lo\n",val1*val2); + return EXIT_SUCCESS; +} +/*Quand un des arguments n'est pas un entier, le résultat +est différent de ce qu'il doit être*/ +/* Quand un des arguments est manquant, on reçoit une segmentation fault*/