موضوع مميز ملتقى طلاب الاعلام الالي لحل تمارين Algorithmes et programmation en Pascal - الصفحة 33 - منتديات الجلفة لكل الجزائريين و العرب

العودة   منتديات الجلفة لكل الجزائريين و العرب > منتديات الجامعة و البحث العلمي > منتدى الهندسة > قسم الرياضيات و الاعلام الالي

في حال وجود أي مواضيع أو ردود مُخالفة من قبل الأعضاء، يُرجى الإبلاغ عنها فورًا باستخدام أيقونة تقرير عن مشاركة سيئة ( تقرير عن مشاركة سيئة )، و الموجودة أسفل كل مشاركة .

آخر المواضيع

ملتقى طلاب الاعلام الالي لحل تمارين Algorithmes et programmation en Pascal

إضافة رد
 
أدوات الموضوع انواع عرض الموضوع
قديم 2013-05-26, 13:08   رقم المشاركة : 481
معلومات العضو
boughaba mohamed
عضو فعّال
 
إحصائية العضو










افتراضي

السلام عليكم

لقد قمت بإعداد برنامج به 12 عشر تعليمة وقد تمكنت من اتمام 9 تعليمات وباقي 3 فأرجو منكم مساعدتي في اتمامها وجزاكم الله الف خير



1) بروسيدور لحذف عنصر من الجدول supprission

2) بروسيدور إضافة عنصر للجدول insertion

3) بروسيدور عكس قيم الجدول أي قلبها فقط وليس ترتيبها inverser

طبعا بلغة الباسكال او الدلفي وشكرا









 


رد مع اقتباس
قديم 2013-05-29, 19:51   رقم المشاركة : 482
معلومات العضو
lataoui nouradine
عضو مشارك
 
الصورة الرمزية lataoui nouradine
 

 

 
إحصائية العضو










افتراضي

d,i,z,j:integer;

t,f,n:string;
s:array[1..50]of string[1];
function rec(n:string):integer;
begin
d:=length(n);
for i:=1 to d do begin
t:=copy(n,1,1);
s[i]:=t;
n:=copy(n,2,d-i);
writeln('s[',i,']=',s[i]);
end;
end;
begin
readln(n);
rec(n);
end.
لقد حاولت جاهدا وهذا احسن ما قمت به بقي فقط جمع الاعداد لم اعرف كيف اجمعها بحيث اذا جمعت مثلا 8 و9 المفروض تكون النتيجة 17 الا انه يظهر النتيجة 98

لم افهم هذه النقطة جيدا










رد مع اقتباس
قديم 2013-05-29, 19:54   رقم المشاركة : 483
معلومات العضو
lataoui nouradine
عضو مشارك
 
الصورة الرمزية lataoui nouradine
 

 

 
إحصائية العضو










M001 الشكرررررررررررررر

merccccccccccccccccccccccccccccccccccccccccc cccccccccciiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii










رد مع اقتباس
قديم 2013-05-29, 20:58   رقم المشاركة : 484
معلومات العضو
kharbouche
عضو جديد
 
إحصائية العضو










افتراضي ممكن الحل قبل يوم الاحد من فضلكم فانا بحاجة ماسة اليه

لسلام عليكم و رحمة الله ارجوا منكم المساعدة في حل هدا التمرين

objectif principal
r&akiser une application en pascal
objectif intermédiare
- controle des donnees à la saisie
-utilisation des accées séquentiel ou direct aux données
pour mettre à jour est consulter les données.

enoncé du sujet

la comune de constantine dispose du fichiet F_ELECT contenant les donnée concernant
les élécteurs dela commune , il se compose des champs suivant N°=ELECTEUR ,ADRESSE,NOM.PRENOM.DATE_NAISS.N°=CENTRE.N°+bureau

travail a faire

