moh am نشر 12 أبريل 2023 أرسل تقرير نشر 12 أبريل 2023 (معدل) ايضا لدي برمجة في كود c حيث ال output المطلوب مني هو Awesome Diagona1s و Awesome Column and Diagona1 في هذا الكود الذي انشئته ما المشكله وكيف يمكني حلها #include <stdio.h> int main() { int n1, n2, n3, n4, n5, n6, n7, n8, n9; scanf("%d %d %d %d %d %d %d %d %d", &n1, &n2, &n3, &n4, &n5, &n6, &n7, &n8, &n9); int row1 = n1 + n2 + n3; int row2 = n4 + n5 + n6; int row3 = n7 + n8 + n9; int col1 = n1 + n4 + n7; int col2 = n2 + n5 + n8; int col3 = n3 + n6 + n9; int diag1 = n1 + n5 + n9; int diag2 = n3 + n5 + n7; if (row1 == row2 && row2 == row3 && row3 == col1 && col1 == col2 && col2 == col3 && col3 == diag1 && diag1 == diag2) { printf("Awesome Numbers"); } else if (row1 == row2 || row1 == row3 || row2 == row3) { printf("Awesome Rows"); } else if (col1 == col2 || col1 == col3 || col2 == col3) { printf("Awesome Columns"); } else if (diag1 == diag2) { printf("Awesome Diagona1s"); } else if (row1 == col1 || row1 == col2 || row1 == col3 || row1 == diag1 || row1 == diag2 || row2 == col1 || row2 == col2 || row2 == col3 || row2 == diag1 || row2 == diag2 || row3 == col1 || row3 == col2 || row3 == col3 || row3 == diag1 || row3 == diag2){ printf("Awesome Row and Column"); } else if (col1 == diag1 ) { printf("Awesome Column and Diagona1"); } return 0; } حيث ان يتحقق معي الشرط الاولAwesome Diagona1s والثاني لا يتحقق تم التعديل في 12 أبريل 2023 بواسطة Mustafa Suleiman تعديل عنوان السؤال ونص السؤال 2 اقتباس
0 محمد Fahmy نشر 12 أبريل 2023 أرسل تقرير نشر 12 أبريل 2023 يمكن كتابة الكود بلغة C كالتالي: #include <stdio.h> int main() { printf("Awesome Diagonal"); printf("s"); return 0; } يبدأ الكود بتضمين مكتبة `stdio.h` التي تحتوي على دوال الإدخال والإخراج القياسية في لغة C، ثم يعرف دالة `main` التي تعتبر نقطة البداية في تنفيذ البرنامج. يتم طباعة النص "Awesome Diagonal" باستخدام الدالة `printf`، ثم يتم طباعة الحرف "s" منفصلاً عن الجملة السابقة، ليكون الإخراج "Awesome Diagona1s". يمكن فهم معنى الجملة بأنها تطلب طباعة النص "Awesome Diagonal" مع حرف "s" لإنشاء كلمة مقترنة تعبر عن معنى ما. وتم استخدام دالة `printf` للقيام بذلك، حيث انه بإمكانها عرض البيانات المنسقة والشكل الذي يريده المستخدم بشكل مختلف، حسبما ذكرنا سابقًا. اقتباس
0 moh am نشر 12 أبريل 2023 الكاتب أرسل تقرير نشر 12 أبريل 2023 يتحقق معي الشرط الاولAwesome Diagona1s والثاني لا يتحقق المشكله بال output الثاني الاول يتحقق معي اقتباس
0 Mustafa Suleiman نشر 12 أبريل 2023 أرسل تقرير نشر 12 أبريل 2023 1- استخدام الأمر printf باستطاعتك استخدام الأمر printf لإخراج النص المطلوب "Awesome Diagona1s"، وتستخدم printf لإخراج نصوص ومتغيرات مختلفة على شاشة الكمبيوتر. يمكن استخدام printf على النحو التالي: #include <stdio.h> int main() { printf("Awesome Diagona1s"); return 0; } سيقوم هذا الكود بإخراج النص "Awesome Diagona1s" على شاشة الكمبيوتر. 2- استخدام الأمر puts هناك طريقة باستخدام الأمر puts لإخراج النص "Awesome Diagona1s"، وتعمل puts بنفس الطريقة الخاصة بـ printf، يتم استخدام puts على النحو التالي: #include <stdio.h> int main() { puts("Awesome Diagona1s"); return 0; } 3- استخدام الأمر putchar يتوفر الأمر putchar لإخراج النص "Awesome Diagona1s" حرفًا حرفًا، وهو عمليّ جدًا لإخراج النصوص بصورة محددة، كالتالي: #include <stdio.h> int main() { putchar('A'); putchar('w'); putchar('e'); putchar('s'); putchar('o'); putchar('m'); putchar('e'); putchar(' '); putchar('D'); putchar('i'); putchar('a'); putchar('g'); putchar('o'); putchar('n'); putchar('a'); putchar('1'); putchar('s'); return 0; } 4- استخدام متغير باستخدام متغير لحفظ النص "Awesome Diagona1s"، ثم إخراجه باستخدام printf. يتم استخدام المتغير كالتالي: #include <stdio.h> int main() { char myText[] = "Awesome Diagona1s"; printf("%s", myText); return 0; } في المثال تم إنشاء متغير من نوع char بعنوان myText، ثم يتم تعيين النص "Awesome Diagona1s" إلى المتغير، واستخدام printf لإخراج المتغير myText من خلال قالب النص "%s". بتاريخ 8 دقائق مضت قال moh am: يتحقق معي الشرط الاولAwesome Diagona1s والثاني لا يتحقق المشكله بال output الثاني الاول يتحقق معي @moh am أنت قمت بتعديل السؤال بعد فترة ولم يكن الكود متوفر، والمشكلة في الكود الذي قدمته هي أنه يحتوي على جملة شرطية تحتوي على شرطين متشابهين لاستدعاء النص "Awesome Diagona1s" وهما: else if (diag1 == diag2) { printf("Awesome Diagona1s"); } else if (col1 == diag1 ) { printf("Awesome Column and Diagona1"); } بالتالي، عند إدخال الأرقام التي تجعل المعادلات متساوية، سيتم استدعاء النص "Awesome Diagona1s" فقط، ولن يتم استدعاء النص "Awesome Column and Diagona1". لحل هذه المشكلة، يمكنك استخدام جملة شرطية جديدة تحتوي على الشرطين السابقين بشكل متفرع، مما يسمح بالحصول على الإخراجين المطلوبين على حد سواء. لذلك، يمكنك استبدال الجملة الشرطية التي تحتوي على الشرطين المتشابهين بالشكل التالي: else if ((diag1 == diag2) && (col1 == diag1)) { printf("Awesome Column and Diagona1"); } وبهذا يتم الحصول على الإخراجين المطلوبين عند تحقق الشرطين المتشابهين في نفس الوقت. اقتباس
0 moh am نشر 12 أبريل 2023 الكاتب أرسل تقرير نشر 12 أبريل 2023 مشكلتي هي انه يوجد مصفوف وطرح عليها اسئله حيث ان الشرط الاول تحقق والشرط الثاني لم يتحقق Awesome Diagonals" will be printed because the first and second diagonals have equal sums (9). "Awesome Column and Diagonal" will be printed because the first column and the first diagonal have equal sums (9) بالفعل مشكلتي ليست بامر ال printf حيث في الكود الخاص بي عرف جميع ال vareble فالمصفوفه ولا اعلم لماذا لم يضهر ال output بشرط الثاني اقتباس
0 Mustafa Suleiman نشر 12 أبريل 2023 أرسل تقرير نشر 12 أبريل 2023 بتاريخ 1 دقيقة مضت قال moh am: مشكلتي هي انه يوجد مصفوف وطرح عليها اسئله حيث ان الشرط الاول تحقق والشرط الثاني لم يتحقق Awesome Diagonals" will be printed because the first and second diagonals have equal sums (9). "Awesome Column and Diagonal" will be printed because the first column and the first diagonal have equal sums (9) بالفعل مشكلتي ليست بامر ال printf حيث في الكود الخاص بي عرف جميع ال vareble فالمصفوفه ولا اعلم لماذا لم يضهر ال output بشرط الثاني المشكلة تكمن في شرط الثاني والذي يفحص المجموعات الفرعية للصفوف ويطبع "Awesome Rows" في حالة وجود صفوف متساوية في المجموع. ومن خلال الوصول إلى الشرط الثاني في البرنامج، فإنه يحتاج إلى تحقق من المجموعات الفرعية للأعمدة والقطرين، ولكن لم تتم معالجتها في الشرط الثاني. لذلك، يمكنك إضافة بعض الشروط الإضافية لشرط الثاني للتحقق من صحة المجموعات الفرعية للأعمدة والقطري، وباستطاعتك استخدام نفس النهج الذي تم استخدامه في الشرط الأخير للتحقق من المجموعات الفرعية للصفوف والأعمدة والقطرين. باستخدام الشرط التالي لطباعة "Awesome Rows and Columns" عندما تتطابق المجموعات الفرعية للصفوف والأعمدة والقطرين. else if ((row1 == row2 && row2 == row3 && row3 == col1 && col1 == col2 && col2 == col3 && col3 == diag1 && diag1 == diag2) || (col1 == diag1 && row1 == col1 && row2 == col2 && row3 == col3 && row1 == diag2)) { printf("Awesome Numbers"); } else if (row1 == row2 || row1 == row3 || row2 == row3) { printf("Awesome Rows"); } else if (col1 == col2 || col1 == col3 || col2 == col3) { printf("Awesome Columns"); } else if (diag1 == diag2) { printf("Awesome Diagona1s"); } else if ((row1 == col1 || row1 == col2 || row1 == col3 || row1 == diag1 || row1 == diag2 || row2 == col1 || row2 == col2 || row2 == col3 || row2 == diag1 || row2 == diag2 || row3 == col1 || row3 == col2 || row3 == col3 || row3 == diag1 || row3 == diag2) || (col1 == diag1 && row1 != col1 && row2 != col2 && row3 != col3 && row1 != diag2)) { printf("Awesome Row and Column"); } else if (col1 == diag1 ) { printf("Awesome Column and Diagona1"); } اقتباس
0 عبدالباسط ابراهيم نشر 12 أبريل 2023 أرسل تقرير نشر 12 أبريل 2023 في الشرط الأخير في الكود، المتعلق بـ "Awesome Rows and Columns"، تم استخدام الشرط الخاص بـ "Awesome Diagonals" بشكل خاطئ، حيث تم إدراجه كجزء من شرط الصفوف والأعمدة والقطرين. بالتحديد، كان الخطأ في هذه الجملة: else if (row1 == col1 || row1 == col2 || row1 == col3 || row1 == diag1 || row1 == diag2 || row2 == col1 || row2 == col2 || row2 == col3 || row2 == diag1 || row2 == diag2 || row3 == col1 || row3 == col2 || row3 == col3 || row3 == diag1 || row3 == diag2) { printf("Awesome Rows and Columns"); } حيث تم وضع "diag1" و "diag2" كجزء من شرط الصفوف والأعمدة والقطرين. وبالتالي، لم يتم تمييز الحالة المراد الإشارة إليها بشكل صحيح. لحل هذه المشكلة، يجب تحريك الشرط الخاص بـ "Awesome Diagonals" إلى موضعه الصحيح، كما هو موضح في الكود التالي: if (row1 == row2 && row2 == row3 && row3 == col1 && col1 == col2 && col2 == col3 && col3 == diag1 && diag1 == diag2) { printf("Awesome Numbers"); } else if (row1 == row2 || row1 == row3 || row2 == row3) { printf("Awesome Rows"); } else if (col1 == col2 || col1 == col3 || col2 == col3) { printf("Awesome Columns"); } else if (diag1 == diag2) { printf("Awesome Diagonals"); } else if (row1 == col1 || row1 == col2 || row1 == col3 || row2 == col1 || row2 == col2 || row2 == col3 || row3 == col1 || row3 == col2 || row3 == col3) { printf("Awesome Rows and Columns"); } else if (col1 == diag1 || col2 == diag2) { printf("Awesome Columns and Diagonal"); } بعد هذا التعديل، يجب أن يتم طباعة الرسالة النهائية بشكل صحيح وفقًا لشروط الكود. اقتباس
0 moh am نشر 12 أبريل 2023 الكاتب أرسل تقرير نشر 12 أبريل 2023 بتاريخ 42 دقائق مضت قال moh am: لا اعلم ما المشكله فانه لا يطبع بشكل صحيح ربما يحدث خطا ما حيث انني قمت بحذف الشرط الاول تحقق الشرط الثاني وعند وجود الشرط الثاني يتحقق الشرط الاول اقتباس
0 Mustafa Suleiman نشر 12 أبريل 2023 أرسل تقرير نشر 12 أبريل 2023 بتاريخ 3 دقائق مضت قال moh am: لا اعلم ما المشكله فانه لا يطبع بشكل صحيح ربما يحدث خطا ما حيث انني قمت بحذف الشرط الاول تحقق الشرط الثاني وعند وجود الشرط الثاني يتحقق الشرط الاول أرجو منك مشاركة الكود بعد التعديل وأيضًا قم بالضغط على علامة الكود <> لإضافة الكود الخاص بك عند كتابة السؤال. اقتباس
0 moh am نشر 13 أبريل 2023 الكاتب أرسل تقرير نشر 13 أبريل 2023 (معدل) هذا ال output الذي يجب ان يظهر في جميع الشرووط هل يوجد احد لمساعدتي ف انا لم اجد حلاً لها تم التعديل في 13 أبريل 2023 بواسطة moh am اقتباس
السؤال
moh am
ايضا لدي برمجة في كود c
حيث ال output المطلوب مني هو
Awesome Diagona1s
و
Awesome Column and Diagona1
في هذا الكود الذي انشئته ما المشكله وكيف يمكني حلها
حيث ان يتحقق معي الشرط الاولAwesome Diagona1s والثاني لا يتحقق
تعديل عنوان السؤال ونص السؤال
9 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.