ehsan_faal
چهارشنبه 22 مرداد 1393, 21:15 عصر
سلام.میشه خیلی ساده توضیح بدید که تو کد زیر واسه این که هر بار خواستم نتایج رو بیارم رو صفحه نمایش فقط از یه تابع استفاده کنم باید چیکار کنم؟
آخه تا اینجا که من دایتل رو خوندم حتما باید اندیس دوم آرایه رو تو نمونه اولیه توابع ذکر کنیم و این که سایز آرایه هم فقط میتونه ثابت باشه و نمیشه دوباره مقدار دهیش کرد.به همین خاطر الان من مجبورم دو تا تابع واسه پرینت معرفی کنم.
#include <iostream>
#include<time.h>
#include<stdlib.h>
#include <iomanip>
const int rows = 3;
const int column = 2;
void print1(int[][column],int ,int );
void print2(int[][rows], int , int );
using namespace std;
void main()
{
srand(time(NULL));
int a[rows][column];
int b[column][rows];
int i, j;
for (i = 0; i < rows; i++)
{
for (j = 0; j < column; j++)
a[i][j] = 1 + rand() % 10;
}
print1(a,rows,column);
for (i = 0; i < rows; i++)
{
for (j = 0; j < column; j++)
{
b[j][i] = a[i][j];
}
}
print2(b, column, rows);
}
void print1(int array[][column], int satr, int sotun)
{
cout << "The First Martrix:\n";
for (int i = 0; i < satr; i++)
{
for (int j = 0; j < sotun; j++)
cout << setw(3) << array[i][j];
cout << endl;
}
}
void print2(int array[][rows], int satr, int sotun)
{
cout << "\n\nThe Second Martrix:\n";
for (int i = 0; i < satr; i++)
{
for (int j = 0; j < sotun; j++)
cout << setw(3) << array[i][j];
cout << endl;
}
}
با تشکر
آخه تا اینجا که من دایتل رو خوندم حتما باید اندیس دوم آرایه رو تو نمونه اولیه توابع ذکر کنیم و این که سایز آرایه هم فقط میتونه ثابت باشه و نمیشه دوباره مقدار دهیش کرد.به همین خاطر الان من مجبورم دو تا تابع واسه پرینت معرفی کنم.
#include <iostream>
#include<time.h>
#include<stdlib.h>
#include <iomanip>
const int rows = 3;
const int column = 2;
void print1(int[][column],int ,int );
void print2(int[][rows], int , int );
using namespace std;
void main()
{
srand(time(NULL));
int a[rows][column];
int b[column][rows];
int i, j;
for (i = 0; i < rows; i++)
{
for (j = 0; j < column; j++)
a[i][j] = 1 + rand() % 10;
}
print1(a,rows,column);
for (i = 0; i < rows; i++)
{
for (j = 0; j < column; j++)
{
b[j][i] = a[i][j];
}
}
print2(b, column, rows);
}
void print1(int array[][column], int satr, int sotun)
{
cout << "The First Martrix:\n";
for (int i = 0; i < satr; i++)
{
for (int j = 0; j < sotun; j++)
cout << setw(3) << array[i][j];
cout << endl;
}
}
void print2(int array[][rows], int satr, int sotun)
{
cout << "\n\nThe Second Martrix:\n";
for (int i = 0; i < satr; i++)
{
for (int j = 0; j < sotun; j++)
cout << setw(3) << array[i][j];
cout << endl;
}
}
با تشکر