Informatique au Lycée Borj Louzir
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Le Deal du moment :
Réassort du coffret Pokémon 151 ...
Voir le deal

BAC 2008/2009

4 participants

Aller en bas

BAC 2008/2009 Empty BAC 2008/2009

Message  Mohamedh hafedh bellil Ven 24 Oct - 22:54

Bonne chance à tous dans ce forum et j'espère que tout va bien pour nous cheers
Mohamedh hafedh bellil
Mohamedh hafedh bellil

Messages : 7
Date d'inscription : 24/10/2008

Revenir en haut Aller en bas

BAC 2008/2009 Empty 4 SI Algo & Programmation

Message  Hanafi Dim 26 Oct - 1:52

Pour reussir il faut travailler, travailler et encore une fois travailler. Bonne chance pour tous les bacheliers de notre lycée Exclamation
Voici un exercice interessant avec les fichiers typés.
Pour un certain modèle de poste radio, une station radio est caractérisée par :
- son nom qui ne dépasse pas 10 caractères.
- sa fréquence d’ondes qui se classe en trois catégories :
  • Ondes Moyennes MW (Medium Wave) ayant des fréquences comprises entre 530 et 1600 khz.
    Ondes Longues LW (Long Wave) ayant des fréquences comprises entre 150 et 280 khz.
    Ondes Courtes SW (Short Wave) ayant des fréquences comprises entre 3200 et 12000 khz.

- sa longueur d’onde exprimée en mètre.
- son code :
  • ‘’LW’’ pour les ondes longues (LW).
    ‘’MW’’ pour les ondes moyennes (MW).
    ‘’SW’’ pour les ondes courtes (SW).


L’utilisation de ce poste est gérée par un programme intitulé RADIO. Les données sont enregistrées dans une mémoire non volatile permettant selon le choix de l’utilisateur de faire les opérations ci-dessous :
1. avoir un espace d’enregistrement dont le chemin et le nom sont fixes.
2. capter (saisir) un certain nombre de stations.
3. vérifier l’existence d’une station par son nom.
4. supprimer une ou plusieurs stations existantes.
5. ajouter une ou plusieurs stations captées.
6. classer les stations par leurs codes en ordre croissant.
7. afficher une ou plusieurs stations par : nom, fréquence, longueur et code.
8. quitter le programme.

QUESTIONS

1. Proposez une structure de données adéquate pour les objets globaux à utiliser.
2. Donner une déclaration algorithmique de ces objets.
3. En utilisant l’analyse modulaire, proposer une analyse du programme principal ainsi que l’analyse de chaque module.

Essayez de le faire en attendant la correction sunny
Hanafi
Hanafi

Messages : 106
Date d'inscription : 25/10/2008

Revenir en haut Aller en bas

BAC 2008/2009 Empty Essai.

Message  Akram Mer 29 Oct - 22:14

Bonjour,
j'ai essayer de résoudre le problème avec Rami essaafi,je veux savoir si la procédure vérifier est juste ou pas:

Procedure verifier ( var f: fiche );
var nm:string;
test:boolean;
begin
writeln ('donner nom');
readln(nm);
reset(f);
test:=false;
while (not eof(f))or(not test) do
begin
read (f,station);
test:= station.nom = nm;
end;
if test then
writeln('Station existante')
else
writeln('Station inexistante');
end;

Merci d'avance.

Akram

Messages : 8
Date d'inscription : 25/10/2008

Revenir en haut Aller en bas

BAC 2008/2009 Empty Radio

Message  Saafi RAMI Lun 3 Nov - 15:35

Voila Mme c'est mon Essai

program Radio;
uses wincrt;

type
enr=record
nom:string [10];
freq:integer;
long:integer;
code:integer;
end;

fiche = file of enr;

tab=array [1..100] of enr;

var
f:fiche;
station:enr;
re:char;
choix:integer;

procedure creation(var f:fiche);
var cond:boolean;
begin
clrscr;
writeln(' *** Création ***');
writeln;
writeln;
rewrite(f);
repeat
with station do
begin
write('Donner le nom du station : ');readln(nom);
repeat
write('Donner la fréquence du station : ');readln(freq);
cond:=((freq>530)and(freq<1600))or((freq>150)and(freq<280))or((freq>3200)and(freq<12000));
until cond;
write('Donner la longuer du station : ');readln(long);
write('Donner le code du station : ');readln(code);
end;
write(f,station);
repeat
write('Vouler vous continuer ? (O/N)');
readln(re);
re:=upcase(re);
until (re='O')or(re='N');
until re='N';
close(f);
end;

procedure affiche(var f:fiche);
begin
clrscr;
writeln(' *** Affichage ***');
writeln;
writeln;
reset(f);
while not eof(f) do
begin
read(f,station);
with station do
writeln('Nom: ',nom,' | Fréquence : ',freq,' | Longueur : ',long,' | Code : ',code);
end;
close(f);
readln;
end;

function position(var f:fiche;x:string):integer;
var test:boolean;
begin
reset(f);
test:=false;
while (not eof(f))and(not test)do
begin
read(f,station);
test:=((station.nom)=x);
end;
if test then
position:=filepos(f)-1
else
position:=-5;
end;

