منتدى الإعلام الآلي يشمل دروس، تمارين وحلول

إضافة رد
قديم 08-12-2012, 09:43 AM
  #11
djwy
 
La spécialité: Informatique
جامعة أحمد دراية أدرار
تاريخ التسجيل: 22-10-2011
المشاركات: 47
djwy
افتراضي رد: برنامج,بلفةc أرجو تصحيح الأخطاء!

شكرا أخي وليد على المساعدة لقد أتممت كتابة الكود بطريقة صحيحة.....شكرا على العون جعلها الله في ميزان حسناتك :
كود:
/***********************************/ /**Nom: **/ /**Prenom: **/ /**********************************/ #include<stdio.h> #include <conio.h> #include <stdlib.h> typedef struct S_ElementFile{ int info ; struct S_ElementFile* suivant ; }ElementFile; int i, choix ; int FileActuelle ; ElementFile* TeteFile[5] ; ElementFile* QueueFile[5] ; /* Procédure 1 */ void AfficherNumero() { printf("Numero de la file actualle:%d\n",FileActuelle); } /* Procedure 2 */ void ChangerFile() { int chang; do{ printf("\n entre nombre de file\n ") ; scanf("%d",&chang); }while((chang >5)||(chang<1)); i=chang ; FileActuelle = chang ; printf("vous etez dans la file %d\n",FileActuelle); } /* Procedure 3 */ void AjouterElement() { printf ("dans quelle file vous voulez ajoute cet nouveau element\n"); printf("entre nombre de file entre 1...5 que vous avez ajoute cet nouveau element :\n "); scanf("%d",&i); ElementFile* nouv = malloc(sizeof(ElementFile)); printf("entrer la valeur que vous ajoutez dans la liste\n"); scanf("%d",&nouv->info); if (TeteFile[i]==NULL){ printf("la file est vide alors cette nouveau element est le premier element"); TeteFile[i]=nouv; QueueFile[i]=nouv; nouv->suivant=nouv; } else{ QueueFile[i]->suivant=nouv; QueueFile[i] = nouv; QueueFile[i]->suivant=NULL; FileActuelle=i; } } /* Procedure 4 */ void RetirerElement() { printf ("dans quelle file vous voulez retiré un element\n"); printf("entre nombre de file entre 1 _ 5 que vous avez retiré le element : \n"); scanf("%d",&i); if (TeteFile[i]==NULL) printf("\nla file est vide\n "); else { ElementFile* nouv= malloc(sizeof(ElementFile)); nouv = TeteFile[i]; printf("l\"element que va retire est:\n %d",TeteFile[i]->info); free(TeteFile[i]); TeteFile[i]=nouv->suivant; FileActuelle=i; } } /*Procedure5*/ void AfficherElements(){ ElementFile* liste; int no=0; printf("entre nombre de file que vous voulez afficher\n "); scanf("%d",&i); FileActuelle=i; liste=TeteFile[i]; while(liste!=NULL){ printf("%d",liste->info); liste=liste->suivant; no++; } } /*Programme Pricipale*/ int main (){ /*Initisation*/ FileActuelle = 0; for( i= 0 ; i<5 ;i++){ TeteFile[i] = NULL; QueueFile[i]= NULL; } do { printf("\n*************************************************************************\n"); printf("\n* 1- Afficher le numéro de la file actuelle *\n"); printf("\n* 2- Changer la file actuelle *\n"); printf("\n* 3- Ajouter un élément dans la file actuelle *\n"); printf("\n* 4- Retirer un élément de la file actuelle *\n"); printf("\n* 5- Affichage de la file actuelle *\n"); printf("\n* 0- Quitter *\n"); printf("\n*************************************************************************\n"); printf("\n Introduisez votre choix: \n"); /* Lire le choix*/ scanf("%d",&choix); switch (choix){ case 1: AfficherNumero(); break; case 2: ChangerFile(); break; case 3: AjouterElement(); break; case 4: RetirerElement(); break; case 5: AfficherElements(); break; } }while(choix!=0); return(0);}
djwy غير متواجد حالياً  
رد مع اقتباس
قديم 09-12-2012, 01:07 PM
  #12
وَليد
VIP_MEMBRE
 الصورة الرمزية وَليد
 
