الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

أريد مساعدة ضروري في كتابة برنامج ف c

بدأه العسولة في 9 أبريل 2010 · 13 رد · 1,126 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

إذا ممكن مساعدة ... وبأقرب وقت ... ولكم جزيل الشكر ... لا تبخلو علي باجاباتكم ...

السؤال الأول :::

Find any instruction in C programming used to test a value other than if and

...switch statements, explain the syntax with example

السؤال الثاني بس اريد اكمال الفراغ اللي موجود فيه ؟؟؟؟؟؟ حتى يتكون شكل معين التالي :

المعين إذا ما اتضح في الصورة فهو يبدأ بنجمة ثم ثلاث ثم 5نجوم ثم 7 نجوم ثم 9 نجو ثم 11 نجمة ثم يبدأ بالتناقص 9نجوم ثم 7 نجوم ثم 5 نجوم ثم 3 نجوم ثم نجمة واحد ويتشكل المعين فقط أريد الضافات حيث وضعت علامة( ؟؟؟؟؟ ) فقط اريد معرفة الناقص

*

***

*****

*******

***********

*********

*******

*****

***

*

وهذا الكود بس ناقصنه بعض الاضافات ..ز

#include <stdio.h#

#include <math.i>

main()

{

int i,j,k;

for( i=1;i<=11;i++)

{

for( k=1;k<=???? ;k++)

printf(" ");

for( j=1;j<=????? ;j++)

printf("*");

printf("\n");

}

}

السؤال الثالث :

Write a program that reads 8 integer values then print out the

nearest value to the average.

Example

8 9 4 2 10 6 5 3

Average =5.875

The nearest value is (6) , its location index = (5)

تم تعديل هذه المشاركة بواسطة العسولة في 9 أبريل 2010 في 16:32

#2

بالنسبة للسؤال الاول تقدري تستخدمي conditional operator or Ternary operator

مثال :

(a>b)?printf("a"):printf("b")

هذا تعديل للسؤال الثاني

#include <stdio.h>
#include <conio.h>
void main()
{
int i,k,j;
 for( i=0;i<2;i++)
{
  for(j=i;j<11;j+=2)
	{
	  for( k=1;k<=11;k++)
		{
		 if(i==0) //top part
		 {
		  if(k<(11-j))
			 printf(" ") ;
		  else
			printf("*") ;
		  }
		  else  //dowun paer
			 {
				if(k<=(j+1))
					printf(" ") ;
				else
				printf("*") ;
		  }
		}
		printf("\n");
	  }
}
getch();
}

تحياتي

تم تعديل هذه المشاركة بواسطة omani في 9 أبريل 2010 في 18:28

4

OMANI FOR EVER

-------------------------------------------------

post-12787-12780191801974.jpg

-------------------------------------------------

#3

جميل أخي عوماني كودك وهذه كود آخر لرسم المعين أضعه للفائده :

#include <stdio.h>
main()
{
    int i,j;
   for(i=1;i<=7;i++)
    {
        for(j=1;j<=7;j++)
        ((i+j)%12>4 && abs(i-j)<4)? printf("*"): printf(" ") ;

                printf("\n");
   }
}

ضع محاولة السؤال الثالث . لنصححها

1
tvquran_6.gif

#4

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

فهدالشلوي كتب:

جميل أخي عوماني كودك وهذه كود آخر لرسم المعين أضعه للفائده :

#include <stdio.h>
main()
{
    int i,j;
   for(i=1;i<=7;i++)
    {
        for(j=1;j<=7;j++)
        ((i+j)%12>4 && abs(i-j)<4)? printf("*"): printf(" ") ;

                printf("\n");
   }
}

ضع محاولة السؤال الثالث . لنصححها

تسلم على مرورك الطيب وجزاك الله ألف خير بس الكود فيه خطأ حاولت اطبقه في البرنامج بس طلع الناتج خطأ

تم تعديل هذه المشاركة بواسطة العسولة في 9 أبريل 2010 في 19:24

