Paramètres d'une checkbox
27 réponses
Modification des paramètres d'une checkbox et de son comportement est discutée, avec des références à Delphi et Pascal et à l'influence de l'état CheckBox1.Checked sur les conditions de test. Différentes propositions évoquent des méthodes simples comme CheckBox1.Checked := true; et soulignent que le choix de langage (Delphi, Pascal) détermine les syntaxes et les tests conditionnels. D'autres échanges présentent des exemples d'impression et de calculs, ou des questions sur l'intégration dans des tableaux dimensionnels, montrant que la discussion couvre aussi des aspects pratiques hors de la programmation directe. D'autres éléments mentionnent des cas d'utilisation variés, comme l'écriture dans un fichier ou l'envoi d'instructions à l'imprimante, élargissant la portée des exemples sans conclure.
-
ou je me adresse .
-
un tableau avec des lignes et des colonnes , et les données seront saisir dedans
-
Ah bon! Oui tout est possible, c'est juste plus long et compliqué à programmer.
Il faut connaitre les codes ASCII et la fonction Ord(), la fonction ReadChar() et la commande GotoXY(). Avec ça on peut déplacer le curseur sur l'ecran (ou le tableau) avec les fleches et controler les touches que l'on frappe.
Il y a aussi des fonctions qui controlent la souris, mais chaque chose en son temps.
Documentes-toi déjà sur les fonctions que je t'ai indiqué.
Y.
-
-
merci
ça marcher bien, et comment le faire dans un tableau dimensionner comme on le fait en excel . -
Ton programme avec des tableaux dimensionnés pour 10 notes maxi.
Par contre la sortie sur imprimante ne marche pas chez moi, je ne sais pas pourquoi, je vais chercher, si je trouve je te dirais.
en attendant l'impression se fera dans le fichier c:\fich1.txt que tu peux ouvrir et imprimer le manière classique.
Si tu veux voir l'autre méthode sans tableaux dis le moi.
A+
program calcule_moyenne; uses crt; var i,Nbmod,note,cof,p,s,scof :integer; Tab_Module : array [1..10,0..20] of char; Tab_Note, Tab_coef : array [1..10] of integer; moy :real; M :char; f: text; begin clrscr; textcolor(12); gotoxy(20,4);writeln('Bien Venue dans Notre Programme'); writeln(''); textcolor(15); writeln('entrer le nombre de module'); writeln(''); write('Nembre de module:'); readln(Nbmod); i:=1; p:=1; s:=0; scof:=0; {Saisie des données} for i:=1 to NBmod do begin writeln(''); textcolor(10); writeln('Nom du module:'); writeln(''); {readln(M);} readln (Tab_Module[i]); writeln(''); textcolor(15); write(' note:='); {readln(note); } readln (Tab_Note[i]); write(' coef:='); {readln(cof); } readln (Tab_coef[i]); end; {Calcul de la moyenne} for i:=1 to NBmod do begin {p:=note*cof; } p:=Tab_Note[i]*Tab_coef[i]; s:=s+p; {scof:=scof+cof; } scof:=scof+Tab_coef[i]; moy:=s/scof; end; {Impression des resultats} writeln(''); textcolor(3); writeln('la moyenne est:',moy:0:2); writeln(''); if (moy>=10) then write('eleve admet') else begin if (moy<10) and (moy >5) then write('eleve doit passer par rattrapage') else if moy<5 then write('eleve exclus'); end; {Impression sur Imprimante} writeln(''); write ('Voulez-vous une impression sur l''imprimante (O/N) :'); readln (M); if (M='O') or (M='o') then begin {assign(f,'prn:');} assign(f,'c:\fich1.txt'); rewrite(f); writeln(f,'Bien Venue dans Notre Programme'); writeln(f,''); writeln(f,'Nombre de module:',Nbmod); writeln(f,''); for i:=1 to NBmod do begin writeln(f,'Nom du module:',Tab_Module[i]); writeln (f,'Note:',Tab_Note[i]); writeln (f,'Coef:',Tab_coef[i]); writeln(f,''); end; writeln(f,'La moyenne est:',moy:0:2); writeln(f,''); if (moy>=10) then writeln(f,'eleve admis') else begin if (moy<10) and (moy >5) then writeln(f,'eleve doit passer par rattrapage') else if moy<5 then writeln(f,'eleve exclus'); end; close(f); end; writeln('Fin du Programme'); end. -
j'ai pas encore appris ça ,
et votre deuxième proposition sincèrement j'ai pas arriver de le faire
il me faut un départ avec un exemple préalablement fait et a partir de la je me développe, même pour les tableaux je sais comment faire déclarer un tableaux t: array [1..100] of integer;
et comment faire la somme de deux tableau ...ect , mais je sais pas comment tracer un tableau dans pascal je veux bien le savoir,
et a part ça comme tu veut m'aider je vais vous expliquer ma situation , cette formation je le fait sous forme cours de soir , je suis fonctionnaire dans une société prive, je vous contacte de mon bureau ,j'ai pas le temps pour assister tous les heurs c'est pourquoi je compte et- je cherche sur le forum pour l'aide,
le proverbe dit deux n'apprend jamais l'arrogant et le timide. -
Bonjour,
En lisant le programme, on peut le decomposer en 3 parties
- Saisie des données
- Calcul de la moyenne
- Impression des resultats
Tu as déjà les deux premières, il manque la troisième qui va réutiliser les données saisies et le resultat de la moyenne.
Pour cela tu dois mémoriser les données saisies dans des tableaux différents pour chaque données: Tab_Module; Tab_Note; Tab_Coef.
Est-ce tu à déja appris les tableaux? Si oui, tu peux bien structurer le programme.
Sinon, tu dois poser la question 'Voulez-vous une Impresion? Oui/Non:' avant de commencer la saisie et faire les impressions ecran et imprimante en même temps.
A+ -
bonjour,
voila un exp, ça c'est mon propre programme
comme vous voyez le programme calcule la moyenne ,
j'ai utiliser la boucle pour que le programme sera pas limiter pour un sel utilisateur
program calcule_moyenne;
uses crt;
var i,Nbmod,note,cof,p,s,scof :integer;
moy :real;
M :char;
begin
clrscr;
textcolor(12);
gotoxy(20,4);writeln('Bien Venue dans Notre Programme');
writeln('');
textcolor(15);
writeln('entrer le nombre de module');
writeln('');
write('Nembre de module:');
readln(Nbmod);
i:=1;
p:=1;
s:=0;
scof:=0;
for i:=1 to NBmod do
begin
writeln('');
textcolor(10);
writeln('Nom du module:');
writeln('');
readln(M);
writeln('');
textcolor(15);
write(' note:=');
readln(note);
write(' cof:=');
readln(cof);
p:=note*cof;
s:=s+p;
scof:=scof+cof;
moy:=s/scof;
end;
writeln('');
textcolor(3);
writeln('la moyenne est:',moy:0:2);
writeln('');
if (moy>=10) then
write('eleve admet')
else
begin
if (moy<10) and (moy >5) then
write('eleve doit passer par rattrapage') else
if moy<5 then
write('eleve exclus');
end;
end.
après exécution on obtient ça
Bien Venue dans Notre Programme
entrer le nombre de module
Nembre de module:3
Nom du module:
FICHIER
note:=13
cof:=2
Nom du module:
note:=15
cof:=5
Nom du module:
PASCAL
note:=14
cof:=5
la moyenne est:14.25
élève admet
donc moi je veut imprimer ce statut .. -
est ce qu'il l'imprime directement ou il nous donne le choix .
exp oui ou non
l'essentiel je vais l'appliquer et je vous rendre le compte .-
Je crois que ce n'est pas tres clair dans ta tête.
Le programme ne décide rien tout seul, il est bête, il fait aveuglément tout ce qu'on lui dit de faire, à condition qu'il comprenne ce qu'on lui demande.
Donc si tu veux avoir le choix d'imprimer ou pas, il faut dire au programme de poser la question et d'agir suivant la réponse.
Avant de commencer à ecrire des lignes de code, tu dois faire un ordinogramme pour definir toutes les fonctionnalités du programme, definir tous les branchements logiques.
C'est la partie analyse qui est la plus importante. Après quand on sait comment ça s'articule, c'est facile d'ecrire les procédures et les fonctions.
Je t'ai montré une manière d'imprimer du texte, à toi de voir comment l'intégrer dans ton programme, parce que moi je ne sais pas ce que t'as fait.
Y.
-
-
je m'excuse de retard ..... interruption de net ..
j'ai un programme qui calcule une facture, après l'entrée des données il me donne le résultat .... donc a la fin comment peut-on imprimer cette cette facture.-
Dans la section de déclaration des variables tu dois rajouter:
f: text;
ça veut dire que tu déclares une variable de type fichier texte.
Ensuite dans le corps du programme (après begin) tu rajoutes:assign(f,'prn:'); rewrite(f);
ça veut dire que tu affectes le fichier logique prn: (imprimante) à la variable f, et tu ouvres le fichier.
Ensuite tu répètes les même instructions write et writeln du programme qui doivent etre imprimées en ajoutant le fichier logique désigné par la variable f. Par exemplewriteln('Hello world!'); {cette ligne est imprimée à l'écran} writeln(f,'Hello world!'); {cette ligne est imprimée sur f, c'est à dire l'imprimante}
Enfin tu termines en fermant le fichier logique f, avant de sortir du programme.close(f);
Y.
-
-
j'écris ça a la fin du programme ?
-
bonjour,
est ce que on peut faire une commande d'impression dans un programme pascal -
j'ai compris, ces ajouts mon bien aider .. tu sait il y a beaucoup des questions et des aider dans ma tête , certain institut ne donnent peu, c'est pour ça je cherche des améliorations
-
bonjour les amis
merci beaucoup, c'est l'affichage qui je cherche,
est ce que vous pouvez m'expliquer la syntaxe write(i:4)
et a quoi sert les {} -
pour moi la commande GOTOXY l'enseignant nous a dit que vous allez l'apprendre a partir ce moi de mars donc c'est nécessaire de la connaitre,
je vais appliquer d'abord cette dernière et je revient .. salut . -
après l'exécution j'ai obtenu ça
1 2 3 4 5 6 7 8 9 10
1 1 2 3 4 5 6 7 8 9 10
2 2 4 6 8 10 12 14 16 18 20
3 3 6 9 12 15 18 21 24 27 30
4 4 8 12 16 20 24 28 32 36 40
5 5 10 15 20 25 30 35 40 45 50
6 6 12 18 24 30 36 42 48 54 60
7 7 14 21 28 35 42 49 56 63 70
8 8 16 24 32 40 48 56 64 72 80
9 9 18 27 36 45 54 63 72 81 90
10 10 20 30 40 50 60 70 80 90 100
est ce que on peut obtenir l'affichage suivant
1*1=1 2*1=2 ............ ect ....
1*2=2 .........
1*3=3 .........
..........-
Sur la console, l'affichage doit etre bien aligné, mais c'est bien la table de mutiplication comme on nous l'a enseigné en primaire.
Pour faire plus présentable on peut tracer des traits horizontaux et verticaux, mais je te laisse faire.
L'autre affichage se fait de la même façon, en inversant i et j, pas besoin de GOTOXY mais ça dépasse les 80 colonnes de la console. Pour éviter ça on va de 1 à 9.
uses crt;
var i,p,j :integer;
begin
clrscr;
p:=1;
i:=1;
j:=1;
{write(' ');
for i:=1 to 10 do
begin
write(i:4);
end;
writeln;}
for i:=1 to 10 do
begin
{write(i:4);}
for j:=1 to 9 do
begin
p:=i*j;
write(j:2,'*',i:2,'=',p:2,' ');
{write(p:4);}
end;
writeln;
end;
readln(p);
end.
-
-
donc comment on va le faire ?
-
regarder la boucle suivante
program table_multiplication;
uses crt;
var i,p,j :integer;
begin
clrscr;
p:=1;
i:=1;
j:=1;
for i:=1 to 10 do
for j:=1 to 10 do
begin
p:=i*j;
writeln(i,'*',j,'=',p);
end;
readln(p);
end.
ce programme nous donne les tables de multiplications de 1 à 10
le programme affiche le résultat verticalement
est ce que on peut l'afficher chaque table prêt de l'autre avec des espaces
horizontalement bien reparti -
oui vous avez raison ,je me suis tremper dans une autre chose
voila l'execution
Turbo Pascal Version 7.0 Copyright (c) 1983,92 Borland International
donner le nombre de la suite3
-5
8
-10
le resultat est:-7.0000000000E+00
juste que writeln('le résultat est:',s:0:2); -
j'ai rectifier mais
ce n'est pas le problème -
je suis étudiant informatique option base de données première année......
c'est vous permettez :
comment faire ce programme en pascal
le programme fait la somme des nombre real suivants
exp: (-5) + 8 + (-10) le nombre des chiffre entrer non diterminer
c'est a dire en va travailler avec une boucle
voici ma proposition
program somme;
var i,n :integer;
s,x,r:real;
begin
write('entrer le nombre de la suite');
read(n);
i:=1;
s:=0;
for i:=1 to n do
begin
read(x);
s:=s+x;
end;
writeln('le resultat est:',s);
read(r);
end.
mes le résultat est faux
- 1
- 2