وليكن عندي اربعه اسماء
واريد ان ارتبهم الاسماء حسب الترتيب هجائيا
ما هو الكود اللازم لذلك
استخدمت strcmp ولكن ما مشيت معي
ياليت اشوف حل لهذه المشكله التي ارهقتني
وليكن عندي اربعه اسماء
واريد ان ارتبهم الاسماء حسب الترتيب هجائيا
ما هو الكود اللازم لذلك
استخدمت strcmp ولكن ما مشيت معي
ياليت اشوف حل لهذه المشكله التي ارهقتني
يجب عليك ان تأخد اول حرف من كل اسم و تطابقه مع الذي قبله و هكذا حتي تترتب المصفوفة
راكان الحنيطي
Be Open Source

نفس فكرتي ولكن ما مشي الحال
للرفع
تفضل ولكن لم يشمي الحال
#include<string.h>
#include<iostream.h>
#include<stdio.h>
void main()
{
char *z;
int m,i,j;
char *st[]={"BANAN","ANANAB","NANABN","ANABAN","NABANA",ABANAN"};
m=6;
for(i=0;i<m-1;++i)
for(j=m-1;j<i;--j)
if (strcmp(st[j-1],st[j]>0));
{
z=st[j-1];
st[j-1]=st[j];
st[j]=z;
for(i=0;i<m;++i)
cout<<endl<<st;
}اين الاخوان
رجاء
السلام عليكم
ابشر الحمدلله وصلت بالوقت المناسب
جرب هذا الكود واذا من خطأ اخبرني بارك الله فيك
البرنامج
#include<string.h>
#include<iostream.h>
void main()
{
char String[] [20] = { "HGB","Jass","ALshm ALnary","Khaled","Ahmad","Ali","Yosaf","Sad" };
int i,j,n;
char Temp[20];
//ÍÓÇÈ ÚÏÏ ÇáÚäÇÕÑ
n = sizeof( String ) / sizeof( String[0] );
for( i=0; i<n-1; i++ )
{
for( j=0; j<n-1; j++ )
{
if( strcmp( String[j],String[j+1] ) == 1 )
{
strcpy(Temp,String[j]);
strcpy(String[j],String[j+1]);
strcpy(String[j+1],Temp);
}
}
}
for( i=0; i<n; i++ )
{
cout << String << "\n";
}
}وبالتوفيق.
اللهم علمنا ما ينفعنا وأنفعنا بما علمتنا أنك أنت العليم الحكيم
سبحان الله وبحمده سبحان الله العظيم
لاحول ولاقوة الا بالله( كنز من كنوز الجنة ).
مشكور
ولكن
يرتب على حسب اول حرف
ولايرتب على ترتيبهم جميعا
مثلا
ahmed
ali
المفروض تترتب هكذا يرتب عليها جميعها
السلام عليكم ماشاء الله عليك اخوي السهم نشيط اللهم لا حسد مجهود رائع تشكر عليه
لكن هناك مشكله بسيطه بما انك استخدمت اسامي تتظمن احرف كبيره وصغيره الداله strcmp لديها حساسيه من الاحرف الكبيره والصغيره ولا تتعامل معها بالشكل المطلوب الكود صحيح لو انه استخدام الحروف كبيره او صغيره ولحل هذه المشكله تستبدل الداله بهذه الداله وإن شاء الله يمشي الحال
stricmp
والسلام ختام
السلام عليكم
لاشكر على واجب اخوي celerion ومنك نستفيد
الحقيقة ساستفيد ممما كتبت اقصد الدالة الي عطيتني بسكتبت الكود قبل اقرامشاركتك وعدلت فيه بحيث يقبل حروف كبيرة فقط ويرتبها اليكم التغيير.
#include <iostream.h>
#include <string.h>
void main()
{
char String[] [20] = { "HGB","Jass","Alshm ALnariy","Khaled","Ahmad","Ali","Yosaf","Sad" };
int i,j,n;
char Temp[20];
//حساب عدد العناصر
n = sizeof( String ) / sizeof( String[0] );
for( i=0; i<n-1; i++ )
{
for( j=0; j<n-1; j++ )
{
if( strcmp( strupr( String[j] ) , strupr( String[j+1] ) ) == 1 )
{
strcpy(Temp,String[j]);
strcpy(String[j],String[j+1]);
strcpy(String[j+1],Temp);
}
}
}
for( i=0; i<n; i++ )
{
cout << String << "\n";
}
}وبالتوفيق.
اللهم علمنا ما ينفعنا وأنفعنا بما علمتنا أنك أنت العليم الحكيم
سبحان الله وبحمده سبحان الله العظيم
لاحول ولاقوة الا بالله( كنز من كنوز الجنة ).
هذا الموضوع مغلق.