pour savoir si c´est un nombre pair oiu impair, suffit de tester si X%2=0 dans ce cas c´est un nombre pair, sinon c´est un nombre impair
x etant le nombre, et %2 signifie que le resultat voulu sera le reste de cette division(x/2)
c´est bon comme reponse?
Pour repondre sur le probleme des bits.
Vous vous trouvez confrontez a un probleme de stardard
selone les mahcine le " bit de droite" peut etre le " bit de poids fort ( MSB)" ou le " bit de poids faible ( LSB)".
Il n´est donc pas " safe" d´utiliser la representation binaire pour dire si un entier est pair ou impair.
Sinon pour repondre a la calculette.
Faire une calculette est un exercice " simple" pour quelqu´un qui maitrise bien le concept de pile et de recursivite.
on peut faire un test little/big endian avant ; )
Et ma class fastSin n´interresse personne ?
y a rien de bien sorcier pourtant. ![]()
ptival, oui mais c´est dangereux.
tu ne sais pas comment le processeur fonctionne vraiment.
il pourrait etre en little endian sur le mot mais les octets en big endian.
ou des trucs bizzare.
C´est comme faire du decalage de bit au lieu de faire une multiplication par deux, c´est tres tres dépendant de l´architecture matérielle!
c´est donc a éviter!!
tomtomclancy:
je pense que c´est le fait de compter les sinus en degré qui les choques! ![]()
tu peux meme pousser le vice jusqu´a faire reduire ton intervalle de 0 a 45
Mais bon, ce ne sont pas des vrai exo d´algo tout ca...
Mais bon, ce ne sont pas des vrai exo d´algo tout ca...
Si bien sur... ca te permet de te representer le cercle trigonometrique dans la tete et de comprendre comment obtenir sin(180) a partir de sin(0) ( je sais c´est un peut simple comme example).
Mais ca fais reflechir.
Sinon pour un exo d´algo pur, pourquoi pas le triabule ( triage d´un tableau)
C´est simple et c´est de l´algo
tomtomclancy:
le probleme etant que l´on ne peut faire ton exos que si on a deja fait de la trigonometrie.
si on en a deja fait, c´est trivial.
Sinon, c´est impossible ( parceque la trigo, c´est pas simple a inventé)
Sinon, pour des vrais exos d´algo
oui, un tri c´est pas mal
meme tout les tris, notions de complexite.
ajout suppression dans les structure de données usuelles. Ou encore de l´algorithmique de chaine de caractere
ouééé... un algorithme qui trierai une liste avec une compléxité logarithmique de base 2...
je vous donne un indice : ca commence par " dicho" et ca se termine par " tomie"
et pas le droit de ressortir ses vieux cahiers poussiereux de cours d´algo ![]()
la dichotomie n´est pas un algorithme de tri.
et il N´EXISTE PAS d´algorithme de tri basé sur les comparaisons de compléxité inférieur à O(n*log(n))
( d´ailleurs j´ai ecrit un tuto sur les tris... serez vous assez malin pour le retrouver ( c´est pas tres dur...
) )
il existe un tri par dichotomie, j´en suis sur... ( par contre tu me fais douter pour la compléxité)
a la descente, on divise tout... puis a la remonté on règne ![]()
http://www.mandragor.org/tutoriels/tris/0
j´ai le droit à un susucre? ![]()
ah, oui, tu parle du tri par insertion dichotomique.
parcontre la compléxité j´en suis meta-certain ( il y a sur, certain, aucun doute et meta-certain)
Enfin, tant que l´on raisonne sur le modele des machines de turing deterministe bien sur, si on considere du parallelisme ou du non deterministe on fait du O(1)...
" Enfin, tant que l´on raisonne sur le modele des machines de turing deterministe bien sur, si on considere du parallelisme ou du non deterministe on fait du O(1)..."
ça m´interresse... tu peux développer un peu stp ?
![]()
On travaille sur le modèle de turing deterministe.
Il y a deux classe de compléxité bien connu P et NP
P ca dit que l´on peut executer les chose en temps polynomial sur une machine de turing deterministe. Dans P on connait plein de probleme, dire si un tableau est trie, donné l´arbre couvrant de poids d´un graphe, calculer la valeur d´un flot max, plus court chemin dans un graphe...
NP ca dit qu´on peut le faire en temps polynomial sur une machine de turing non deterministe(MDTND).
Qu´est ce que ca veut dire non deterministe ca veut dire que j´ai le droit de rajouter une " instruction"
FAIRE ceci ET cela et la MDTND choisit lequel des deux elle fait.
quand on dit qu´on le fait en temps polynomial ca veut dire qu´il existe une execution de la machine qui soit polynomial.
On connait plien de probleme de NP: voyageur de commerce, resolution d´un PLNE, plus court chemin constraint...
On a bien P inclut dans NP. la conjecture P ! = NP etant une des conjecture les plus mythiques des maths actuelle ( elle tient depuis 50 ans) et sera recompenser par le clay institute d´une somme de 1 million de dollard a qui pourra montrer cette conjecture ( qu´elle soit vraie ou non).
Pour le background de cela. On pense que les " ordinateur quantique" pourrait nous permettre d´avoir une machine qui soit modelisable par une machine de turing non deterministe ( ce que nous n´avons actuellement pas).
Apres, nous avons les probleme de complexité parallele.
En effet, en parallele et en sequentiel les calcul s n´ont plus la meme complexite;
prenons par exemple sur le calcul du max d´un tableau de n case.
en sequentiel, on le fait en O(n).
En parallele on le fait en log2(n).
En effet, on utilise n/2 processeurs et chaque processeur compare 2 elements.
on se retrouve avec un probleme de taille n/2
le meme style de technique nous amène a un algorithme de tri en O(1). ( ou O(n) peut etre... faudra que je cherche)
merci pour ces précisions
j´adore ces questions mathematiques d´ailleur, j´ai lu un bouquin sur la conjecture P! = NP ( il me semble que c´était P=NP) et les 6 autres soutenues par le clay institute :
à lire absolument, c´est très enrichissant
Il y a 20 ans, on pensait plutot que P = NP mais maintenant avec plus de recul ( l´avenement d´internet a largement contribué a booster la science) on penses plutot que P ! = NP.
Et en fait, ca a son importance parceque actuellement un problème NP-complet ( familierement: ceux qui sont dans NP et pas dans P) ne sont soluble exactement qu´à l´aide d´algorithme de complexité exponentielle ( on a du factoriel parfois)
d´ailleurs celui qui trouve P=NP ou P!=NP aura probablemetn la medailles fields!
j´ai un probleme :
comment peut on savoir si un chiffre est entié ou qu´il contient au contraire des chiffres apres la virgule?
et comment peut on faire compter le pc avec des bits? ( c++)
sonic: j´ai pas compris la question sur les bits.
sur la premiere question, j´ai pas bien compris non plus, mais je supose que tu es en C++ et que tu travaille sur un float f.
et tu voudrais savoir si f est entier
la reponse est toujours la meme en flottant...
ca n´existe pas vraiment un entier
du fait de la representation flottante c´est difficile d´avoir 14000 pile, sans virgule derriere ( ca n´est meme peut etre pas possible)
la seule chose que tu puisse faire, c´est extraire l´entier le plus proche ( fonction ceil, round floor...) calculer la difference entre f et round(f) et si la difference est inferieur a une marge que tu t´es fixé ( disons #define EPSILON 0.0001) alors tu considere qu´il est entier