1- les traitements
-ajouter (créer) un nouvel électeur (s'inscrie)
-supprimé un élécteur(changement d'adresse)
-chercher un electeur par nom
-trie le fichier par ordrer alphabétique
2les controles de données
-les NOM et PRENOM ne doivent pas être des chaine.non vident et caractére majuscules.
-sexe('F','M').
-controle date.
3-
créer l'exécutable du programme et rédiger un rapport incluant les algorithme de l'application ainsi que le guide d'utilisation de votre programme.

la carte d'élécteur a le format suivant:


-------------------------------------------

CARTE VOTE

N°=ELECTEUR ...........................

NOM.................................
PRENOM..............................

ADRESSE.............................

N°=CENTRE.......... N°=BUREAU........

----------------------------------------------










رد مع اقتباس
قديم 2013-05-29, 21:09   رقم المشاركة : 485
معلومات العضو
kharbouche
عضو جديد
 
إحصائية العضو










افتراضي

اقتباس:
المشاركة الأصلية كتبت بواسطة boughaba mohamed مشاهدة المشاركة
السلام عليكم

لقد قمت بإعداد برنامج به 12 عشر تعليمة وقد تمكنت من اتمام 9 تعليمات وباقي 3 فأرجو منكم مساعدتي في اتمامها وجزاكم الله الف خير



1) بروسيدور لحذف عنصر من الجدول supprission

2) بروسيدور إضافة عنصر للجدول insertion

3) بروسيدور عكس قيم الجدول أي قلبها فقط وليس ترتيبها inverser

طبعا بلغة الباسكال او الدلفي وشكرا
مرحبا اخي انا اتعلم ايضا الباسكال ممكن اساعدك في هدا البرنامج بالنسبة الى invers قمت بهدا
invers

program string_inverse_mot;
uses crt;
const n=13;
var mot1,mot2:string[n];
l,i :integer;
begin
clrscr;
write('taper un mot de ',n,' caracteres : ');
read (mot1);
l:=length(mot1);
mot2 := mot1[n];
for i:= (l-1) downto 1 do
mot2:=mot2+mot1[i];
writeln(' l"inverse du mot est : ',mot2);
readln;
readln;
end.

suuprission
procedure choix_menu2 (var f:fich; var tableau:tab;var tableau2:tab; var rep3:char);
var
pos_emp,i,j : byte;
begin

Clrscr;
writeln('MENU SUPPRESSION EMPLOYE');
writeln;
writeln;
writeln('Choisir la position de l''employé à supprimer : ');
readln(pos_emp);



reset(f);
for i:=1 to filesize(f) do
begin
read(f, tableau[i]);
tableau2[i].nom :=tableau[i].nom;
tableau2[i].salaire :=tableau[i].salaire;
tableau2[i].tache :=tableau[i].tache;
tableau2[i].journee :=tableau[i].journee ;
end;
for i:= 1 to pos_emp-1 do
begin
rewrite(f);
write(f,tableau2[i]);
end;

seek(f,pos_emp+1);

for i:=pos_emp+1 to filesize(f) do
begin
write(f,tableau2[i]);
end;
close(f);
repeat
write('Opération réussite, voulez-vous revenir au menu principale ? (O/N) : ');
readln(rep3);
until rep3 in ['o','O','N','n'];
clrscr;
end;

او برنامج اخر suppression كالتالي avec la recherche de ça position