1
#5

ربما تحتاج إضافة void أمام main

أو ضع رسالة الخطأ

tvquran_6.gif

#6
omani كتب:

بالنسبة للسؤال الاول تقدري تستخدمي conditional operator or Ternary operator

مثال :

(a>b)?printf("a"):printf("b")

هذا تعديل للسؤال الثاني

#include <stdio.h>
#include <conio.h>
void main()
{
int i,k,j;
 for( i=0;i<2;i++)
{
  for(j=i;j<11;j+=2)
	{
	  for( k=1;k<=11;k++)
		{
		 if(i==0) //top part
		 {
		  if(k<(11-j))
			 printf(" ") ;
		  else
			printf("*") ;
		  }
		  else  //dowun paer
			 {
				if(k<=(j+1))
					printf(" ") ;
				else
				printf("*") ;
		  }
		}
		printf("\n");
	  }
}
getch();
}

تحياتي

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

*

***

*****

*******

*********

***********

*********

*******

*****

***

*

بعده ما انضبط بس الشكل يجي شكل معين

تم تعديل هذه المشاركة بواسطة العسولة في 9 أبريل 2010 في 19:39

#7
فهدالشلوي كتب:

ربما تحتاج إضافة void أمام main

أو ضع رسالة الخطأ

أنا اضفت libaray math.h ولكن ما لا أعرف ما الخطأ في الكود

((i+j)%12>4 && abs(i-j)<4) printf("*");

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

تم تعديل هذه المشاركة بواسطة العسولة في 9 أبريل 2010 في 19:49

#8

نعم يجب إضافة math.h لاني استخدمت abs التي تعطي القيمه المطلقة

تم تعديل هذه المشاركة بواسطة فهدالشلوي في 9 أبريل 2010 في 19:50

tvquran_6.gif

#9
فهدالشلوي كتب:

جميل أخي عوماني كودك وهذه كود آخر لرسم المعين أضعه للفائده :

#include <stdio.h>
main()
{
    int i,j;
   for(i=1;i<=7;i++)
    {
        for(j=1;j<=7;j++)
        ((i+j)%12>4 && abs(i-j)<4)? printf("*"): printf(" ") ;

                printf("\n");
   }
}

ضع محاولة السؤال الثالث . لنصححها

شكرا استاذ فهد .. فقد ضربت عصفورين بحجر .. حل السؤال الثاني واستخدام ternary operator في ذات الوقت .

++1

تحياتي

OMANI FOR EVER

-------------------------------------------------

post-12787-12780191801974.jpg

-------------------------------------------------

#10

وهذا مثال اخر لعمل المعين

#include <stdio.h>
int main()
{
int i,j,k=6;

//top side
for(i=1; i<=k; i++)
{
	for(j=1; j<=k-i; j++)
	 {
	  printf(" ");
	 }
	for(j=1; j<=2*i-1; j++)
	 {
	  printf("*");
	 }
 printf("\n");
}
  //downside
for(i=1; i<k; i++)
{
  for(j=1; j<=i; j++)
	 {
		printf(" ");
	  }
	for(j=2*k-2*i-1; j>=1; j--)
		{
		  printf("*");
		}
		printf("\n");
  }

return(0);

}

تحياتي

1

OMANI FOR EVER

-------------------------------------------------

post-12787-12780191801974.jpg

-------------------------------------------------

#11
omani كتب:

وهذا مثال اخر لعمل المعين

#include <stdio.h>
int main()
{
int i,j,k=6;

//top side
for(i=1; i<=k; i++)
{
	for(j=1; j<=k-i; j++)
	 {
	  printf(" ");
	 }
	for(j=1; j<=2*i-1; j++)
	 {
	  printf("*");
	 }
 printf("\n");
}
  //downside
for(i=1; i<k; i++)
{
  for(j=1; j<=i; j++)
	 {
		printf(" ");
	  }
	for(j=2*k-2*i-1; j>=1; j--)
		{
		  printf("*");
		}
		printf("\n");
  }

return(0);

}

تحياتي

تسلم أخي دائما مبدع باجاباتك .... بس إذا تعرف اجابة سؤالي .ز باستخدام abs في الكود اللي كتبته

#12

هذي اجابة السؤال الثالث :

/*
  Write a program that reads 8 integer values then print out the
nearest value to the average.
Example
8 9 4 2 10 6 5 3
Average =5.875
The nearest value is (6) , its location index = (5) 


*/
#include<stdio.h>
#include<conio.h>

void main()

{
	int vls[8],total=0,min,max,i;
	float avg;

	printf("Enter The Values\n ");

	for (i=0;i<8;i++)
	  {
		 printf("\tEnter no %d value:",(i+1));
		 scanf("%d",&vls);
		 total += vls;
	  }

	avg=float(total)/8;
// start from Zero in array to find out the Nearist Max and Min ;
	 min=0;
	 max=0;

	for(i=1;i<8;i++)
	 {
		if(vls>vls[min] && vls<avg)
		  min=i;
		 if(vls>avg)
			{
			  if (vls[max]<=avg)
				  max=i;
			  else if(vls[max]>avg && vls<vls[max])
					max=i;
			}
	 }

	printf("\n Avrage:(%f) between (%d) locates in Index %d and (%d) located in Index %d ",avg,vls[min],min,vls[max],max);

}

تحياتي

1

OMANI FOR EVER

-------------------------------------------------

post-12787-12780191801974.jpg

-------------------------------------------------

#13
العسولة كتب:

تسلم أخي دائما مبدع باجاباتك .... بس إذا تعرف اجابة سؤالي .ز باستخدام abs في الكود اللي كتبته

هذا باستخدام abs وان كنت لا ارى لها اي داعي فقط نقوم بتغيير الاشارات

#include <stdio.h>
#include<math.h>
int main()
{
int i,j,k=6;

//top side
for(i=1; i<=k; i++)
{
		  for(j=1; j<=k-i; j++)
			{
			 printf(" ");
			}

		  for(j=1; j<=2*i-1; j++)
			{
			 printf("*");
			}
 printf("\n");
}
  //downside
for(i=1; i<k; i++)
{
  for(j=1; j<=i; j++)
			{
					 printf(" ");
			 }
		  for(j=j;j<=abs(k-i+k-1); j++)
					 {
						printf("*");
					 }
					 printf("\n");
  }

return(0);

}

ملاحظة :هذا المثال قابل لزيادة حجم المعين الى اي درجة اخرى.. فقط قم بتغيير قيمة K لتحصل على احجام مختلفة .

تحياتي

1

OMANI FOR EVER

-------------------------------------------------

post-12787-12780191801974.jpg

-------------------------------------------------

#14
omani كتب:

هذا باستخدام abs وان كنت لا ارى لها اي داعي فقط نقوم بتغيير الاشارات

#include <stdio.h>
#include<math.h>
int main()
{
int i,j,k=6;

//top side
for(i=1; i<=k; i++)
{
		  for(j=1; j<=k-i; j++)
			{
			 printf(" ");
			}

		  for(j=1; j<=2*i-1; j++)
			{
			 printf("*");
			}
 printf("\n");
}
  //downside
for(i=1; i<k; i++)
{
  for(j=1; j<=i; j++)
			{
					 printf(" ");
			 }
		  for(j=j;j<=abs(k-i+k-1); j++)
					 {
						printf("*");
					 }
					 printf("\n");
  }

return(0);

}

ملاحظة :هذا المثال قابل لزيادة حجم المعين الى اي درجة اخرى.. فقط قم بتغيير قيمة K لتحصل على احجام مختلفة .

تحياتي

تسلم أخي مبدع دائما بإجاباتك الرائعة ... أنا طلبي بــ abs لأن الأستاذ طالبنها بالهطريقة وما يبى غيرها ....

مواضيع مشابهة