التحدي الرابع التمرين الثالث
أكتب برنامج مهمته رسم الشكل التالي بواسطة الحلقات.
				  عند تشغيل البرنامج, يجب أن يطلب من المستخدم إدخال عدد أسطر الشكل الذي سيتم رسمه.
				  إنتبه: يجب أن يدخل المستخدم عدد مفرد و أكبر من صفر, مع الإشارة إلى أنه في حال قام بإدخال عدد مزدوج يجب أن يتم قبوله مع إضافة واحد عليه حتى يصبح مفرد.
* * * * * * * * * * * * * * * * *
الحل بلغة بايثون
الطريقة الأولى لحل التمرين.
n = 0
while n <= 0:
    n = int(input("Enter the number of lines: "))
if n % 2 == 0:
    n += 1
for i in range(1, n + 1):
    for j in range(1, n + 1):
        if i == j or j == n - i + 1:
            print('*', end='')
        else:
            print(' ', end='')
    print()
		
		الطريقة الثانية لحل التمرين و الحصول على نفس النتيجة.
n = 0
while n <= 0:
    n = int(input("Enter the number of lines: "))
if n % 2 == 0:
    n += 1
i = 1
while i <= n:
    j = 1
    while j <= n:
        if i == j or i == n - j + 1:
            print('*', end='')
        else:
            print(' ', end='')
        j += 1
    print()
    i += 1
		
		سنحصل على النتيجة التالية إذا قام المستخدم بإدخال الرقم 9 عند التشغيل.
Enter the number of lines: 9
*       *
 *     * 
  *   *  
   * *   
    *    
   * *   
  *   *  
 *     * 
*       *
		
	الحل بلغة جافا
					import java.util.Scanner;
					public class Main {
					public static void main(String[] args) {
					Scanner input = new Scanner(System.in);
					int n;
					do {
					System.out.print("Enter the number of lines: ");
					n = input.nextInt();
					}
					while (n <= 0);
					if (n % 2 == 0)
					{
					n++;
					}
					for (int i = 1; i <= n; i++)
					{
					for (int j = 1; j <= n; j++)
					{
					if (i == j || j == n - i + 1) {
                    System.out.print("*");
					}
					else {
                    System.out.print(" ");
					}
					}
					System.out.println();
					}
					}
					}
				  
				  سنحصل على النتيجة التالية إذا قام المستخدم بإدخال الرقم 9 عند التشغيل.
Enter the number of lines: 9 * * * * * * * * * * * * * * * * *
الحل بلغة C
					  #include<stdio.h>
					  void main() {
					  int n;
					  do {
					  printf("Enter the number of lines: ");
					  scanf("%d", &n);
					  }
					  while( n<=0 );
					  if( n%2==0 )
					  {
					  n++;
					  }
					  for( int i=1; i<=n; i++ )
					  {
					  for( int j=1; j<=n; j++ )
					  {
					  if( i==j || j==n-i+1 ) {
					  printf("*");
					  }
					  else {
					  printf(" ");
					  }
					  }
					  printf("\n");
					  }
					  }
					
					سنحصل على النتيجة التالية إذا قام المستخدم بإدخال الرقم 9 عند التشغيل.
Enter the number of lines: 9 * * * * * * * * * * * * * * * * *
الحل بلغة C#
						using System;
						class Program
						{
						static void Main(string[] args)
						{
						int n;
						do
						{
						Console.Write("Enter the number of lines: ");
						n = int.Parse(Console.ReadLine());
						}
						while (n <= 0);
						if (n % 2 == 0)
						{
						n++;
						}
						for (int i = 1; i <= n; i++)
						{
						for (int j = 1; j <= n; j++)
						{
						if (i == j || j == n - i + 1)
						{
						Console.Write("*");
						}
						else
						{
						Console.Write(" ");
						}
						}
						Console.WriteLine();
						}
						Console.ReadKey();
						}
						}
					  
					  سنحصل على النتيجة التالية إذا قام المستخدم بإدخال الرقم 9 عند التشغيل.
Enter the number of lines: 9 * * * * * * * * * * * * * * * * *
الحل بلغة C++
						  #include <iostream>
						  int main() {
						  int n;
						  do {
						  std::cout << "Enter the number of lines: ";
						  std::cin >> n;
						  }
						  while (n <= 0);
						  if (n % 2 == 0)
						  {
						  n++;
						  }
						  for (int i = 1; i <= n; i++)
						  {
						  for (int j = 1; j <= n; j++)
						  {
						  if (i == j || j == n - i + 1)
						  {
						  std::cout << "*";
						  }
						  else
						  {
						  std::cout << " ";
						  }
						  }
						  std::cout << "\n";
						  }
						  char end; std::cin >> end;
						  return 0;
						  }
						
						سنحصل على النتيجة التالية إذا قام المستخدم بإدخال الرقم 9 عند التشغيل.
Enter the number of lines: 9 * * * * * * * * * * * * * * * * *