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

المقارنة بين عناصر المصفوفة ..~

بدأه الحاسوبجية ..~ في 23 مايو 2012 · 9 رد · 900 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركآتهـ

صباحكم|| مساؤكم توفيق وبركة

لو سمحتو أنا عندي برنامج أقارن بين عناصر مصفوفة ~> قمت بإدخالها .

بحيث أننا نفترض x[0] هي العنصر الذي نقارن بهـ

يساوي عنصر آخر في المصفوفة نطبع Match

وإذا لم يشآبهـ عنصر آخر نكتب Not

وأيضا لو صادف في أثناء المقارنة كلمة End يوقف في المقارنة

ويأخذ العنصر الذي يليهـ ويقارن بيهـ بدل x[0]

وأخيرا إذا صادفهـ في أثناء المقارنة كلمة Quite فإنهـ يخرج من البرنامج

هذا إحدى محاولاتي في كاتبة الكود


#include<string>
using namespace std ;
int main (){
char x[12] ;
cout<<"enter the numbers\n" ;
for(int i=0;i<12;i++)
cin>>x ;

char num=x[0] ;
while(1) {


while(1)
{
for( int i=0;i<12;i++)
{if(num!=x[i+1])
cout<<"not" ;
else if (num=='End')
break ;
else
cout<<"match" ;

}

}
}

return 0 ;
}
 #include<iostream>

#2

عزيزتى الحاسوبجية ..~ :

العناصر كلها أم ان تكون ارقام ارقام أو نصوص نصوص أى من نفس نوع البينات ... فى كلا مصفوفتى المقارنة.

فى هذة الحالة نحن بحاجة الى مصفوفة ذات بعدين لكى تحمل السلاسل النصية مثل end و quit و ... الخ.

تصور المصفوفتين كما يلى:

 char firstlist[3][10] = {"Quit","end","continu"};
    char secondlist[10][25];
    cin >> secondlist[1]; // and so ...

والمقارنة كما يلى:

    strcmp(firstlist[0],secondlist[0]);

أو تستغنى عن هذا كلة وتستخدم الفئة string بدلا من المتغير char وفقك الله والله من وراء القصد

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

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

#3

أخي AudaNix

أنا جربت وبدلت الـ char بـ string

لكن في أخطاء أجهلها في البرنامج ولم أعرفها أتمنى مساعدتكـ أخي العزيز ^^


#include<string>
using namespace std ;
int main (){
strring x[12] ;
cout<<"enter the numbers\n" ;
for(int i=0;i<12;i++)
{
cin>>x ;

}
string num=x[0] ;
while(num!='Quite') {


while(num!='End')
{
for(int i=0;i<12;i++)
{if(num!=x[i+1])
cout<<"not" ;
else
cout<<"match" ;

}

}
}

return 0 ;
}
 #include<iostream>

#4

أنتبة علامتى التنصيص الفردية للحرف الواحد مثل 'x' ، '1'

لكن النصوص هكذا "يييي" ، "moahme"

اليك هذا الكود من فضلك دقق فية النظر وارجع لن التغذية المرتجعة

#include<iostream>
#include<string>
using namespace std;

int main()
{
    string number_list[12];
    for (int i = 0; i < 12; i++)
    {
        cout << "enter the numbers: " << i + 1 << " : ";
        cin >> number_list;
    }

    string num = number_list[0];
    while (num != "Quite")
    {
        while (num != "End")
        {
            for (int i = 0; i < 12; i++)
            {
                if (num != number_list[i + 1])
                    cout << "Not" << endl;
                else
                    cout << "Match" << endl;
            }
        }
    }
    return 0;
}

والله من وراء القصد:

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

#5
AudaNix كتب:

أنتبة علامتى التنصيص الفردية للحرف الواحد مثل 'x' ، '1'

لكن النصوص هكذا "يييي" ، "moahme"

اليك هذا الكود من فضلك دقق فية النظر وارجع لن التغذية المرتجعة


#include<string>
using namespace std;

int main()
{
string number_list[12];
for (int i = 0; i < 12; i++)
{
cout << "enter the numbers: " << i + 1 << " : ";
cin >> number_list;
}

string num = number_list[0];
while (num != "Quite")
{
while (num != "End")
{
for (int i = 0; i < 12; i++)
{
if (num != number_list[i + 1])
cout << "Not" << endl;
else
cout << "Match" << endl;
}
}
}
return 0;
}
#include<iostream>

والله من وراء القصد:

جزآك الله خير ما كنت أعرف عن علامة التنصيص أتوقعت تكون مشابعة لـ char

واجهتني مشكلتين في البرنامج :

الأولى أن اللوب غير منتهي ولا يتوقف عند كلمة End أو Quite

الثانية كيف لي أن أقارن مرة أخرى بالعدد الذي يلي End

محتاجة مساعدتكـ اخي جداً وجزآك الله خير الله يزيدكـ من فضلهـ وعلمهـ

#6

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

#7

أختى من فضلك أكتبى توصيف للمشكلة فى صورة سؤال؟ ويفضل أن أضفتى السؤال كما هو مطلوب منك أذا كنتى تريدين الحل لكن بصراحة انا بحاول افهم مشاركة الاولى استغرقت منى وقت طويل والمشكلة بسيطة واعدك اننى سأحاول

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

#8

جزآكـ الله خير ويجعلهـ في موازين حسنآتكـ ويفتح لكـ أبواب الخير كلها

وتفضل ياأخي هذا السؤال حق المشروع

اقتباس

Description

In Computer Science, pattern matching is the act of checking if a certain sequence conforms

(matches) a given pattern. Patterns are usually specified using a language based on regular

expression. In this problem, we’ll use a simple regular expression to express patterns on sequences

of decimal digits. A pattern is a sequence of one or more decimal digits ’0’. . . ’9’, asterisks ’*’,

and hash signs ’#’. A ’*’ denotes a sequence of an even number of digits, whereas a ’#’ denotes

a sequence of an odd number of digits. For example, the pattern "129" only matches the sequence

129. The pattern "1*3" matches all sequences beginning with 1, ending with 3, and having an

even number of decimal digits between the first and last digits. As another example, the pattern

"#55" matches the sequences 155, 12355, 1234555, but none of the sequences 55, 1255, 123455.

Your task is to write a program to find if a given sequence matches a given pattern.

Input Format

Your program will be tested on one or more data sets. Each data set contains a single pattern

and one or more sequences to match. The first line of each data set specifies the pattern, and

the remaining lines specify the sequences to match against that pattern. The end of a data set

(except the last) is identified by the word "END" (without the double quotes.) The end of the last

data set is identified by the word "QUIT". All lines are 100,000 characters long or shorter.

Output Format

k.s.result

Where k is the test case number (starting at one,) and s is the sequence number (starting at

one within each test case,) and result is either the word "match" if the given string matches the

pattern, or the word "not" if it doesn’t.

#10
AudaNix كتب:

أخي جزآك الله خير

فتحت الرآبط لكن جداً معقد وأنا مبتدئة في البرمجة

أتمنى إفآدتي بشكل أبسط وأسهل

جعلهـ الله في موآزين حسنآتكـ :)

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…