A voir également:
- [pascal]nombre hors limite : problème
- Apparaitre hors ligne whatsapp - Guide
- Apparaitre hors ligne instagram - Guide
- Turbo pascal download - Télécharger - Édition & Programmation
- En raison d'un nombre important d'échec de connexion snapchat ✓ - Forum Snapchat
- Hors ligne facebook - Guide
11 réponses
ZOUARI
Messages postés
60
Date d'inscription
lundi 26 avril 2004
Statut
Contributeur
Dernière intervention
14 mai 2011
29
31 janv. 2008 à 14:48
31 janv. 2008 à 14:48
Votre problème n'est pas claire
Donnez moi l'énoncé de votre problème ou bien le code source de votre programme
Donnez moi l'énoncé de votre problème ou bien le code source de votre programme
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
jeany07
Messages postés
100
Date d'inscription
jeudi 31 janvier 2008
Statut
Membre
Dernière intervention
20 août 2009
1
31 janv. 2008 à 15:45
31 janv. 2008 à 15:45
je ne comprends pas ton problème. Le programme se ferme t-il avant qu'il est affiché le résultat?
Bonjour,
Pour un cas comme x = y*z, il y a la possibilité de passer aux logarithmes. Le logarithme d'un nombre représentable et positif est toujours représentable. On peut donc tester si ln(abs(y)) + ln(abs(z)) est dans les limites ln(min), ln(max) max étant le plus grand nombre positif représentable et min le plus petit nombre positif non nul représentable (ces nombres dépendent du processeur et de la précision retenue).
Mais ce n'est pas facile à généraliser, ...
Manu
Pour un cas comme x = y*z, il y a la possibilité de passer aux logarithmes. Le logarithme d'un nombre représentable et positif est toujours représentable. On peut donc tester si ln(abs(y)) + ln(abs(z)) est dans les limites ln(min), ln(max) max étant le plus grand nombre positif représentable et min le plus petit nombre positif non nul représentable (ces nombres dépendent du processeur et de la précision retenue).
Mais ce n'est pas facile à généraliser, ...
Manu
jeany07
Messages postés
100
Date d'inscription
jeudi 31 janvier 2008
Statut
Membre
Dernière intervention
20 août 2009
1
31 janv. 2008 à 16:07
31 janv. 2008 à 16:07
y a t-il des instructions après ce write ('hors-limite')? si oui combien si tu t'en souviens évidemment?
il y a un goto après write('hors limite')
En tous cas c'est c'est pas le problème qu'il y est ce qu'il y est ça ne change rien
En tous cas c'est c'est pas le problème qu'il y est ce qu'il y est ça ne change rien
jeany07
Messages postés
100
Date d'inscription
jeudi 31 janvier 2008
Statut
Membre
Dernière intervention
20 août 2009
1
31 janv. 2008 à 16:34
31 janv. 2008 à 16:34
essaie ceci avant de fermer ton programme, avant end. juste avant tape cette instruction writeln (' '); elle permet de laisser le programme ouvert jusqu'à ce que tu tapes sur entrée.
leptitcon
Messages postés
4
Date d'inscription
jeudi 22 mai 2008
Statut
Membre
Dernière intervention
22 mai 2008
22 mai 2008 à 12:46
22 mai 2008 à 12:46
svp g besoin daide aidez moi
mn programme naffiche ke des 0 00 0 0 0 0 aidez moi
le voila
program 22;
uses wincrt;
type
tab=array[1..100] of integer ;
var
t: tab;
n:integer;
{***************saisie de n************}
procedure saisie_n(var x:integer);
begin
repeat
writeln ('entrez le nbr de case ');
readln (x)
until (x in [1..6]);
end;
{*********saisie de t ***************}
procedure saisie_t(t:tab;n:integer);
var i :integer ;
begin
for i:=1 to n do
begin
write('t[',i,']=');
readln ( t[i]);
end;
end;
{***************affichage de t ***********}
procedure affichage_t(t:tab ; n:integer);
var j:integer;
begin
for j:=1 to n do
write (t[j]);
end;
{************programme principal**************}
begin
saisie_n(n);
saisie_t(t,n);
affichage_t(t,n);
end.
mn programme naffiche ke des 0 00 0 0 0 0 aidez moi
le voila
program 22;
uses wincrt;
type
tab=array[1..100] of integer ;
var
t: tab;
n:integer;
{***************saisie de n************}
procedure saisie_n(var x:integer);
begin
repeat
writeln ('entrez le nbr de case ');
readln (x)
until (x in [1..6]);
end;
{*********saisie de t ***************}
procedure saisie_t(t:tab;n:integer);
var i :integer ;
begin
for i:=1 to n do
begin
write('t[',i,']=');
readln ( t[i]);
end;
end;
{***************affichage de t ***********}
procedure affichage_t(t:tab ; n:integer);
var j:integer;
begin
for j:=1 to n do
write (t[j]);
end;
{************programme principal**************}
begin
saisie_n(n);
saisie_t(t,n);
affichage_t(t,n);
end.
bonjour,
C'est le passage de paramètres aux procédures qui n'est pas bon.
procedure saisie_t(t:tab;n:integer);
ça c'est un passage par valeur, le tableau t est local à la procédure, il est abandonné à la sortie.
il faut donc que tu passe le tableau t par référence en ajoutant le mot clé var
procedure saisie_t(var t:tab;n:integer);
procedure affichage_t(var t:tab ; n:integer);
Salut.
C'est le passage de paramètres aux procédures qui n'est pas bon.
procedure saisie_t(t:tab;n:integer);
ça c'est un passage par valeur, le tableau t est local à la procédure, il est abandonné à la sortie.
il faut donc que tu passe le tableau t par référence en ajoutant le mot clé var
procedure saisie_t(var t:tab;n:integer);
procedure affichage_t(var t:tab ; n:integer);
Salut.