PDA

View Full Version : مبتدی: فهمیدن بزرگتری و کوچکی بین اعداد



Mr.305
چهارشنبه 28 آبان 1393, 15:03 عصر
سلام دوستانم حسته نباشید
من تو c و ++c خیلی تازه کارم الان میخام بفهمم چطور میشه مثلا از بین ده عدد کوچکترین و بزرگترینش رو جدا کرد
یا مثلا چند تا عدد از ورودی گرفت و ریخت توی آرایه و بعد بترتیب مرتبشون کرد
کلا میخام مرتب کردن اعداد رو یادبگیرم
لطفا در حد مغز ما و با کامنت بگید باتشکر:قلب:

sa1378
چهارشنبه 28 آبان 1393, 15:47 عصر
#include <iostream>
using namespace std;
int main ()
{
int n,a[10];
cin>>n; // toole arraye
for(int i=0;i<n;i++)
cin>>a[i]; // azaaye arraye


////////////////// min ///////////////////

int minim=1000000; // kochektarin addad ro mirizim toosh
for(int i=0;i<n;i++)
if(a[i]<minim) // age ozve i om az koochektarin ozv koochektar bood pas in ozv koochektarine
minim=a[i];
cout<<"min "<<minim<<endl;

////////////////// max //////////////////


//baraye bozorgtarin ham mesle ghabli
int maxim=0;
for(int i=0;i<n;i++)
if(a[i]>maxim)
maxim=a[i];
cout<<"max "<<maxim<<endl;


///////////////// sort //////////////////

// in algorime sort kardan hast ke ye serch to net koni tozih kamel miad
int ezafi;
for(int i=n-1;i>=0;i--)
{
for(int j=i+1;j<n;j++)
{
if(a[j-1]>a[j])
{
/// jashoon ro avaz mikonim
ezafi=a[j-1];
a[j-1]=a[j];
a[j]=ezafi;
}
}
}
// chaap kardan araye sort shode
for(int i=0;i<n;i++)
cout<<a[i]<<" ";

return 0;
}

Mr.305
چهارشنبه 28 آبان 1393, 18:24 عصر
using namespace ینی چی و به چکاری میاد
حلقه for رو برام توضیح میدین ک چجوری کار میکنه

sa1378
چهارشنبه 28 آبان 1393, 19:32 عصر
usingnamespace ینی چی و به چکاری میاد
حلقه for رو برام توضیح میدین ک چجوری کار میکنه

بعضی کامپایلر ها یا همون جایی که توش برنامه مینویسین به دستور using namespace std; نیاز دارن(مثل Dev C++ ) ولی مثلا Turbo C++ احتیاج نداره به این

حلقه های تکرار رو هم (مثل for) از اینجا (http://www.algorithmha.ir/post-%D8%AD%D9%84%D9%82%D9%87-%D9%87%D8%A7%DB%8C-%D8%AA%DA%A9%D8%B1%D8%A7%D8%B1-%D8%AF%D8%B1-%D8%B3%DB%8C-%D9%BE%D9%84%D8%A7%D8%B3-%D9%BE%D9%84%D8%A7%D8%B3.aspx) بخونین.

Mr.305
پنج شنبه 29 آبان 1393, 14:52 عصر
حالا اگه بخاد فقط عدد کوچیک و بزرگ رو نشون بده باید چیکار کرد

sa1378
پنج شنبه 29 آبان 1393, 20:34 عصر
حالا اگه بخاد فقط عدد کوچیک و بزرگ رو نشون بده باید چیکار کرد

کد رو براتون قسمت بندی کرده بودم
کافیه فقط قسمت sort رو حذف کنین:
#include <iostream>
using namespace std;
int main ()
{
int n,a[10];
cin>>n; // toole arraye
for(int i=0;i<n;i++)
cin>>a[i]; // azaaye arraye


////////////////// min ///////////////////

int minim=1000000; // kochektarin addad ro mirizim toosh
for(int i=0;i<n;i++)
if(a[i]<minim) // age ozve i om az koochektarin ozv koochektar bood pas in ozv koochektarine
minim=a[i];
cout<<"min "<<minim<<endl;

////////////////// max //////////////////


//baraye bozorgtarin ham mesle ghabli
int maxim=0;
for(int i=0;i<n;i++)
if(a[i]>maxim)
maxim=a[i];
cout<<"max "<<maxim<<endl;


return 0;
}