La spécialité: Autres
مؤسسة تعليم متوسط ( متوسطة )
تاريخ التسجيل: 25-12-2010
المشاركات: 1,440
وَليد عضو محترف الابداعوَليد عضو محترف الابداعوَليد عضو محترف الابداعوَليد عضو محترف الابداعوَليد عضو محترف الابداعوَليد عضو محترف الابداعوَليد عضو محترف الابداعوَليد عضو محترف الابداعوَليد عضو محترف الابداعوَليد عضو محترف الابداعوَليد عضو محترف الابداع
افتراضي رد: برنامج,بلفةc أرجو تصحيح الأخطاء!



السلام عليكم ورحمة الله


جيد أخيـ , فقط هناك خطأ بسيط في الدالة رقم 3

مثلا ان قمنا باضافة عنصر : مثلا رقم 0

المشكل عند اظهار المحتوى
أنظر النتيجة




التصحيح


كود:
/* Procedure 3 */

void AjouterElement() {
printf ("dans quelle file vous voulez ajoute cet nouveau element\n");

printf("entre nombre de file entre 1...5 que vous avez ajoute cet nouveau element :\n ");
scanf("%d",&i);
ElementFile* nouv = malloc(sizeof(ElementFile));

    printf("entrer la valeur que vous ajoutez dans la liste\n");
    scanf("%d",&nouv->info);
    if (TeteFile[i]==NULL){
        printf("la file est vide alors cette nouveau element est le premier element");
    TeteFile[i]=nouv;
    QueueFile[i]=nouv;
    nouv->suivant=NULL;
       }
  else{
 QueueFile[i]->suivant=nouv;
 QueueFile[i] = nouv;
  QueueFile[i]->suivant=NULL;
FileActuelle=i;
    }
      }
بعد التصحيح قمت باضافة 3 عناصر وهي 0 , 1 و 2

أنظر النتيجة





التعديل الأخير تم بواسطة وَليد ; 09-12-2012 الساعة 01:13 PM
وَليد غير متواجد حالياً  
رد مع اقتباس
قديم 09-12-2012, 01:12 PM
  #13
وَليد
VIP_MEMBRE
 الصورة الرمزية وَليد
 
La spécialité: Autres
مؤسسة تعليم متوسط ( متوسطة )
تاريخ التسجيل: 25-12-2010
المشاركات: 1,440
وَليد عضو محترف الابداعوَليد عضو محترف الابداعوَليد عضو محترف الابداعوَليد عضو محترف الابداعوَليد عضو محترف الابداعوَليد عضو محترف الابداعوَليد عضو محترف الابداعوَليد عضو محترف الابداعوَليد عضو محترف الابداعوَليد عضو محترف الابداعوَليد عضو محترف الابداع
افتراضي رد: برنامج,بلفةc أرجو تصحيح الأخطاء!


قم بتجربة البرنامج لاكثر من حالة للتحقق من برنامجكـ

بالتوفيق أخي

وأعتذر منك ان كنت قد قصرت معكـ في أي نقطة

[سلام]

وَليد غير متواجد حالياً  
رد مع اقتباس
قديم 09-12-2012, 03:20 PM
  #14
djwy
 
La spécialité: Informatique
جامعة أحمد دراية أدرار
تاريخ التسجيل: 22-10-2011
المشاركات: 47
djwy
افتراضي رد: برنامج,بلفةc أرجو تصحيح الأخطاء!

شكرا لك وليد على التصحيح ,,,,أريد أن أسألك هل من طريقة لتشعيل البرنامج دون إضافة <stdlib.h> وبدل استعمال int main نضع void main بدون return() فأنا كتبت البرنامج على codeblocks وعند إضافة الدالة clrscr()كتب لي erreurولم يعمل الرنامج
djwy غير متواجد حالياً  
رد مع اقتباس
قديم 09-12-2012, 05:35 PM
  #15
وَليد
VIP_MEMBRE
 الصورة الرمزية وَليد
 
La spécialité: Autres
مؤسسة تعليم متوسط ( متوسطة )
تاريخ التسجيل: 25-12-2010
المشاركات: 1,440
وَليد عضو محترف الابداعوَليد عضو محترف الابداعوَليد عضو محترف الابداعوَليد عضو محترف الابداعوَليد عضو محترف الابداعوَليد عضو محترف الابداعوَليد عضو محترف الابداعوَليد عضو محترف الابداعوَليد عضو محترف الابداعوَليد عضو محترف الابداعوَليد عضو محترف الابداع
افتراضي رد: برنامج,بلفةc أرجو تصحيح الأخطاء!

