الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

linked list

بدأه aegr في 19 مارس 2012 · 7 رد · 1,042 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

Write a program to input and print letters of any word

.contains of 6 letters finished with a letter (e), or print other

tmessage if not; by using a linked lis~,'

اكتب برنامج لادخال وطباعة حروف اي كلمة تتكون من 6 حروف ولكن يجب ان تنتهي الكلمة بحرف e او تطبع رسالة خطأ باستخدام linked list

ما هو الخطا؟؟

# include<iostream.h> 
#include<stdlib.h> 
#include<string.h> 
#include<conio.h> 
struct letters { 
char name[1] ; 
struct letters *next;}; 

typedef struct letters *ptr; 
typedef ptr list; 
letters* m(list l,char name[1]){ 
cout<<"rnter char"; 
 cin>>name; 
letters *p; 
p=(letters*)malloc(sizeof(letters)); 
strcpy(p->name,name); 
p->next=l; 
l=p; 
return l;  } 
void  traverse(list  head) 
{ 
letters *p1= head; 
while (p1 !=NULL) 
{cout<<p1->name<<endl; 
p1=p1->next;}} 
void main(){ 
char name[1]; 
cout<<"enter char"; 
cin>> name[1]; 
struct letters*head; 
head=(letters*)malloc(sizeof(struct letters)); 
struct letters *p=head; 
strcpy(p->name,name); 
p->next=NULL; 
 if(name[0]=='e'){ 
for (int i=0;i<6;i++){ 

cin>> name; 
}} 
else if(name[0]!='e'){ 
cout<<"you can not"; 
} 
 traverse(head); 
 head=m(head,name); 

   getch(); 
  }
#2

طيب البرنامج بلغة السي أم سي++؟

وهل مسموح بأستخدام الفئة أو نوع البيانات string ؟

post-15367-027053900%201340345097.gifpost-15367-087183200%201340344597.gif
post-247365-0-10080400-1379403554_thumb.

#3

بلغة c++

ومسموح باستخدام أي شيء باستخدام linked list

#4

السلام عليكم أخى الكريم

لقد تم أنشاء البرنامج وفقا للأعتبارات:

1. البرنامج يقبل اى مدخلات من المستخدم ولكن فقط يأخذ أو 6 حروف فقط.

2. يكون البرنامج قائمة موصولة بجميع الكلمات المدخلة

3.عند طباعة القائمة الموصولة للمستخدم فأن البرنامج يطبع بعد كل كلمة ﻻ تنتهى بحرف e رسالة خطأ

/* 
 * File:   main.cpp
 * Author: Mohammed Auda
 *
 * Created on March 20, 2012, 1:07 PM
 */
#include <iostream>
#include<string.h> 
//#include<conio.h> 

using namespace std;

struct Letters
{
    char name[7];
    struct Letters *next;
};

typedef struct Letters LetterType;

LetterType *NewNode()
{
    cout << "Enter Name <= 6 letters: ";
    string buff;
    LetterType *temp = new LetterType;
    cin >> buff;
    strncpy(temp->name, buff.c_str(), 6);   

    temp->next = NULL;
    return temp;
}

void Traverse( LetterType  *head) 
{
    LetterType *LetterHead = head;
    while (LetterHead != NULL)
    {
        cout << LetterHead->name;
        int strlength = strlen(LetterHead->name);        
        if (LetterHead->name[strlength-1] == 'e')
            cout << " Ok" << endl;
        else
            cout << " Error Not End with e" << endl;

        LetterHead = LetterHead->next;
    }
}

int main()
{
    int Continue = 0;
    LetterType *LtrHead = NULL, *LtrLast = NULL
            , *NewLtr = NULL, *TempLtr = NULL;
    do
    {
        if (LtrHead == NULL)
        {
            LtrHead = NewNode();
            LtrHead->next = NULL;
            LtrLast = LtrHead;
            LtrLast->next = NULL;
        }
        else
        {
            LtrLast->next = NewNode();
            LtrLast = LtrLast->next;
            LtrLast->next = NULL;
        }

        cout << "Add New Node: 1(yes) or for no Enter any number: ";
        cin >> Continue;
    }
    while (Continue == 1);
    Traverse(LtrHead);

     std::cin.get(); //getch();
    return 0;
}

المخرجات:

Enter Name <= 6 letters: lettee
Add New Node: 1(yes) or for no Enter any number: 1
Enter Name <= 6 letters: kkkkkkkkkkkk
Add New Node: 1(yes) or for no Enter any number: 1
Enter Name <= 6 letters: ccccceeeee
Add New Node: 1(yes) or for no Enter any number: 2
lettee Ok
kkkkkk Error Not End with e
ccccce Ok

RUN SUCCESSFUL (total time: 41s)

أدعو الله أن يكون هذا ما تريد وفقنى وأياك لخدمة المسلمين.

تقبل مرورى والله ولى التوفيق

تم تعديل هذه المشاركة بواسطة AudaNix في 20 مارس 2012 في 18:38

post-15367-027053900%201340345097.gifpost-15367-087183200%201340344597.gif
post-247365-0-10080400-1379403554_thumb.

#5

شكرا جزيلا يا أخي على اهتمامك ولكن البرنامج لا يعمل معي

اعتقد انك تطبق على فيجوال سي

انا اعمل على ++Borland c

تم تعديل هذه المشاركة بواسطة aegr في 20 مارس 2012 في 20:29

1 −1
#6
aegr كتب:

شكرا جزيلا يا أخي على اهتمامك ولكن البرنامج لا يعمل معي

اعتقد انك تطبق على فيجوال سي

انا اعمل على ++Borland c

ﻻ يأ اخى انا ﻻ استخدم ويندوز من اﻻساس انا استخدم ابينتو وبيئة برمجة NetBeans

حاولت ان أكتب الكود بشكل قياسي جدا

فضلا ان كتبت لى رسائل الخطأ من المترجم سأكون سعيدا وقادرا على مساعدتك ان شاء الله

تقبل مرورى والله ولى

تم تعديل هذه المشاركة بواسطة AudaNix في 20 مارس 2012 في 23:49

post-15367-027053900%201340345097.gifpost-15367-087183200%201340344597.gif
post-247365-0-10080400-1379403554_thumb.

#7

اسمح لي أخي محمد بإدراج هذه المُداخلة البسيطة :)

اقتباس
انا اعمل على ++Borland c

ما دمت تعمل في بيئة الــ Borland فالكود لن يعمل معك لأن بورلاند ببساطة لا يدعم الفئة string و مساحة الأسماء std.

بالتوفيق.

تم تعديل هذه المشاركة بواسطة khaled_prg في 20 مارس 2012 في 22:22

#8
AudaNix كتب:

ﻻ يأ اخى انا ﻻ استخدم ويدوز من اﻻساس انا استخدم ابينتو وبيئة برمجة NetBeans

انا حاولت ان أكتب الكود بشكل قياسي جدا

فضلا ان كتبت لى رسائل الخطأ من المترجم سأكون سعيدا وقادرا على مساعدتك ان شاء الله

تقبل مرورى والله ولى

جزاك الله خير

اسف على تعبك....

مواضيع مشابهة