السلام عليكم ورحمه الله وبركاته
اريد مساعدتكم مشكورين في الحصول على أمثله وشرح للمصفوفات الثلاثيه الابعاد
بحثت كثيرا ولم أحصل على ما أريد
السلام عليكم ورحمه الله وبركاته
اريد مساعدتكم مشكورين في الحصول على أمثله وشرح للمصفوفات الثلاثيه الابعاد
بحثت كثيرا ولم أحصل على ما أريد
السلام عليكم هذا مثال واضح عن المصفوفات ثلاثية البعد :
#define HEIGHT 5
#define WIDTH 3
#define DEPTH 7
int main() {
double ***p2DArray;
// Allocate memory
p2DArray = new double**[HEIGHT];
for (int i = 0; i < HEIGHT; ++i) {
p2DArray = new double*[WIDTH];
for (int j = 0; j < WIDTH; ++j)
p2DArray[j] = new double[DEPTH];
}
// Assign values
p2DArray[0][0][0] = 3.6;
p2DArray[1][2][4] = 4.0;
// De-Allocate memory to prevent memory leak
for (int i = 0; i < HEIGHT; ++i) {
for (int j = 0; j < WIDTH; ++j)
delete [] p2DArray[j];
delete [] p2DArray;
}
delete [] p2DArray;
return 0;
}أنصحك بالبحث باللغة الإنجليزية إذا كنت تريد نتائج مباشرة و دقيقة !
شكرا جزيلا
ولكن أريد أيضا شرحا للمثال
أو أمثله اخرى مشروحه
Mohammad Walid كتب:السلام عليكم هذا مثال واضح عن المصفوفات ثلاثية البعد :
#define HEIGHT 5 #define WIDTH 3 #define DEPTH 7 int main() { double ***p2DArray; // Allocate memory p2DArray = new double**[HEIGHT]; for (int i = 0; i < HEIGHT; ++i) { p2DArray = new double*[WIDTH]; for (int j = 0; j < WIDTH; ++j) p2DArray[j] = new double[DEPTH]; } // Assign values p2DArray[0][0][0] = 3.6; p2DArray[1][2][4] = 4.0; // De-Allocate memory to prevent memory leak for (int i = 0; i < HEIGHT; ++i) { for (int j = 0; j < WIDTH; ++j) delete [] p2DArray[j]; delete [] p2DArray; } delete [] p2DArray; return 0; }أنصحك بالبحث باللغة الإنجليزية إذا كنت تريد نتائج مباشرة و دقيقة !
السائل عن المصفوفات ثلاثية اﻻبعاد يبدو من سؤالة انه مبتدأ وايضا جديد على هذة الجزئية
فالتالى مثال يعتبرمفهوم مؤشر لمؤشر لمؤشر صعب تاما وثم الحجز الديناميكى للذاكرة زاد من التعقيد
فضلا ضع مثال للمبتدئين 3D array .
مثلا: مثال كالتالى شارح نفسة
#include <iostream>
using namespace std;
int main()
{
// Create a 3D array that is 20 x 30 x 4
int x = 5;
int y = 3;
int z = 2;
int my_array[x][y][z];
// Assign values to the elements
int values = 0;
for (int i = 0; i !=x ; ++i)
{
for (int j = 0; j != y; ++j)
{
for (int k = 0; k != z; ++k)
{
my_array[j][k] = values++;
}
}
}
for (int i = 0; i !=x ; ++i)
{
for (int j = 0; j != y; ++j)
{
for (int k = 0; k != z; ++k)
{
cout << my_array[j][k] << " " ;
}
cout << endl;
}
cout << endl;
}
return 0;
}وهنا شرح المثال الذى ذكرة اخى اسابق عنى: www.cplusplus.com
شكرا جزيلا للجميع
يعطيكم العافيه :)
هذا الموضوع مغلق.
المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية
جارٍ التحقق من المتواجدين…