Turbo-Pascal
Discutez d'informatique ici !
-
magnum
- Membre Relatif
- Messages: 149
- Enregistré le: 22 Avr 2007, 09:12
-
par magnum » 21 Jan 2008, 21:02
Bonjour,
Je cherche un programme en turbo pascal qui, en donnant la valeur de n , nous donne tous les entiers naturels impairs inférieurs à n.
Merci! (je suis un novice en la matière) !
-
fatal_error
- Membre Légendaire
- Messages: 6610
- Enregistré le: 22 Nov 2007, 12:00
-
par fatal_error » 21 Jan 2008, 21:09
Bonjour,
program Test;
var n,i : integer;
begin
i:=0; //pas necessaire ici, mais c'es tune (mauvaise?) habitude
writeln('entrez n');
readln(n); //recupérer n
For i := 1 To n Do
begin
if i mod 2 <> 0 //si c'est un nombre impair
then writeln(i); //ecrire le nombre
end;
end.
testé.
la vie est une fête

-
Hyp
- Membre Naturel
- Messages: 99
- Enregistré le: 20 Jan 2008, 19:57
-
par Hyp » 21 Jan 2008, 21:17
Tenu compte des différentes variantes en syntaxe du Pascal, je te donne l'idée, et l'algorithme.
Il s'agit simplement d'ouvrir une boucle d'indice I allant de 1 (0 est pair) à n-1 (ou n si tu veux le sens large) avec la tâche d'écrire I sous la condition qu'il soit impair:
Algorithme Parité
var
n,i: entier
Début
Lire (n) (éventuel contrôle de la positivité de n)
Pour i de 1 à n-1 (ou n comme dit ci dessus) FAIRE
Si I mod 2 = 1 ALORS écrire (i)
Fin SI
Fin POUR
Fin
Voici le code source approximatif en pascal ({commentaires}):
Program Parity;
uses wincrt; {tout dépend de ton compilateur}
var
n,i:integer;
BEGIN
REPETER
writeln ('donner n'); {Structure Répéter facultative en fonction de tes exigences}
readln (n);
Jusqu'à (N>=0);
For i: 1 to n-1 {ou n} DO
IF i mod 2=1 then writeln (i);
end;
end.
-
magnum
- Membre Relatif
- Messages: 149
- Enregistré le: 22 Avr 2007, 09:12
-
par magnum » 21 Jan 2008, 22:45
désolé de vous redéranger je dois cette fois écrire un programme en turbo pascal qui détermine et affiche pour un réel A donné, la plus petite valeur de n pour laquelle on a Un>ou égale à A.
Un+1=Un-(1/(Un))+2.
j'ai déjà prouvé que Un tend vers + l'infini.
Merci !
-
Hyp
- Membre Naturel
- Messages: 99
- Enregistré le: 20 Jan 2008, 19:57
-
par Hyp » 21 Jan 2008, 23:15
Insoluble si tu n'as pas le 1er terme de la suite (logique). Je le poserai donc u0 (non nul, mais je ne ferai pas le contôle de la variable).
Program Machin;
var
u0,i: integer;
A: real;
begin
writeln (saisir votre réel);
readln (A);
writeln ('Saisir U(0) si vous êtes bien gentil');
readln (u0); // n'oublie pas qu'il doit être non nul
i:=0; // On initialise le compteur d'indices pour commencer à
partir du 1er terme
While u0
i:=i+1; // Hop, suivant
u0:= u0-(1/(u0))+2; // Ce terme suivant est affecté à ta suite récurrente
end;
writeln ('Le plus petit indice est : ', i); // et voilà
end.
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 2 invités