Algebre de boole

Réponses à toutes vos questions après le Bac (Fac, Prépa, etc.)
Avatar de l’utilisateur
chombier
Membre Irrationnel
Messages: 1324
Enregistré le: 19 Juil 2012, 18:35

par chombier » 22 Juin 2015, 05:08

paquito a écrit:En basic on écrivait A=0 pour 0->A mais 0=A n'avait aucun sens!

L'informatique ça n'a rien à voir avec les maths.

La plupart des langages différencient l'affectation avec ":=" et le test d'égalité (avec "=="), justement parce que utiliser le symbole "=" n'a aucun sens.

Enfin, quel que soit le contexte, "(0=A) => (0=A)" reste une tautologie.



Avatar de l’utilisateur
chombier
Membre Irrationnel
Messages: 1324
Enregistré le: 19 Juil 2012, 18:35

par chombier » 22 Juin 2015, 05:11

zygomatique a écrit:sauf si précédé d'un IF, WHILE, UNTIL, ...

C'est intéressant ce que tu dis,

En C, une erreur assez courante est, dans un test, de se tromper de "=" :

Code: Tout sélectionner
if (a = 7) {


Le compilateur ne dit rien, et produit un code machine équivalent à :
Code: Tout sélectionner
a = 7;
if (7) {


Certains programmeurs ont donc décidé de coder leurs tests comme cela :
Code: Tout sélectionner
if (7 == a) {


L'avantage est que s'ils se trompent de signe ("="); le compilateur rale, justement pour les raisons que tu as invoquées :

Code: Tout sélectionner
if (7 = a) {

sh-4.3$ gcc -o main *.c
main.c: In function 'main':
main.c:7:11: error: lvalue required as left operand of assignment
     if (7 = a)
           ^

paquito
Membre Complexe
Messages: 2168
Enregistré le: 26 Fév 2014, 12:55

par paquito » 22 Juin 2015, 09:16

chombier a écrit:L'informatique ça n'a rien à voir avec les maths.

La plupart des langages différencient l'affectation avec ":=" et le test d'égalité (avec "=="), justement parce que utiliser le symbole "=" n'a aucun sens.

Enfin, quel que soit le contexte, "(0=A) => (0=A)" reste une tautologie.


L'informatique est une branche des maths! je parle des choses sérieuses: algorithmique et programmation.

Avatar de l’utilisateur
chombier
Membre Irrationnel
Messages: 1324
Enregistré le: 19 Juil 2012, 18:35

par chombier » 22 Juin 2015, 09:20

paquito a écrit:L'informatique est une branche des maths! je parle des choses sérieuses: algorithmique et programmation.

L'algorithmique peut être vue comme une branche des maths, la programmation non.

Concevoir un algo de dichotomie, de recherche de plus court chemin, d'arbre couvrant de coût minimum, faire du lambda-calcul... c'est des maths, ok.

L'implémenter, ce n'en est plus.

paquito
Membre Complexe
Messages: 2168
Enregistré le: 26 Fév 2014, 12:55

par paquito » 22 Juin 2015, 09:47

chombier a écrit:L'algorithmique peut être vue comme une branche des maths, la programmation non.

Concevoir un algo de dichotomie, de recherche de plus court chemin, d'arbre couvrant de coût minimum, faire du lambda-calcul... c'est des maths, ok.

L'implémenter, ce n'en est plus.


Et le codage, c'est pas des maths! Le binaire, c'est pas des maths! La méthodes de résolution d'une équation de degré 2 c'est pas un programme! Les fonctions, les tests à appliquer, c'est pas des maths!

Il est vrai que certains langages sont tellement mal branlés, que ce ne sont pas des mathématiciens qui les ont crées!

Avatar de l’utilisateur
chombier
Membre Irrationnel
Messages: 1324
Enregistré le: 19 Juil 2012, 18:35

par chombier » 22 Juin 2015, 10:17

paquito a écrit:Et le codage, c'est pas des maths! Le binaire, c'est pas des maths! La méthodes de résolution d'une équation de degré 2 c'est pas un programme! Les fonctions, les tests à appliquer, c'est pas des maths!

Il est vrai que certains langages sont tellement mal branlés, que ce ne sont pas des mathématiciens qui les ont crées!

Je ne fixe pas la limite exactement au même endtoit, mais pas loin non plus :)

Pour moi coder, en général, ce n'est pas des maths. (Genre coder un site web...)

La base 2, c'est des maths, le binaire c'est de l'informatique (le codage du signe par complément à 2, la représentation des nombres à virgule flottante avec mantisse et exposant...)

Ecrire l'alto pour résoudre une équation du second degré, c'est des maths. L'implémenter en C, en Java ou en Python, c'est de l'informatique

En informatique on parle de tests, en maths on raisonne par disjonction des cas.

paquito
Membre Complexe
Messages: 2168
Enregistré le: 26 Fév 2014, 12:55

par paquito » 22 Juin 2015, 11:36

chombier a écrit:Je ne fixe pas la limite exactement au même endtoit, mais pas loin non plus :)

Pour moi coder, en général, ce n'est pas des maths. (Genre coder un site web...)

La base 2, c'est des maths, le binaire c'est de l'informatique (le codage du signe par complément à 2, la représentation des nombres à virgule flottante avec mantisse et exposant...)

Ecrire l'alto pour résoudre une équation du second degré, c'est des maths. L'implémenter en C, en Java ou en Python, c'est de l'informatique

En informatique on parle de tests, en maths on raisonne par disjonction des cas.


L'informatique c'est pas une matière, pas plus que la statistique, ça fait partie des maths à par entière!

Si tu veux te cultiver, regarde l'épreuve d'analyse numérique de l'agrégation et tu verras...

danyL
Membre Rationnel
Messages: 682
Enregistré le: 03 Jan 2015, 13:29

par danyL » 22 Juin 2015, 12:46

je ne sais pas si vous parlez de l'enseignement actuel de l'informatique (que je ne connais pas) ou de l'informatique en général, mais je suis plutôt d'accord avec chombier, une partie de l'informatique est une application des maths mais concevoir une ihm ou écrire en html n'a rien à voir avec les maths

paquito
Membre Complexe
Messages: 2168
Enregistré le: 26 Fév 2014, 12:55

par paquito » 22 Juin 2015, 13:41

danyL a écrit:je ne sais pas si vous parlez de l'enseignement actuel de l'informatique (que je ne connais pas) ou de l'informatique en général, mais je suis plutôt d'accord avec chombier, une partie de l'informatique est une application des maths mais concevoir une ihm ou écrire en html n'a rien à voir avec les maths


On est d'accord, comme les problèmes technologiques ne sont plus mathématiques, mais je suis persuadé que la fabrication d'une clé USB a demandé principalement un énorme travail mathématiques.

Avatar de l’utilisateur
zygomatique
Habitué(e)
Messages: 6928
Enregistré le: 20 Mar 2014, 12:31

par zygomatique » 22 Juin 2015, 13:46

chombier a écrit:C'est intéressant ce que tu dis,

En C, une erreur assez courante est, dans un test, de se tromper de "=" :

Code: Tout sélectionner
if (a = 7) {


Le compilateur ne dit rien, et produit un code machine équivalent à :
Code: Tout sélectionner
a = 7;
if (7) {


Certains programmeurs ont donc décidé de coder leurs tests comme cela :
Code: Tout sélectionner
if (7 == a) {


L'avantage est que s'ils se trompent de signe ("="); le compilateur rale, justement pour les raisons que tu as invoquées :

Code: Tout sélectionner
if (7 = a) {

sh-4.3$ gcc -o main *.c
main.c: In function 'main':
main.c:7:11: error: lvalue required as left operand of assignment
     if (7 = a)
           ^



oui je parlais dans une certaine mesure de manière générale ....mais maintenant que les gens ne savent plus lire on a été obligé de distinguer les instructions ::

A = 0 (qui constituait une affectation)

A = 0 (précédé d'un IF,... qui conduisait à un test)

par toute sorte d'instructions (doubler le = par exemple)


tout comme maintenant les calculatrices distinguent le - de soustraction du - de l'opposé ....

quelle triste médiocrité que ce monde moderne qui me semblent plutôt régresser ...



sinon je te rejoins : traduire un algo en une langue (compréhensible par une machine) n'est pas mathématiques ....
Ce qui est affirmé sans preuve peut être nié sans preuve. EUCLIDE

paquito
Membre Complexe
Messages: 2168
Enregistré le: 26 Fév 2014, 12:55

par paquito » 22 Juin 2015, 13:51

zygomatique a écrit:oui je parlais dans une certaine mesure de manière générale ....mais maintenant que les gens ne savent plus lire on a été obligé de distinguer les instructions ::

A = 0 (qui constituait une affectation)

A = 0 (précédé d'un IF,... qui conduisait à un test)

par toute sorte d'instructions (doubler le = par exemple)


tout comme maintenant les calculatrices distinguent le - de soustraction du - de l'opposé ....

quelle triste médiocrité que ce monde moderne qui me semblent plutôt régresser ...



sinon je te rejoins : traduire un algo en une langue (compréhensible par une machine) n'est pas mathématiques ....


Et la syntaxe du langage, c'est de la littérature?
Si je te fais un algo pour résoudre une équadiff d'ordre 1 à coefficients constants et à second membre de la forme , P de degré , l'écrire en français n'a plus rien de mathématiques puisque le français ne fais pas partie des maths :ptdr:

Avatar de l’utilisateur
zygomatique
Habitué(e)
Messages: 6928
Enregistré le: 20 Mar 2014, 12:31

par zygomatique » 22 Juin 2015, 14:05

c'est effectivement de la littérature ... qui ne dépend que de celui qui a créé ledit langage ...

ce qui m'intéresse plus c'est la sémantique d'une expression

https://fr.wikipedia.org/wiki/S%C3%A9mantique

voir la dernière phrase juste au dessus du cadre contenant le sommaire ....
Ce qui est affirmé sans preuve peut être nié sans preuve. EUCLIDE

paquito
Membre Complexe
Messages: 2168
Enregistré le: 26 Fév 2014, 12:55

par paquito » 22 Juin 2015, 14:39

De toutes façons, il y a longtemps que les programmes ne sont plus écrits à la main, la PAO est passée par là, donc savoir utiliser un langage n'est pas quelque chose d'exceptionnel sauf si on fait l'algorithme soit même!

 

Retourner vers ✯✎ Supérieur

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 46 invités

Tu pars déja ?



Fais toi aider gratuitement sur Maths-forum !

Créé un compte en 1 minute et pose ta question dans le forum ;-)
Inscription gratuite

Identification

Pas encore inscrit ?

Ou identifiez-vous :

Inscription gratuite