PDA

View Full Version : در مورد ریختن اعداد در آرایه؟



Aliweb
دوشنبه 01 اسفند 1390, 17:39 عصر
سلام
تابع زیر یک عدد تصادفی درست میکنه چطوری میتونم این اعداد در آرایه بریزم؟که هر جا بخوام بتونم استفاده از این آرایه کنم؟
#include<iostream.h>
#include<conio.h>
#include<stdlib.h>
void numbers(void);
int main()
{
numbers();
return 0;
}
void numbers(void)
{
int a[1000];
for(int i=1;i<=1000;i++)
cout<<(1+rand()%5)<<" ";
cout<<endl;
getch();
}

mohammadriano
دوشنبه 01 اسفند 1390, 20:51 عصر
دوست عزیز آرایه خودتون رو خارج از تابع استفاده کنید
بعدش این برنامه نیازی به تابع نداره

#include<iostream.h>
#include<conio.h>
#include<stdlib.h>
int main()
{

int a[1000];
for(int i=0;i<1000;i++)
a[i] =(1+rand()%5);
cout<<(1+rand()%5)<<" ";
cout<<endl;
getch();
}

rezaricky
دوشنبه 01 اسفند 1390, 20:53 عصر
#include <iostream.h>
#include <stdlib.h>
#include <conio.h>
#include <time.h>
void numbers(int arr[],int n)
{
srand(time(NULL));
for(int i=0;i<n;i++)
{
arr[i]=(1+rand()%5);
}
}

int main()
{
int a[1000];
numbers(a,1000);
for(int i=0;i<1000;i++)
cout<<a[i]<<" ";


getch();
return 0;
}

تابع نتیجه رو در ارایه a ذخیره میکنه

Aliweb
سه شنبه 02 اسفند 1390, 22:55 عصر
متشکرم دوستان

برنامه زیر را نگاه کنید چرا خروجی اینطوری هست ؟ اعداد تصادفی را مرتب میکنه

#include <iostream.h>
#include <stdlib.h>
#include <conio.h>
#include <time.h>
void numbers(int arr[],int n)
{
srand(time(NULL));
for(int i=0;i<n;i++)
{
arr[i]=(1+rand()%5);
}
}
void select(int x[],int n)
{
int i,j,item,min;
for(i=0;i<n-1;i++);
{
min=i;
for(j=i+1;j<n;j++)
{
if(x[j]>x[min])
min=j;
item=x[i];
x[i]=x[min];
x[min]=item;
}
}
}
int main()
{
const int n=10;
int a[n];
int b[n],i;
numbers(a,n);
b[n]=a[n];
select(b,n);
for(i=0;i<n;i++)
cout<<b[i]<<" ";
getch();
return 0;
}

rezaricky
چهارشنبه 03 اسفند 1390, 00:17 صبح
کدتو یکبار دیگه بخون
هدفت از این قطعه کد
for(i=0;i<n-1;i++);
و این
b[n]=a[n];
چیه؟
برای ریختن محتوای یک ارایه در ارایه دیگر باید از یک حلقه استفاده کنی
#include <iostream.h>
#include <stdlib.h>
#include <conio.h>
#include <time.h>

void numbers(int arr[],int n)
{
srand(time(NULL));
for(int i=0;i<n;i++)
{
arr[i]=(1+rand()%5);
cout<<arr[i]<<" ";
}
cout<<endl;
}
void select(int x[],int n)
{
int i,j,item,min;
for(i=0;i<n-1;i++)
{
min=i;
for(j=i+1;j<n;j++)
{
if(x[j]>x[min])
min=j;
item=x[i];
x[i]=x[min];
x[min]=item;
}
}
}
int main()
{
const int n=10;
int a[n];
int b[n],i;
numbers(a,n);
for(i=0;i<n;i++)
b[i]=a[i];
select(b,n);
for(i=0;i<n;i++)
cout<<b[i]<<" ";
getch();
return 0;


}

Aliweb
پنج شنبه 04 اسفند 1390, 15:15 عصر
متشکرم جناب rezaricky

من میخواستم یک منو براش طراحی کنم مثلا عدد یک زد اعداد تصادفی و 2 مرتب سازی انتخابی ....ولی نمیدونم چطوری البته میدونم با دستور select میشه اینکار را انجام ولی ...

25farshid
پنج شنبه 04 اسفند 1390, 17:54 عصر
سلام

این یه نمونه کد:

منو اصلی :

void Menu()
{
cout << "------------------Menu-----------------" << endl;
cout << "1 ----> Action 1" << endl;
cout << "2 ----> Action 2" << endl;
cout << "3 ----> Action 3" << endl;
//cout << "4 ----> Action 4" << endl;
//cout << "5 ----> Action 5" << endl;
cout << "6 ----> Action 6" << endl;
cout << "7 ----> Exit " << endl;
cout << "---------------------------------------" << endl;
}

اینم تو main برنامه بنویس:

while(1)
{
Menu();

int Number;
cout << "Pleas Enter a Number To Action : ";
cin >> Number;

switch(Number)
{
case 1:
فراخوانی تابع();
break;
case 7:
Exit(1);
break;
default:
exit(1);

}
}