Bonjour, je souhaite écrire un algorithme en python qui prend un entier n positif et renvoie la partie entière de racine de n sans utiliser ni une fonction racine carrée,ni une fonction floor ?
Alors qui a une idée ?
Bonjour, je souhaite écrire un algorithme en python qui prend un entier n positif et renvoie la partie entière de racine de n sans utiliser ni une fonction racine carrée,ni une fonction floor ?
Alors qui a une idée ?
Voici le code :
mais il ne fonctionne pas
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 def floorSqrt(x): # Base cases if (x == 0 or x == 1): return x # Staring from 1, try all numbers until # i*i is greater than or equal to x. i = 1; result = 1 while (result <= x): i += 1 result = i * i return i - 1
Bonjour
Ben c'est super. Tant que tu n'en diras pas plus que "ça marche pas" ou "il ne fonctionne pas" ou "quelqu'un a une idée" t'auras pas beaucoup de réponses. Si tu t'imagines qu'on va perdre notre temps à essayer de deviner parmis toutes les raisons possibles celle précise qui fait qu'il ne "fonctionne pas"...
Parce que chez-moi, correctement tapé, correctement indenté, et correctement testé, il "fonctionne"
Et quand tu postes un code
Accessoirement la racine carrée de X est calculable par la limite de la suite U0=K (K quelconque différent de 0) et Un+1=1/2(Un + X/Un)
Mon Tutoriel sur la programmation «Python»
Mon Tutoriel sur la programmation «Shell»
Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
Et on poste ses codes entre balises [code] et [/code]
Bonjour, je suouhaite programmer un algorithme qui prend en entier un graphe non orienté et renvoie True ou False si le graphe est biparti.
voici le code mais il ne fonctionne pas :
alors quelqu'un à une idée ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
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 class Graph(): def initialisation(self, V): self.V = V self.graph = [[0 for column in range(V)] for row in range(V)] self.colorArr = [-1 for i in range(self.V)] def estbipartil(self, src): queue = [] queue.append(src) while queue: u = queue.pop() if self.graph[u][u] == 1: return False; for v in range(self.V): if (self.graph[u][v] == 1 and self.colorArr[v] == -1): self.colorArr[v] = 1 - self.colorArr[u] queue.append(v) elif (self.graph[u][v] == 1 and self.colorArr[v] == self.colorArr[u]): return False return True def estbiparti(self): self.colorArr = [-1 for i in range(self.V)] for i in range(self.V): if self.colorArr[i] == -1: if not self.estbiparti1(i): return False return True
Bonjour,
Voici une possibilité, sans utiliser la fonction raciné carrée, ni floor.
A toi d'améliorer/modifier le programme pour vérifier que le nombre n entré est bien un entier positif de manière à ne pas générer une erreur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 n=int(input("entrer un nombre entier positif: ")) p = 0 a = 0 while a<=n: p=p+1 a=p*p if a==n: print("La partie entière de la racine carrée de ",n," est :",p) if a>n: print("La partie entière de la racine carrée de ",n," est : ",int(p-1))
Partager