اقتباس:
المشاركة الأصلية كتبت بواسطة djwy مشاهدة المشاركة
شكرا لك وليد على التصحيح ,,,,أريد أن أسألك هل من طريقة لتشعيل البرنامج دون إضافة <stdlib.h> وبدل استعمال int main نضع void main بدون return() فأنا كتبت البرنامج على codeblocks وعند إضافة الدالة clrscr()كتب لي erreurولم يعمل الرنامج

السلام عليكم ورحمة الله

عفوًا أخي , بالنسبة للدالة main

الدالة في الاصل ترجع قيمة صحيحة nombre entier

عندما نكتب void قبل الدالة يعني ان الدالة لا تقوم بارجاع اي قيمة , وبالتالي نستغني عن () return


اذا نعم بالطبع يمكنك استعمال الصيغة الثانية وذلك لن يغير شئ الكود صحيح

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

كود:
<stdlib.h>
لا , لا يمكنك الاستغناء عن المكتبة
باختصار لانك تستخدم الدالة malloc وهي دالة موجودة في مكتبة stdlib.h
ان قمت بالاستغناء عنها فان الدالة malloc تصبح غير معروفة للـ compilateur

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

; () clrscr
الدالة تقوم بحذف كل ما تم إظهاره على الشاشة قبل تطبيق الدالة
clrscr() على حسب ما أضن تستخدم في نطام التشغيل linux
أما على windows وبالتحديد على CodBlocks يمكنك استخدام الدالة



كود:
system("cls");

مجربة وتعمل جيدا


ملاحظة : بالنسبة للمكتبة conio.h


بالنسبة للكود الذي كتبته فأنت في غنى عنها ويمكنك الاستغناء عنها




التعديل الأخير تم بواسطة وَليد ; 09-12-2012 الساعة 05:51 PM
وَليد غير متواجد حالياً  
رد مع اقتباس
قديم 09-12-2012, 05:42 PM
  #16
وَليد
VIP_MEMBRE
 الصورة الرمزية وَليد
 
La spécialité: Autres
مؤسسة تعليم متوسط ( متوسطة )
تاريخ التسجيل: 25-12-2010
المشاركات: 1,440
وَليد عضو محترف الابداعوَليد عضو محترف الابداعوَليد عضو محترف الابداعوَليد عضو محترف الابداعوَليد عضو محترف الابداعوَليد عضو محترف الابداعوَليد عضو محترف الابداعوَليد عضو محترف الابداعوَليد عضو محترف الابداعوَليد عضو محترف الابداعوَليد عضو محترف الابداع
افتراضي رد: برنامج,بلفةc أرجو تصحيح الأخطاء!


بالتوفيق أخيـ ـــــي

[سلام]
وَليد غير متواجد حالياً  
رد مع اقتباس
قديم 12-12-2012, 04:27 PM
  #17
djwy
 
La spécialité: Informatique
جامعة أحمد دراية أدرار
تاريخ التسجيل: 22-10-2011
المشاركات: 47
djwy
افتراضي رد: برنامج,بلفةc أرجو تصحيح الأخطاء!

آمين يا رب العالمين
djwy غير متواجد حالياً  
رد مع اقتباس
إضافة رد

الكلمات الدلالية (Tags)
التصحيح!, بلفةأرجو, برنامج

أدوات الموضوع
انواع عرض الموضوع

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

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

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

المواضيع المتشابهه
الموضوع كاتب الموضوع المنتدى مشاركات آخر مشاركة
من الأخطاء الشائعة في الصلاة‎ MadMax المنتدى الاسلامي العام 10 24-04-2009 10:49 PM
برنامج ErrorSweeper الافضل في تصحيح الاخطاء وتسريع يوسف الضادي منتدى البرامج العام 2 02-01-2009 06:49 PM
أرجو المساعدة(برنامج MS Project) aidaho قسم الإستفسارات و الطّلبات 1 03-10-2008 10:20 AM
أرجو مساعدة في في إجاد برنامج Visual basic 5/6 Elhachmivb قسم الإستفسارات و الطّلبات 8 17-09-2008 01:10 PM
برنامج أبو الحروف aboal7roof برنامج يساعد على تصحيح الكتابة العربية و الإنجليزية samiita منتدى البرامج العام 5 27-08-2008 12:12 PM


الساعة الآن 03:06 AM.