Wikipedia dichotomie
Résolu
uesgui
Messages postés
172
Date d'inscription
Statut
Membre
Dernière intervention
-
uesgui Messages postés 172 Date d'inscription Statut Membre Dernière intervention -
uesgui Messages postés 172 Date d'inscription Statut Membre Dernière intervention -
Bonsoir,
J'ai trouvé le code pour la dichotomie sur une page de Wikipedia :
https://fr.wikipedia.org/wiki/Dichotomie
MAIS je ne sait pas comment m'en servir je veux dire dans quoi il faut l'entrer.
Dans un logiciel ? Une calculatrice ?
Comment faire ?
Merci de m'aider :)
J'ai trouvé le code pour la dichotomie sur une page de Wikipedia :
https://fr.wikipedia.org/wiki/Dichotomie
MAIS je ne sait pas comment m'en servir je veux dire dans quoi il faut l'entrer.
Dans un logiciel ? Une calculatrice ?
Comment faire ?
Merci de m'aider :)
A voir également:
- Montre heritor wikipedia
- Montre connectée eko avis - Forum Accessoires & objets connectés
- Montre heritor avis forum - Forum Consommation & Internet
- Montre eko avis - Forum Accessoires & objets connectés
- Montre rohs mode d'emploi - Forum Accessoires & objets connectés
- Avis montre connectée EKO commandée sur showroomprivé. - Forum Consommation & Internet
4 réponses
Bonsoir,
Le "code" qui est présent sur cette page est un algorithme, ce qui signifie que ce n'est pas exploitable directement. L'algorithme, c'est une manière de traduire un programme en français, ou du moins d'expliquer comment trouver les solutions à un problème donné, et qui est sensé être compréhensible par tout le monde.
Une fois écrit de la sorte, il est très facile de le traduire dans un langage particulier (C, C++, Java, Python, langage compréhensible par ta calculatrice...).
Bref, pour être utilisable, il te faut encore un petit peu d'efforts.
Cordialement,
Le "code" qui est présent sur cette page est un algorithme, ce qui signifie que ce n'est pas exploitable directement. L'algorithme, c'est une manière de traduire un programme en français, ou du moins d'expliquer comment trouver les solutions à un problème donné, et qui est sensé être compréhensible par tout le monde.
Une fois écrit de la sorte, il est très facile de le traduire dans un langage particulier (C, C++, Java, Python, langage compréhensible par ta calculatrice...).
Bref, pour être utilisable, il te faut encore un petit peu d'efforts.
Cordialement,
Si tu as fait du Pascal, la traduction algo->pascal est souvent très naturelle, il suffit parfois de remplacer juste quelques mots.
Ceci dit, si tu as l'habitude d'un langage particulier, même si tu n'as pas l'habitude de l'algo, tu peux éventuellement retrouver le sens du programme en lisant bien l'algo et le retraduire...
Ceci dit, si tu as l'habitude d'un langage particulier, même si tu n'as pas l'habitude de l'algo, tu peux éventuellement retrouver le sens du programme en lisant bien l'algo et le retraduire...
Bonjour
Merci pour toutes ces explications.
Je commence tout juste a découvrir la programmation et il me semble que j'ai trouvé un code pour ma dichotomie en pascal mais il ne me donne pas le résultat escompté (celui que je devrai trouver) à 1*10-6 prés voici le code :
program dichotomie;
var y:integer;
function f(var x:real):real;
begin
if y=1 then f:=(ln (x))/x+((x*x)-1) /2*(1/x) end;
procedure verif;
var a,b,m,ep,va:real;
i,n:integer;
r,c:char;
begin repeat
writeln('f[x]=ln(x)/x + ((x*x)-1)/2*(1/x)');
writeln('pour calculer la fonction f[x]=1 donnez l intervalle[a,b]') ;
write(' a=');
readln(a);
write(' b=');
readln(b);
begin
writeln('la fonctin f admet une solution dans [',a,';',b,']');
write(' ');
write('entrer le nombre d"iteration n=');
readln(n);
m:=(a+b)/2; if f(m)=1 then ep:=m
else
begin for i:=1 to n-1 do
begin if f(m)*f(a)>0 then begin a:=m; m:=(b+m)/2; end
else m:=(a+m)/2; b:=2*m-a;
end;
end; i:=i+1;
ep:=m;
writeln(' la valeur pour l"iteration ',n,' est epsilon=',ep);
write('voulez vous continuer O/N? ');
readln(r); end;
until r='N';
end;
begin
writeln(' DICHOTOMIE ');
writeln(' ');
writeln(' ');
verif;
end.
Merci pour toutes ces explications.
Je commence tout juste a découvrir la programmation et il me semble que j'ai trouvé un code pour ma dichotomie en pascal mais il ne me donne pas le résultat escompté (celui que je devrai trouver) à 1*10-6 prés voici le code :
program dichotomie;
var y:integer;
function f(var x:real):real;
begin
if y=1 then f:=(ln (x))/x+((x*x)-1) /2*(1/x) end;
procedure verif;
var a,b,m,ep,va:real;
i,n:integer;
r,c:char;
begin repeat
writeln('f[x]=ln(x)/x + ((x*x)-1)/2*(1/x)');
writeln('pour calculer la fonction f[x]=1 donnez l intervalle[a,b]') ;
write(' a=');
readln(a);
write(' b=');
readln(b);
begin
writeln('la fonctin f admet une solution dans [',a,';',b,']');
write(' ');
write('entrer le nombre d"iteration n=');
readln(n);
m:=(a+b)/2; if f(m)=1 then ep:=m
else
begin for i:=1 to n-1 do
begin if f(m)*f(a)>0 then begin a:=m; m:=(b+m)/2; end
else m:=(a+m)/2; b:=2*m-a;
end;
end; i:=i+1;
ep:=m;
writeln(' la valeur pour l"iteration ',n,' est epsilon=',ep);
write('voulez vous continuer O/N? ');
readln(r); end;
until r='N';
end;
begin
writeln(' DICHOTOMIE ');
writeln(' ');
writeln(' ');
verif;
end.