Bonjour à vous, depuis plusieurs heures je cherche activement une bonne formulation pour un programme que j'ai à faire sous turbo pascal, sans réussite.. Si quelqu'un pouvait m'aider, cela serait vraiment top ! Voici l'énoncé :
"U1=1 V1=3 pour tout n>1
Un+1 = 3Un+4Vn
Vn+1 = Un+ 3Vn
Ecrire un programme qui calcule et affiche les termes successifs de U et V, jusqu'à un rang n donné."
Cordialement
Désolé, je ne connais pas le turbo pascal (mais je connais algobox, ti basic, casio, etc)
La logique serait ('#' indique un commentaire):
Variables :
U est un nombre #terme de U
V est un nombre #terme de V
I est un nombre #nous servira de compteur dans la boucle
R est un nombre #sert à transférer les valeurs
S est un nombre #sert à transférer les valeurs
N est un nombre #rang max
Programme :
Demander N
Si N 1, alors : #vérification
Stopper le programme
1 donne U #initialisation des suites
3 donne V
Pour I allant de 2 jusqu'à N avec un pas de 1 :
3U+4V donne R #on calcule dans des variables différentes
U+3V donne S
Afficher 'U',I,'=',R #on affiche U rang I puis la valeur de R
Afficher 'V',I,'=',S
R donne U #on remplace les valeurs des suites pour la prochaine boucle
S donne V
Fin Pour
Fin Programme
En espérant t'avoir aidé
D'accord, merci beaucoup Mais je dois avouer que j'ai beaucoup de mal à convertir cela en langage turbo pascal..
Je vais essayer de le retranscrire mais je ne garantie pas le résultat
Var u : real ;
Var v : real ;
Var i : integer ;
Var r : real ;
Var s : real ;
Var n : integer ;
BEGIN { programme principal }
u := 1 ;
v := 3 ;
ReadLn(n) ;
For i := 2 To n Do
Begin
r := 3u+4v
s := u+3v
WriteLn('U',i,'=',r)
WriteLn('V',i,'=',s)
u := r
v := s
End ;
END.
pfouu, c'est dur...
Merci énormément, c'est bon cela marche J'ai juste rajouté deux trois commandes pour l'affichage final et rajouter un ou deux petits point virgules mais c'est bon c'est parfait ! Merci encore !
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :