الانتقال إلى المحتوى الرئيسي

كيفية إجراء تبديل المصفوفة في فورتران: دليل مفصل

تبديل المصفوفة هو عملية تحويل المصفوفة عن طريق تبادل الصفوف والأعمدة. هذه عملية مهمة في الجبر الخطي مع العديد من التطبيقات في العلوم والتكنولوجيا. في هذه المقالة ، سننظر في كيفية إجراء تبديل المصفوفة باستخدام لغة برمجة فورتران.

فورتران هي لغة برمجة عالية المستوى تستخدم على نطاق واسع للحسابات العلمية والهندسية. يوفر قدرات قوية للعمل مع المصفوفات والمتجهات ، بما في ذلك عمليات التحويل. يمكن إجراء تبديل المصفوفة في فورتران بعدة طرق ، لكننا سننظر في الطريقة الأكثر فعالية وأبسطها.

الفكرة الرئيسية لتبديل المصفوفة في فورتران هي استخدام المصفوفات والحلقات ثنائية الأبعاد. نقوم بإنشاء مصفوفة جديدة ذات بعد معاكس للبعد الأصلي ، ونسخ قيم عناصر المصفوفة الأصلية في المصفوفة الجديدة باستخدام حلقتين متداخلتين. في هذه الحالة ، يتم تبادل الصفوف والأعمدة ، مما يعطينا مصفوفة منقولة.

print *, ""

end do

  1. print *, ""
  2. print *, "Транспонированная матрица:"
  3. do i = 1, n
  4. do j = 1, n

    لماذا أحتاج إلى تبديل المصفوفة?

ما هي الميزات التي يجب أخذها في الاعتبار عند نقل مصفوفة في فورتران?

ما هي الطرق الأخرى هناك لتبديل مصفوفة في فورتران?

التحضير لتبديل المصفوفة في فورتران

قبل الشروع في عملية تبديل المصفوفة بلغة برمجة فورتران ، يجب تنفيذ بعض الخطوات الأولية. في هذا القسم ، سنلقي نظرة على بعض الخطوات التي ستساعدك على الاستعداد لهذه العملية.

تحديد البعد من المصفوفة: أولا ، تحتاج إلى تحديد البعد من المصفوفة الخاصة بك. يتم تحديد أبعاد المصفوفة من خلال عدد الصفوف والأعمدة. على سبيل المثال ، تحتوي مصفوفة 3 4 4 على 3 صفوف و 4 أعمدة. تذكر هذه القيم ، حيث سيتم استخدامها في عملية التحويل.

إعلان مصفوفة في فورتران: في فورتران ، يمكنك استخدام مصفوفة ثنائية الأبعاد لتمثيل مصفوفة. لإعلان مصفوفة ، يجب عليك تحديد أبعادها ، أي عدد الصفوف والأعمدة. على سبيل المثال ، يمكنك استخدام البناء التالي لإعلان مصفوفة:

عدد صحيح :: مصفوفة(3 ، 4)

ملء المصفوفة: بعد إعلان المصفوفة ، تحتاج إلى ملئها بقيم المصفوفة. للقيام بذلك ، يمكنك استخدام الحلقات ومشغل المهمة. على سبيل المثال ، يملأ الكود التالي المصفوفة بقيم من 1 إلى 12:

هل أنا = 1 ، 3

هل ي = 1 ، 4

مصفوفة (أنا ، ي) = (أنا-1) * 4 + ي

نهاية تفعل

نهاية تفعل

عرض المصفوفة على الشاشة: تحقق من ملء المصفوفة بشكل صحيح عن طريق عرض قيمها على الشاشة. للقيام بذلك ، يمكنك استخدام الحلقات ومشغل الإخراج. في فورتران ، يمكنك استخدام المشغل

اكتب

لعرض القيمة على الشاشة. على سبيل المثال ، يعرض الكود التالي المصفوفة على الشاشة:

هل أنا = 1 ، 3

هل ي = 1 ، 4
اكتب (* ، * ) مصفوفة (أنا ، ي)
نهاية تفعل

نهاية تفعل

بعد الانتهاء من كل هذه الخطوات ، ستكون جاهزا لنقل المصفوفة إلى فورتران. في القسم التالي ، سننظر في عملية التحويل نفسها وكيفية تنفيذها في التعليمات البرمجية بلغة برمجة فورتران.

إعلان وتهيئة وملء المصفوفة

في فورتران ، المصفوفة هي مصفوفة ثنائية الأبعاد. لإعلان مصفوفة ، يجب تحديد أبعادها بين قوسين بعد اسم المتغير. على سبيل المثال ، لإعلان مصفوفة 3 3 3:

حقيقي:: مصفوفة (3 ، 3)

بعد الإعلان ، يمكن تهيئة المصفوفة. في فورتران ، يمكن القيام بذلك باستخدام عامل التعيين. على سبيل المثال:

مصفوفة = 0.0

في هذا المثال ، سيتم تهيئة جميع عناصر المصفوفة إلى قيمة صفرية. إذا كنت بحاجة إلى تهيئة المصفوفة بقيم محددة ، فيمكنك استخدام عامل التعيين مع مجموعة من القيم. على سبيل المثال:

مصفوفة = إعادة تشكيل((/1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0/), الشكل (مصفوفة))

في هذا المثال ، سيتم ملء المصفوفة بقيم من 1 إلى 9. يتم نقل القيم إلى مصفوفة أحادية البعد ، ثم باستخدام وظيفة إعادة التشكيل يتم تحويلها إلى مصفوفة ثنائية الأبعاد بالأبعاد المحددة.

يمكنك أيضا ملء المصفوفة بالقيم التي تم إنشاؤها باستخدام وظائف خاصة. على سبيل المثال ، تسمح لك وظيفة التخصيص بإنشاء مصفوفة بحجم معين بقيم عشوائية. على سبيل المثال:

تخصيص(مصفوفة (3 ، 3))

مصفوفة = رقم عشوائي ()

في هذا المثال ، سيتم ملء المصفوفة بقيم عشوائية.

وهكذا ، في فورتران هناك عدة طرق لإعلان ، تهيئة ، وملء مصفوفة. يعتمد اختيار طريقة معينة على الوظيفة المطلوبة وسهولة الاستخدام.

إعلان وتهيئة مصفوفة جديدة

قبل البدء في نقل مصفوفة في فورتران ، تحتاج إلى إعلان وتهيئة مصفوفة جديدة.

يتم الإعلان عن مصفوفة جديدة باستخدام الكلمة الأساسية حقيقي ، متبوعا بأبعاد المصفوفة. على سبيل المثال ، للإعلان عن مصفوفة 3 3 3 ، يتم استخدام البناء التالي:

حقيقي:: مصفوفة (3 ، 3)

يعلن هذا الخط عن مصفوفة جديدة تسمى "ماتريكس" بحجم 3 3 3.

بعد إعلان مصفوفة جديدة ، يمكن تهيئتها بالقيم. يتم استخدام حلقة دو لهذا الغرض. على سبيل المثال ، يقوم الكود التالي بتهيئة المصفوفة بقيم من 1 إلى 9:

هل أنا = 1 ، 3

هل ي = 1 ، 3

مصفوفة (أنا ، ي) = (أنا-1) * 3 + ي

نهاية تفعل

نهاية تفعل

في هذا المثال ، يتم استخدام حلقة دو للتكرار من خلال الصفوف والأعمدة من المصفوفة. يتم حساب قيمة عنصر المصفوفة باستخدام الصيغة (أنا-1) * 3 + ي. يتيح لك ذلك ملء المصفوفة بقيم من 1 إلى 9.

نتيجة لذلك ، بعد تنفيذ هذا الرمز ، ستحتوي المصفوفة الجديدة على القيم التالية:

1

2

3

4

5

6

7

8

9

وبالتالي ، فإن الإعلان عن مصفوفة جديدة وتهيئتها هو الخطوة الأولى قبل نقل المصفوفة إلى فورتران. هذا يسمح لك بإنشاء وملء المصفوفة مع القيم قبل مزيد من معالجة البيانات.

تبديل المصفوفة في فورتران

تبديل المصفوفة في لغة برمجة فورتران هو عملية تغيير ترتيب عناصر المصفوفة بحيث تصبح الصفوف أعمدة وتصبح الأعمدة صفوفا. والنتيجة هي مصفوفة جديدة تسمى المصفوفة المنقولة. هذه العملية مهمة بشكل خاص في العديد من التطبيقات الحسابية مثل خوارزميات الجبر الخطي ومعالجة الصور.

في فورتران ، يمكن إجراء تبديل المصفوفة باستخدام وظيفة التبديل المدمجة. للقيام بذلك ، قم بتمرير المصفوفة كوسيطة إلى الوظيفة وقم بتعيين النتيجة لمتغير جديد يحتوي على المصفوفة المنقولة.

مثال على الكود:

برنامج ترانزبوس_ماتريكس

لا شيء ضمني

عدد صحيح ، المعلمة:: ن = 3

عدد صحيح:: أنا ، ي

الحقيقي ، البعد (ن ، ن) :: مصفوفة

حقيقي:: مصفوفة منقولة (ن ، ن)

! ملء المصفوفة بقيم عشوائية

من دعوة عشوائية_رقم (مصفوفة)

! نعرض المصفوفة الأصلية على الشاشة

اكتب (*،'("المصفوفة الأصلية:")')

هل أنا = 1 ، ن

اكتب (*،'(3 و 6.2)') (مصفوفة (أنا ، ي) ، ي = 1 ، ن)

نهاية تفعل

! أداء تبديل المصفوفة

المصفوفة المنقولة = تبديل (مصفوفة)

! نعرض المصفوفة المنقولة على الشاشة

اكتب (*،'("المصفوفة المنقولة:")')

هل أنا = 1 ، ن

اكتب (*،'(3 و 6.2)') (مصفوفة منقولة (أنا ، ي) ، ي = 1 ، ن)

نهاية تفعل

نهاية برنامج ترانسبوز_ماتريكس

في هذا المثال ، نقوم بإنشاء مصفوفة مربعة الحجم ن س ن ، املأها بقيم عشوائية باستخدام دالة رقم عشوائي مضمنة في فورتران. ثم نعرض المصفوفة الأصلية على الشاشة ونقوم بالتبديل باستخدام وظيفة التبديل. نحفظ النتيجة في متغير جديد ونعرض المصفوفة المنقولة على الشاشة.

وبالتالي ، فإن إجراء تبديل المصفوفة في فورتران بسيط ومريح بسبب وظيفة التبديل المدمجة.

إخراج نتيجة التحويل

بعد إجراء عملية تبديل المصفوفة ، يمكن إخراج النتيجة لمزيد من الاستخدام أو تحليل البيانات. يمكن استخدام طرق مختلفة لإخراج نتيجة التحويل في فورتران ، اعتمادا على تنسيق الإخراج المطلوب.

تتمثل إحدى أبسط الطرق في عرض المصفوفة على الشاشة باستخدام وظيفة الطباعة المدمجة ، والتي تتيح لك إخراج قيم المتغيرات والمصفوفات إلى جهاز إخراج قياسي. يوجد أدناه مثال على الكود لعرض نتيجة التحويل على الشاشة:

برنامج نقل _ مصفوفة _ إخراج

لا شيء ضمني

عدد صحيح ، المعلمة:: ن = 3

عدد صحيح:: أنا ، ي

real :: a(n, n)

! Ввод исходной матрицы a

! Транспонирование матрицы a

a = transpose(a)

! Вывод результата транспонирования на экран

print *, 'Результат транспонирования:'

do i = 1, n

do j = 1, n

print *, a(i, j)

end do

print *

end do

end program transpose_matrix_output

في هذا المثال ، بعد إجراء عملية تبديل المصفوفة أ باستخدام وظيفة التبديل المضمنة ، يتم عرض النتيجة باستخدام مشغل الطباعة. يمكن تغيير رمز البرنامج اعتمادا على تنسيق الإخراج المطلوب ، على سبيل المثال ، يمكنك إضافة تنسيق الإخراج أو استخدام الملفات لحفظ النتائج أو نقل النتائج إلى إجراءات أخرى لمزيد من المعالجة.

أيضا ، بدلا من العرض على الشاشة ، يمكن تخزين نتيجة التحويل في متغير أو مصفوفة أخرى لاستخدامها في المستقبل. في هذه الحالة ، يجب عليك إنشاء متغير أو صفيف جديد ، وتعيين قيم النتيجة. يوجد أدناه مثال على الكود لحفظ نتيجة التحويل في مصفوفة جديدة:

برنامج نقل _ مصفوفة _ إخراج

لا شيء ضمني

عدد صحيح ، المعلمة:: ن = 3

عدد صحيح:: أنا ، ي

حقيقي:: أ (ن ، ن) ، ب (ن ، ن)

! إدخال المصفوفة الأصلية أ

! نقل المصفوفة أ

ب = تبديل (أ)

! الناتج من نتيجة تبديل إلى

طباعة * الشاشة ، ' نتيجة تبديل:'

هل أنا = 1 ، ن

هل ي = 1 ، ن

طباعة * ، ب (ط ، ي)

نهاية تفعل

طباعة *

نهاية تفعل

نهاية برنامج ترانسبوس_ماتريكس _ الإخراج

في هذا المثال ، بعد إجراء عملية تبديل المصفوفة أ باستخدام وظيفة التبديل المضمنة ، يتم تخزين النتيجة في المصفوفة ب. ثم يتم عرض النتيجة باستخدام بيان الطباعة. يتيح لك إنشاء متغير أو مصفوفة جديدة حفظ النتائج لمزيد من المعالجة ، على سبيل المثال ، للاستخدام في جزء آخر من البرنامج أو للحفظ في ملف.

يمكن تنفيذ إخراج نتيجة تبديل المصفوفة في فورتران بطرق مختلفة ، اعتمادا على تنسيق الإخراج المطلوب والمعالجة اللاحقة للنتيجة. في هذه المقالة ، تم النظر في طريقتين بسيطتين: الإخراج إلى الشاشة باستخدام وظيفة الطباعة والحفظ إلى مصفوفة جديدة. يمكن تغيير رمز البرنامج واستكماله وفقا لمتطلبات مهمة محددة.

مثال على تبديل المصفوفة في فورتران

في فورتران ، يمكن إجراء تبديل المصفوفة بسهولة باستخدام إجراء التبديل المدمج.

بادئ ذي بدء ، نعلن وتهيئة مصفوفة 3 3 3:

برنامج ترانزبوس_ماتريكس

لا شيء ضمني

عدد صحيح:: أنا ، ي

INTEGER, PARAMETER :: N=3

INTEGER :: matrix(N,N)

matrix = 0

DO i = 1, N

DO j = 1, N

matrix(i,j) = i + j

END DO

END DO

! Вывод исходной матрицы

PRINT *, "Исходная матрица:"

DO i = 1, N

DO j = 1, N

PRINT *, matrix(i,j)

END DO

END DO

! Транспонирование матрицы

CALL TRANSPOSE(matrix)

! Вывод транспонированной матрицы

PRINT *, "Транспонированная матрица:"

DO i = 1, N

DO j = 1, N

PRINT *, matrix(i,j)

END DO