PROCEDURE suppression(var f: fic);
var pos, i: integer;
r: enr;
temp: fic;
begin
pos:=saisiepos(f);
assign(temp, 'temp.fic');
rewrite(temp);
reset(f);
{Copie du fichier f dans le fichier temp jusqu'a la position pos-1}
for i:=0 to pos-1 do
begin
seek(f,i);
read(f,r);
write(temp,r);
end;
{Copie du fichier f dans le fichier temp de la position pos+1 a la fin}
for i:=pos+1 to filesize(f)-1 do
begin
seek(f,i);
read(f,r);
write(temp,r);
end;
close(f);
close(temp);
{Suppression de l'ancien fichier f et remplacement par temp}
erase(f);
rename(temp, 'rep.fic');
assign(f, 'rep.fic');
writeln;writeln('Ok.');
pause;
end;









رد مع اقتباس
قديم 2013-05-30, 19:09   رقم المشاركة : 486
معلومات العضو
boughaba mohamed
عضو فعّال
 
إحصائية العضو










افتراضي

اقتباس:
المشاركة الأصلية كتبت بواسطة kharbouche مشاهدة المشاركة
end;
السلام عليكم
شكرا أخي علىاستجابتك لطلبي ولكني وجدت الدوال من قبل وقد قمت بتقديم البرنامج اليوم والحمد لله كان كامل وبما انك جديد في تعلم البرمجة فأرجو ان نتعاون كلينا لإنجاز بعض البرامج









رد مع اقتباس
قديم 2013-05-30, 19:38   رقم المشاركة : 487
معلومات العضو
boughaba mohamed
عضو فعّال
 
إحصائية العضو










افتراضي

بالمناسبة أخي kharbouche الدوال التي انجزتها انت تتعامل مع type string والأمر مختلف مع برنامجي لأني أعمل ب type integer










رد مع اقتباس
قديم 2013-05-30, 20:26   رقم المشاركة : 488
معلومات العضو
you92cef
عضو محترف
 
إحصائية العضو










افتراضي

اقتباس:
المشاركة الأصلية كتبت بواسطة lataoui nouradine مشاهدة المشاركة
d,i,z,j:integer;

t,f,n:string;
s:array[1..50]of string[1];
function rec(n:string):integer;
begin
d:=length(n);
for i:=1 to d do begin
t:=copy(n,1,1);
s[i]:=t;
n:=copy(n,2,d-i);
writeln('s[',i,']=',s[i]);
end;
end;
begin
readln(n);
rec(n);
end.
لقد حاولت جاهدا وهذا احسن ما قمت به بقي فقط جمع الاعداد لم اعرف كيف اجمعها بحيث اذا جمعت مثلا 8 و9 المفروض تكون النتيجة 17 الا انه يظهر النتيجة 98

لم افهم هذه النقطة جيدا
هدا لانك تتعامل
مع
type char ou type string
تدكير
كود:
a,b:integer;
a:=5
b:=2
a+b=7
b+a=7
c,d:string ou char 
c:='4'
d:='5'
'c+d:='45
'd+c='54

a,b:integer
la somme 
a+b=b+a=type integer
c,d char ou string 
c+d<>d+c:=type char ou string
la longuer de resultatat 
est la longuer de c + longeur de d
حاول تصحيح البرنامج









رد مع اقتباس
قديم 2013-05-30, 20:31   رقم المشاركة : 489
معلومات العضو
you92cef
عضو محترف
 
إحصائية العضو










افتراضي

اقتباس:
المشاركة الأصلية كتبت بواسطة kharbouche مشاهدة المشاركة
لسلام عليكم و رحمة الله ارجوا منكم المساعدة في حل هدا التمرين

objectif principal
r&akiser une application en pascal
objectif intermédiare
- controle des donnees à la saisie
-utilisation des accées séquentiel ou direct aux données
pour mettre à jour est consulter les données.

enoncé du sujet

la comune de constantine dispose du fichiet F_ELECT contenant les donnée concernant
les élécteurs dela commune , il se compose des champs suivant N°=ELECTEUR ,ADRESSE,NOM.PRENOM.DATE_NAISS.N°=CENTRE.N°+bureau

travail a faire

1- les traitements
-ajouter (créer) un nouvel électeur (s'inscrie)
-supprimé un élécteur(changement d'adresse)
-chercher un electeur par nom
-trie le fichier par ordrer alphabétique
2les controles de données
-les NOM et PRENOM ne doivent pas être des chaine.non vident et caractére majuscules.
-sexe('F','M').
-controle date.
3-
créer l'exécutable du programme et rédiger un rapport incluant les algorithme de l'application ainsi que le guide d'utilisation de votre programme.

la carte d'élécteur a le format suivant:


-------------------------------------------

CARTE VOTE

N°=ELECTEUR ...........................

NOM.................................
PRENOM..............................

ADRESSE.............................

N°=CENTRE.......... N°=BUREAU........

----------------------------------------------
الاصح انها تبرمج بلغات برمجة اخرى
عموما يمكن برمجتها بالباسكال
باستعمال
enregistrement
et des tableau
باقي الاسئلة لا تختلف كثيرا عن التمارين الخاصة بالجداول
les tableau
تم وضح شرح وتمارين من هدا النوع هنا وموجود روابط خارجية
حاول البدء في برمجتها
ووضع الحل للمساعدة والمناقشة فيه
indication
on utilise des tableau de type record
ou des liste chaineé
les traitement pour resoudre les questiones sont les meme pour les tableau
la difference c'est l'utilissation des champ
t[i]
ou
t[i].nom_etu
par example









رد مع اقتباس
قديم 2013-05-31, 14:41   رقم المشاركة : 490
معلومات العضو
ghost_4d
عضو مميّز
 
إحصائية العضو










افتراضي

في الاجراءات les procedure
متى نقوم بوضع var
ومتى لا نقوم بذلك ؟؟ هل هناك شرط معين ؟؟










رد مع اقتباس
قديم 2013-05-31, 15:51   رقم المشاركة : 491
معلومات العضو
صفوان مازيغ
عضو مجتهـد
 
الصورة الرمزية صفوان مازيغ
 

 

 
إحصائية العضو










افتراضي

Ecrire un sous pgm qui permet de convertir un nbr donné par l'utilisateur à représentation en hexadécimal en utilisant les chaines de caractères










رد مع اقتباس
قديم 2013-05-31, 18:28   رقم المشاركة : 492
معلومات العضو
you92cef
عضو محترف
 
إحصائية العضو










افتراضي

اقتباس:
المشاركة الأصلية كتبت بواسطة ghost_4d مشاهدة المشاركة
في الاجراءات les procedure
متى نقوم بوضع var
ومتى لا نقوم بذلك ؟؟ هل هناك شرط معين ؟؟
بخصوص البروسيدور فهناك نوعان يتعلقان بمناداته
1-pasage par parametre/*/ valeur/*/
2-pasage par variable
----------
Passage par valeur:

La valeur de l’expression passée en paramètre est copiée dans une variable locale. C’est cette variable qui est utilisée pour faire les calculs dans la fonction appelée.
Si l’expression passée en paramètre est une variable, son contenu est copié dans la variable locale. Aucune modification de la variable locale dans la fonction appelée ne modifie la variable passée en paramètre, parce que ces modifications ne s’appliquent qu’à une copie de cette dernière.

Passage par variable:

La deuxième technique consiste à passer non plus la valeur des variables comme paramètre, mais à passer les variables elles-mêmes. Il n’y a donc plus de copie, plus de variable locale. Toute modification du paramètre dans la fonction appelée entraîne la modification de la variable passée en paramètre.
---------------------

ففي الحالة الاولى
فادا تم مناداة بروسيدور بقيمة
فانه يقوم بنسخ هته القيمة في متغير جديد
مثلا
ننادي على بروسيدور بمتغير /*/س/*/ قيمته 5
ففي هده الحالة
يقوم البروسيدور باخد متغير جديد /*/ع/*/ بحيث تكون قيمته قيمة /*/س/*/
يقوم بكل العمليات التي تتعلق مثلا بالبروسيدور
وبالتالي قد تتغير قيمة /*/ع/*/ بححسب العمليات
عند الخروج من البروسيدور نلاحظ ان قيمة /*/س/*/ التي نادينا بها البروسيدور لم تتغير

هته الحالة تستعمل في عرض النتائج مثلا لاننا لا نحتاج الى تعديل

في الحالة الثانية
ادا نادينا بروسيدور بقيمة
فانه يقوم بكل عملياته على القيمة
فادا نادينا البروسيدور بالمتغير /*/س/*/
فان البروسيدور سوف يقوم بكل العمليات على المتغير /*/س/*/
والبتالي فعند الخروج من البروسيدور فان قيمة س قد تتغير

هده الحالة تستعمل مثلا في ترتيب جدول او مصفوفة

شكرا









رد مع اقتباس
قديم 2013-05-31, 18:37   رقم المشاركة : 493
معلومات العضو
you92cef
عضو محترف
 
إحصائية العضو










افتراضي

اقتباس:
المشاركة الأصلية كتبت بواسطة صفوان مازيغ مشاهدة المشاركة
Ecrire un sous pgm qui permet de convertir un nbr donné par l'utilisateur à représentation en hexadécimal en utilisant les chaines de caractères
راجع الردود في هته لصفحة
https://www.djelfa.info/vb/showthread...135321&page=27









رد مع اقتباس
قديم 2013-05-31, 19:26   رقم المشاركة : 494
معلومات العضو
ghost_4d
عضو مميّز
 
إحصائية العضو










افتراضي

مثلا هذا الاجراء ،، هل من خطأفي ما يخص المتغيرات ؟

كود:
procedure triparbulles (t:tab,n:integer); var i,k:integer; var b:booleen;
k:=1; b:=vrai;
tanque b= vai faire
dtq 
b:=faux;
pour i:=1 a n-k faire
dpour
si t[i]>t[i+1] alors
dsi
x:=t[i] ;
t[i]:=t[i+1] ;
t[i+1]:=x
b:=vrai 
fsi
fpour
k:=k+1;
ftq









رد مع اقتباس
قديم 2013-05-31, 23:37   رقم المشاركة : 495
معلومات العضو
you92cef
عضو محترف
 
إحصائية العضو










افتراضي

اقتباس:
المشاركة الأصلية كتبت بواسطة ghost_4d مشاهدة المشاركة
مثلا هذا الاجراء ،، هل من خطأفي ما يخص المتغيرات ؟
كود:
procedure triparbulles (t:tab,n:integer); var i,k:integer; var b:booleen;
k:=1; b:=vrai;
tanque b= vai faire
dtq 
b:=faux;
pour i:=1 a n-k faire
dpour
si t[i]>t[i+1] alors
dsi
x:=t[i] ;
t[i]:=t[i+1] ;
t[i+1]:=x
b:=vrai 
fsi
fpour
k:=k+1;
ftq
نعم
لان البروسيدور يقوم بعمل
permutation
فالتغير يجب ان يكون على القيم الاصلية للمصفوفة وليس على نسخها
les changement ce sont sur les variable de tableau non pas sur leurs copie

-------------------
pour cela on doit choisir passage par valeur /*/ les changement se sont sur les variable
non pas sur les copie
donc
c'est le mot var qui indique sa

كود:


procedure triparbulles (var t:tab,n:integer); var i,k:integer; var b:booleen;
k:=1; b:=vrai;
tanque b= vai faire
dtq 
b:=faux;
pour i:=1 a n-k faire
dpour
si t[i]>t[i+1] alors
dsi
x:=t[i] ;
t[i]:=t[i+1] ;
t[i+1]:=x
b:=vrai 
fsi
fpour
k:=k+1;









رد مع اقتباس
إضافة رد

الكلمات الدلالية (Tags)
ملتقى, الالي, الاعلام, طلاب


تعليمات المشاركة
لا تستطيع إضافة مواضيع جديدة
لا تستطيع الرد على المواضيع
لا تستطيع إرفاق ملفات
لا تستطيع تعديل مشاركاتك

BB code is متاحة
كود [IMG] متاحة
كود HTML معطلة

الانتقال السريع

الساعة الآن 09:29

المشاركات المنشورة تعبر عن وجهة نظر صاحبها فقط، ولا تُعبّر بأي شكل من الأشكال عن وجهة نظر إدارة المنتدى
المنتدى غير مسؤول عن أي إتفاق تجاري بين الأعضاء... فعلى الجميع تحمّل المسؤولية


2006-2024 © www.djelfa.info جميع الحقوق محفوظة - الجلفة إنفو (خ. ب. س)

Powered by vBulletin .Copyright آ© 2018 vBulletin Solutions, Inc