procedure verifier(var f:fiche);
var
x:string;
begin
clrscr;
writeln(' *** Verification ***');
writeln;
writeln;
write('Donner le nom du station a chercher : ');readln(x);
if position(f,x)<>-5 then
writeln('Chaine existante')
else
writeln('Chaine inexistante');
readln;
end;

procedure supprimer(var f:fiche);
var
x:string;
p:integer;
begin
clrscr;
writeln(' *** suppression ***');
writeln;
writeln;
write('Donner le nom du station a supprimerr : ');readln(x);
p:=position(f,x);
if (p<(filesize(f)+1))and(p>-1 )then
begin
if p<>filesize(f)-1 then
begin
p:=p+1;
seek(f,p);
while p<filesize(f) do
begin
seek(f,p);
read(f,station);
seek(f,p-1);
write(f,station);
p:=p+1
end;
end;
seek(f,filesize(f)-1);
end;
truncate(f);
end;

procedure ajout(var f:fiche);
var cond:boolean;
begin
clrscr;
writeln(' *** Ajout ***');
writeln;
writeln;
reset(f);
seek(f,filesize(f)-1);
repeat
with station do
begin
write('Donner le nom du station : ');readln(nom);
repeat
write('Donner la fréquence du station : ');readln(freq);
cond:=((freq>530)and(freq<1600))or((freq>150)and(freq<280))or((freq>3200)and(freq<12000));
until cond;
write('Donner la longuer du station : ');readln(long);
write('Donner le code du station : ');readln(code);
end;
write(f,station);
repeat
write('Vouler vous continuer ? (O/N)');
readln(re);
re:=upcase(re);
until (re='O')or(re='N');
until re='N';
close(f);
end;

procedure tri(var t:tab;n:integer);
var
i:integer;
test:boolean;
begin
clrscr;
writeln(' *** Tri ***');
writeln;
writeln;
write('tri des stations en cours ');
repeat
test:=true;
for i:=1 to n-1 do
if (t[i].code)>(t[i+1].code) then
begin
station:=t[i];
t[i]:=t[i+1];
t[i+1]:=station;
test:=false;
write('_');
end;
until test;
end;

procedure croissant(var f:fiche);
var
i,n:integer;
t:tab;
begin
clrscr;
writeln(' *** Tri ***');
writeln;
writeln;
write('lecture du fichier en cours.');
reset(f);
i:=0;
while not eof(f) do
begin
i:=i+1;
read(f,t[i]);
write('_');
end;
n:=i;
tri(t,n);
clrscr;
writeln(' *** Tri ***');
writeln;
writeln;
write('ecriture du fichier en cours.');
reset(f);
for i:=1 to n do
write(f,t[i]);
close(f);
end;

begin
assign(f,'c:\4SI\XXX');
repeat
clrscr;

writeln(' ******POSTE RADIO******');
writeln;writeln;writeln;
writeln('Appuyer sur -1- pour capter des stations.');
writeln('Appuyer sur -2- pour verifier l''existance d''une station.');
writeln('Appuyer sur -3- pour supprimer une station.');
writeln('Appuyer sur -4- pour ajouter une ou plusieur stations.');
writeln('Appuyer sur -5- pour trier les stations par leurs codes.');
writeln('Appuyer sur -6- pour afficher des stations.');
writeln('Appuyer sur -7- pour quitter la poste radio.');
writeln;
repeat
write('Quel est votre choix ? ');readln(choix);
until choix in[1..7];
case choix of
1:creation(f);
2:verifier(f);
3: supprimer(f);
4:ajout(f);
5:croissant(f);
6:affiche(f);
end;
until choix=7;
clrscr;
write(' POSTE RADIO fermé.');
end.
Saafi RAMI
Saafi RAMI

Messages : 37
Date d'inscription : 16/10/2008
Age : 33

http://www.imraude.skyrock.com

Revenir en haut Aller en bas

BAC 2008/2009 Empty Exercice radio

Message  Hanafi Mar 4 Nov - 0:27

Bravo, Rami !!! Très bien ! Continue comme ça et BAC fi jibik Exclamation Une petite remarque concernant la saisie du code - plus juste vont être d'affecter par les valeurs "LW" ou "MW" ou "LW" en fonction de fréquence ( avec SI (frequence>=150) ET (frequence<=280) Alors
Code <--'LW' etc...)
Voici les liens vers la correction - analyse : http://www.usaupload.net/d/blhxkpf2bjw et pour un programme en Pascal : http://www.usaupload.net/d/voi5yz5o06j Bonne continuation, Rami et tous les élèves de 4SI Laughing
Voila un document interessant pour la gestion des erreurs : http://img42.xooimage.com/files/c/4/8/annexe-1-7b32b9.pdf
Hanafi
Hanafi

Messages : 106
Date d'inscription : 25/10/2008

Revenir en haut Aller en bas

BAC 2008/2009 Empty Re: BAC 2008/2009

Message  Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum