cs_crashtest
Messages postés105Date d'inscriptionlundi 16 février 2004StatutMembreDernière intervention28 août 2005
-
5 mars 2005 à 00:15
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 2012
-
14 janv. 2006 à 21:50
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 14 janv. 2006 à 21:50
de rien :)
content de voir que ça sert :)
mais ça n'a pas été noté :(
cs_algori
Messages postés868Date d'inscriptiondimanche 26 décembre 2004StatutMembreDernière intervention26 février 20081 14 janv. 2006 à 21:32
Merci, je pense que quelques bribes de ton code vont m'être utiles pour faire l'algo de puissance rapide.
@++
cs_crashtest
Messages postés105Date d'inscriptionlundi 16 février 2004StatutMembreDernière intervention28 août 2005 14 mars 2005 à 12:17
tu as résond steph666
comme sa sous ie sa marche
script :
<html>
<head>
<title>fibonaci</title>
<script>
function Int_big(nom,string){
/*
Ceci sert de constructeur....
*/
//on y déclare les variables
var taille=string.length;
var i;
//on déclare les variables de la class
this.nombre=new Array();
this.signe=1;
this.taille=0;
this.nom=nom;
//on déclare les fonctions
this.affiche=Int_big_afficher;
this.valeur=Int_big_valeur;
this.plus=Int_big_plus;
this.moins=Int_big_moins;
this.fois=Int_big_fois;
this.t_react=Int_big_t_react;
this.compare=Int_big_compare;
//on copie le nombre dans l'objet
for (i=0;i<taille;i++){
this.nombre[i]=string.charAt(taille-i-1)*1;
if (this.nombre[i]!=0)
this.taille=i+1;
}
}
function Int_big_afficher(obj){
/*
Ceci sert à afficher le nombre dans une case de texte
*/
var i;
obj.value=this.nom+"="+this.valeur();
}
function Int_big_valeur(){
/*
Cette fonction permet d'avoir dans une variable string, la chaine qui corespond aux caractères
*/
var i, valeurs=""; //on met la valeur à 0
for (i=0;i<this.taille;i++){ //on prends les valeurs caractères par caractères
valeurs=valeurs+this.nombre[this.taille-i-1]; //on les ajoute à la chaine
}
return valeurs; //et on renvoi
}
function Int_big_moins(add){
/*
Ceci sert à afficher le nombre dans une case de texte
*/
a=this.compare(add);
if (a=="egalite"){ //si les nombres sont égaux, alors on renvoi 0
for (i=0;i<taille1;i++){
this.nombre[i]=0;
}
this.t_react(); //on recherche la taille actuelle
}else if (a=="plus petit"){ //si le premier nombre est plus petit, alors on affiche une erreur
alert("la soustraction entre "+this.nom+" et "+add.nom+" n'a pas pu être effactuée... "+add.com+" est plus grand que "+this.com+"...");
}else{
var i;
for (i=0;i9){ //si on a une retenue alors :
this.nombre[i]-=10;
//ceci sert lorsque l'on ajoute un chiffre au nombre, car on n'a pas forcément assigné une valeur au chifre suivant
if (this.nombre[i+1])
this.nombre[i+1]++;
else
this.nombre[i+1]=1;
}
}
if (taille2){ //si le second nombre est le plus grand, alors on va mettre la fin du nombre à la fin de la valeur
for (i=taille1;i<taille2;i++){
this.nombre[i]=add.nombre[i];
// alert("i="+i);
}
}
this.t_react(); //calcule la taille
}
function Int_big_fois(add){
var i,j;
var taille2=this.taille;
var taille1=add.taille;
var valeur=new Array();
for (i=0; i <taille1+taille2+1 ; i++)
valeur[i]=0; //mets à 0 le tableau de valeur
for ( i = 0 ; i < taille1; i++){ //fait varier les nombres de a
for ( j = 0 ; j < taille2 ; j++){ //puis de b
valeur[i+j] += add.nombre[i] * this.nombre[j]; //calcule la multiplication et l'adition en même temps
}
}
for ( i = 0 ; i <valeur.length; i++){ //recopie le tableau de valeurs
while (9<valeur[i+j]){ //calcule la retenue
valeur[i+j+1]++;
valeur[i+j]-=10;
}
this.nombre[i]=valeur[i];
}
this.t_react(); //retrouve la taille
}
function Int_big_t_react(){
/*
cette fonction recalcule les tailles
*/
for (i=0;i<this.nombre.length;i++){
if (this.nombre[i]!=0)
this.taille=i+1;
}
}
function Int_big_compare(nbr){
/*
cette fonction permet de comparer deux nombres
*/
var taille1=this.taille;
var taille2=add.taille;
var reponse="egalite";
if (taille1<taille2)
reponse="plus petit"
else if (taille2<taille1)
reponse="plus grand"
else{
for (taille1=0;taille1<taille2;taille1++){
if (taille1<taille2){
reponse="plus petit"
taille1=taille2;
}else if (taille2<taille1){
reponse="plus grand"
taille1=taille2;
}
}
}
return reponse;
}
function min(a,b){
//donne le minimum entre a et b
var min="err";
if (a
</head>
La suite de fibonaci... (une histoire de lapins)
</html>
Steph666
Messages postés74Date d'inscriptionjeudi 6 mars 2003StatutMembreDernière intervention 5 juin 2008 14 mars 2005 à 11:20
en mettant tout dans le head, et ensuite en appelant le reste dans le body :
Steph666
Messages postés74Date d'inscriptionjeudi 6 mars 2003StatutMembreDernière intervention 5 juin 2008 14 mars 2005 à 10:55
une des erreurs apparemment c que ton code doit être mis dans la balise head sinon la référence à l'objet marche pas, et ensuite dans la fonction d'affichage, obj.value n'a aucune existence pour lui, il a la valeur null.
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 11 mars 2005 à 19:21
et l'erreur retournée est ....
je ne peux pas avoir ie... dsl...
cs_crashtest
Messages postés105Date d'inscriptionlundi 16 février 2004StatutMembreDernière intervention28 août 2005 11 mars 2005 à 11:01
Bon pour les ereurs j'ai utilisé un logiciel qui s'apelle script edit et qui m'indique la ligne d'ereur et le nombre de caractere.
1er ereur ligne : 103 caractere : 1
2ieme ereur ligne : 194 caractere : 3
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 11 mars 2005 à 07:06
la limite de U(n+1)/U(n) quand n tend vers + infinit eszt (1+sqrt(5))/2 (nombre d'or)
la_pin
Messages postés275Date d'inscriptionmercredi 11 août 2004StatutMembreDernière intervention15 décembre 2005 8 mars 2005 à 18:20
interessant d'autant plus que j'ai a rendre prochainement un devoir sur le nombre d'or qui est lié à la suite de fibonaci.
Merci coucou !
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 7 mars 2005 à 19:56
il te donne la ligne si tu mets détails...
cs_crashtest
Messages postés105Date d'inscriptionlundi 16 février 2004StatutMembreDernière intervention28 août 2005 7 mars 2005 à 00:27
Je ne serais t'expliquer l'erreur car sur IE il dit juste qu'il y a une erreur mais il ne dit pas laquel et sa craint pour faire des scripts quand on débute.
Dsl de ne pas pouvoir t'aider
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 5 mars 2005 à 18:20
la poo est la seule manière de faire un code vraiment joli en js... le js resterais autrement vraiment bordellique...
non, je n'ai pas lu ce livre...
merci pour ces encouragements.
mathieumg
Messages postés558Date d'inscriptionmardi 4 février 2003StatutMembreDernière intervention18 février 2006 5 mars 2005 à 16:24
Wow, je ne savais pas la POO possible en JS :)
Mathieu M-G
mathieumg@qc-net.com
fser
Messages postés74Date d'inscriptionvendredi 26 septembre 2003StatutMembreDernière intervention23 avril 2005 5 mars 2005 à 14:29
Désolé je n'ai pas lu
Da Vinci Code est un livre qui marche plutot bien qui parle d'une enigme autour de l'assassinat du conservateur du louvre qui a mis en scene sa mort de maniere assez surprenante > enquete et enigmes etc ...
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 5 mars 2005 à 10:59
ton explication, je l'ai mise plus haut...
c'est quoi :Da Vinci Code???
fser
Messages postés74Date d'inscriptionvendredi 26 septembre 2003StatutMembreDernière intervention23 avril 2005 5 mars 2005 à 10:57
Pour ceux qui ne savent pas la suite de Fibonacci ( 2C me semble-t-il ) est la suite qui a pour particularité que le 3eme nombre est la somme des deux précedents.
exemple : 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144
Pour info : tu as fait ça pour le fun, ou apres la lecture de Da Vinci Code ( que je recommande ;) ) ?
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 5 mars 2005 à 00:19
en fait, j'ai pas IE... si tu pouvais me donner le message d'erreur... ça pourait m'aider...
la suite de fibo est un grand classique des suites...
la librairie elle permet effectivement d'utiliser des nombres énormes (ces nombres doivent êtres dans l'ensemble des naturels N...)
cs_crashtest
Messages postés105Date d'inscriptionlundi 16 février 2004StatutMembreDernière intervention28 août 2005 5 mars 2005 à 00:15
Salut, j'ai voulu essayer avant de regarder le script et il ne marche pas alors je ne c'est pas si c'est parce que j'ai IE.
Mai si j'ai bien compris il devrait servir a calculer de très grand nombre. c'est sa???
14 janv. 2006 à 21:50
content de voir que ça sert :)
mais ça n'a pas été noté :(
14 janv. 2006 à 21:32
@++
14 mars 2005 à 12:17
comme sa sous ie sa marche
script :
<html>
<head>
<title>fibonaci</title>
<script>
function Int_big(nom,string){
/*
Ceci sert de constructeur....
*/
//on y déclare les variables
var taille=string.length;
var i;
//on déclare les variables de la class
this.nombre=new Array();
this.signe=1;
this.taille=0;
this.nom=nom;
//on déclare les fonctions
this.affiche=Int_big_afficher;
this.valeur=Int_big_valeur;
this.plus=Int_big_plus;
this.moins=Int_big_moins;
this.fois=Int_big_fois;
this.t_react=Int_big_t_react;
this.compare=Int_big_compare;
//on copie le nombre dans l'objet
for (i=0;i<taille;i++){
this.nombre[i]=string.charAt(taille-i-1)*1;
if (this.nombre[i]!=0)
this.taille=i+1;
}
}
function Int_big_afficher(obj){
/*
Ceci sert à afficher le nombre dans une case de texte
*/
var i;
obj.value=this.nom+"="+this.valeur();
}
function Int_big_valeur(){
/*
Cette fonction permet d'avoir dans une variable string, la chaine qui corespond aux caractères
*/
var i, valeurs=""; //on met la valeur à 0
for (i=0;i<this.taille;i++){ //on prends les valeurs caractères par caractères
valeurs=valeurs+this.nombre[this.taille-i-1]; //on les ajoute à la chaine
}
return valeurs; //et on renvoi
}
function Int_big_moins(add){
/*
Ceci sert à afficher le nombre dans une case de texte
*/
a=this.compare(add);
if (a=="egalite"){ //si les nombres sont égaux, alors on renvoi 0
for (i=0;i<taille1;i++){
this.nombre[i]=0;
}
this.t_react(); //on recherche la taille actuelle
}else if (a=="plus petit"){ //si le premier nombre est plus petit, alors on affiche une erreur
alert("la soustraction entre "+this.nom+" et "+add.nom+" n'a pas pu être effactuée... "+add.com+" est plus grand que "+this.com+"...");
}else{
var i;
for (i=0;i9){ //si on a une retenue alors :
this.nombre[i]-=10;
//ceci sert lorsque l'on ajoute un chiffre au nombre, car on n'a pas forcément assigné une valeur au chifre suivant
if (this.nombre[i+1])
this.nombre[i+1]++;
else
this.nombre[i+1]=1;
}
}
if (taille2){ //si le second nombre est le plus grand, alors on va mettre la fin du nombre à la fin de la valeur
for (i=taille1;i<taille2;i++){
this.nombre[i]=add.nombre[i];
// alert("i="+i);
}
}
this.t_react(); //calcule la taille
}
function Int_big_fois(add){
var i,j;
var taille2=this.taille;
var taille1=add.taille;
var valeur=new Array();
for (i=0; i <taille1+taille2+1 ; i++)
valeur[i]=0; //mets à 0 le tableau de valeur
for ( i = 0 ; i < taille1; i++){ //fait varier les nombres de a
for ( j = 0 ; j < taille2 ; j++){ //puis de b
valeur[i+j] += add.nombre[i] * this.nombre[j]; //calcule la multiplication et l'adition en même temps
}
}
for ( i = 0 ; i <valeur.length; i++){ //recopie le tableau de valeurs
while (9<valeur[i+j]){ //calcule la retenue
valeur[i+j+1]++;
valeur[i+j]-=10;
}
this.nombre[i]=valeur[i];
}
this.t_react(); //retrouve la taille
}
function Int_big_t_react(){
/*
cette fonction recalcule les tailles
*/
for (i=0;i<this.nombre.length;i++){
if (this.nombre[i]!=0)
this.taille=i+1;
}
}
function Int_big_compare(nbr){
/*
cette fonction permet de comparer deux nombres
*/
var taille1=this.taille;
var taille2=add.taille;
var reponse="egalite";
if (taille1<taille2)
reponse="plus petit"
else if (taille2<taille1)
reponse="plus grand"
else{
for (taille1=0;taille1<taille2;taille1++){
if (taille1<taille2){
reponse="plus petit"
taille1=taille2;
}else if (taille2<taille1){
reponse="plus grand"
taille1=taille2;
}
}
}
return reponse;
}
function min(a,b){
//donne le minimum entre a et b
var min="err";
if (a
</head>
La suite de fibonaci... (une histoire de lapins)
</html>
14 mars 2005 à 11:20
a.affiche(document.getElementById('a'));
b.affiche(document.getElementById('b'));
ça marche sous ie
14 mars 2005 à 10:55
11 mars 2005 à 19:21
je ne peux pas avoir ie... dsl...
11 mars 2005 à 11:01
1er ereur ligne : 103 caractere : 1
2ieme ereur ligne : 194 caractere : 3
11 mars 2005 à 07:06
8 mars 2005 à 18:20
Merci coucou !
7 mars 2005 à 19:56
7 mars 2005 à 00:27
Dsl de ne pas pouvoir t'aider
5 mars 2005 à 18:20
non, je n'ai pas lu ce livre...
merci pour ces encouragements.
5 mars 2005 à 16:24
Mathieu M-G
mathieumg@qc-net.com
5 mars 2005 à 14:29
Da Vinci Code est un livre qui marche plutot bien qui parle d'une enigme autour de l'assassinat du conservateur du louvre qui a mis en scene sa mort de maniere assez surprenante > enquete et enigmes etc ...
5 mars 2005 à 10:59
c'est quoi :Da Vinci Code???
5 mars 2005 à 10:57
exemple : 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144
Pour info : tu as fait ça pour le fun, ou apres la lecture de Da Vinci Code ( que je recommande ;) ) ?
5 mars 2005 à 00:19
la suite de fibo est un grand classique des suites...
la librairie elle permet effectivement d'utiliser des nombres énormes (ces nombres doivent êtres dans l'ensemble des naturels N...)
5 mars 2005 à 00:15
Mai si j'ai bien compris il devrait servir a calculer de très grand nombre. c'est sa???