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

[مساعدة] برنامج صغير بلغة C

بدأه cYounes في 18 أكتوبر 2009 · 7 رد · 580 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكــم ورحمـة الله وبركاتــه ،،

هذه أول مشاركة لي في هذا المنتدى، أرجو أن أجد سعة الرحب منكم :)

أنا طالب بفرنسا قسم البرمجة وعندي مشكلة مع تمرين يجب أن أقدمه يوم غد:

التمرين يقول:

أي رقمين يكون صديقان إذا كان مجموع قواسم كل واحد منهما يساوي الآخر

مثل :

284 = 1 + 2 + 4 + 5 + 10 + 11 +20 + 22 + 44 + 55 + 110

وهي قواسم 220

و

220 = 1 + 2 + 4 + 71 + 142

التي هي قواسم 284

السؤال:

أكتب برنامج يظهر جميع الأرقام الصديقها لبعضها بين 1 و 400

كانت محاولتي كالتالي:

#include <stdio.h>
#include <math.h>

int main (void)

{
	int n1=1;
	int n2=1;
	int d1=1;
	int d2=1;
	int s1=0;
	int s2=0;

	while (n1<=400) {
	n1=n1+1;
	for(d1=1;d1<n1;d1++)
	if(n1%d1==0) s1=s1+d1;
	}

	while (n2<=400){
	n2=n2+1;
	for(d2=1;d2<n2;d2++)
	if(n2%d2==0) s2=s2+d2;
	}
	if (n1==s2 && n2==s1)
	printf("les nombres amis entre 1 et 400 sont %d et %d, ",n1,n2);


	return 0;
}

لكن بدون جدوى، يا ريت توضحوا لي الخطأ أين هو وكيف يمكن تصليحه.

تحياتي للجميع :)

#2

ok

تم تعديل هذه المشاركة بواسطة Ali Al-Zyoud في 18 أكتوبر 2009 في 16:07

#3
 

#include<iostream>
#include<conio.h>
using namespace std;
void main()
{
 int temp;
 for(int i=1;i<=400;i++)
 {
  cout<<i<<"	";
  temp=0;
  for(int j=1;j<=i/2;j++)
   if(i%j==0) 
	temp+=j;
  cout<<temp<<endl;
 }

getch();
}

تم تعديل هذه المشاركة بواسطة Ali Al-Zyoud في 18 أكتوبر 2009 في 16:21

#4
Ali Al-Zyoud كتب:
ok

أهلا أخي، بارك الله فيك، لكن هذه أي لغة؟ ليست لغة سي؟

#5
cYounes كتب:
أهلا أخي، بارك الله فيك، لكن هذه أي لغة؟ ليست لغة سي؟

??????

its ok i will help you

you mean using cout/cin instead of printf ???

تم تعديل هذه المشاركة بواسطة Ali Al-Zyoud في 18 أكتوبر 2009 في 17:18

#6
#include <stdio.h>
#include <math.h>
int main (void)
{

 int temp;
 for(int i=1;i<=400;i++)
 {
 temp=0;
 for(int j=1;j<=i/2;j++)
	if(i%j==0) 
	temp+=j;
	printf("les nombres amis entre 1 et 400 sont %d et %d\n",i,temp);
	}
	return 0;


}

is it ok ??

sorry i dont have arabic language on this PC

تم تعديل هذه المشاركة بواسطة Ali Al-Zyoud في 18 أكتوبر 2009 في 17:37

#7
Ali Al-Zyoud كتب:
#include <stdio.h>
 #include <math.h>
 int main (void)
 {

  int temp;
  for(int i=1;i<=400;i++)
  {
  temp=0;
  for(int j=1;j<=i/2;j++)
	 if(i%j==0) 
	 temp+=j;
	 printf("les nombres amis entre 1 et 400 sont %d et %d\n",i,temp);
	 }
	 return 0;


 }

is it ok ??

sorry i dont have arabic language on this PC

بارك الله فيك أخي ، اشتغل بشكل جيد :)

الله يعطيك ما تتمنى.

#8

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

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