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

فلو تكرمتوا ان تبدوا لي رايكم وتصححوا اخطائي بالبرامج التاليه

مغلق
بدأه esaa في 10 فبراير 2008 · 9 رد · 961 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم:::

لدي ثلاث برامج يجب ان انجزها اليوم بالتحديد لاسلمهم :( غداً

طبعاً عملت مجهودي ولست بتلك الكفاءة

فلو تكرمتوا ان تبدوا لي رايكم وتصححوا اخطائي بالبرامج التاليه::

ساعود لارى ردكم الليلة

ان شاء الله اجد ردود

اثابكم الله

البرنامج الاول:: يقوم باستقبال سلاسل حرفية ثم يقوم بعّد عدد مرات ظهور حرف k?

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

#include<iostream.h>

#include<conio.h>

void main(){clrscr();

char ch;

int c=0,k=0;

while((ch=getche())!='\u'){

c++;

if(ch=='k')

k++;

}

cout<<"The number of char k is:"<<k;

getch();

}

ارجوا منكم تصحيح ماأخطأت به وتوضيح لي

:unsure:

البرنامج الثاني:طلب مني ان اعمل برنامج يقوم باستقبال اسم الطالب ومعدله ويظهر تققديره لكن باستخدام التفريع

switch case

انا عملت الكود لكن هاك نقطه توقفت عندها

وهي عندما اختبر القيمه ضمن سويتش عند الحالات كيس ماذا اكتب هل يصح ان اكتب هكذا

صححوا لي رجاءاً

:wacko:

void main(){

float avg;

char name[10];

cout<<"Enter your name and average";

cin>>name>>avg;

switch(avg){

case:'90';cout<<"Excelentt";break;

case:'80';cout<<very good";break;

...................................

...................

هل يصح ان اكتب في الحالات مثل مافعلت انا ارى انه خطأ

لكن كيف اعمل لاختبر اذا كان اكبر او يساوي 90 اطبع ممتاز

كيف يمكنني ان اعمله ضمن سوييتش كيس

؟؟

البرنامج الثالث:

كتابة برنامج يقوم بايجاد الدالة بور تستقبل رقم او ويكون الاساس ورقم ثاني ويكون الاس ؟

بحيت لو ادخلنا رقم 2 واس 2 يظهر الناتج 4

!!!

هذا البرنامج لم اعرف حله

ممكن :tantrum: المساعده؟؟

#2

السلام عليكم:

بالنسبه للاول لايوجد اخطاء

بالنسبه للثاني:

هذا الكود مناسب :

#include<iostream>
using namespace std;
void main()
{
float avg;
int f;
char name[10];
cout<<"Enter your name and average";
cin>>name>>avg;
f=int(avg);
f-=f%10;
cout<<f;
 switch(f)
 {
 case (90):cout<<"Excelentt"; break;
 case (80):cout<<"very good"; break;

 }
}
tvquran_6.gif

#3

بالنسبة للسؤال الثالث:

#include<iostream>
using namespace std;
void main()
{
 int a;
 int b;
 int t=1;
 char g='^';
cout<<"enter :";
cin>>a>>g>>b;
for(int i=1;i<=b;i++)
t*=a;
cout<<t<<endl;
}
tvquran_6.gif

#4

برنامجك الثالث يحتاج إلى دالة أت تصممها ومن ثم تستدعيها هذه أحد الحلول.

''‏اللهم إني أسالك إيمانا دائما وأسألك قلبا خاشعا وأسألك علما ‏نافعا وأسألك يقينا صادقا وأسألك دينا قيما وأسألك العافية من كل ‏بلية''

'‏اللهم أغفر للمؤمنين و المؤمنات و المسلمين و المسلمات الأحياء ‏منهم و الأموات'

www.it-scoop.com

#5

وعليكم السلام اخ فهد

الاول:: صحيح؟؟

طيب u\ تستخدم في ماذا؟؟

انا لست متأكد ان السلاش يو

والا آر الذي يستخدم للفراغ!!!

البرنامج الثاني ياأخي::

حين كتبت الجملة:

using namespace std;

مالغرض منها؟؟

انا لم افهمها!!

ولماذا عرفت الحرف fمن نوع صحيح؟؟

وهذه الجمله::

f=int(avg);
f-=f%10;
cout<<f;

هل من الممكن ان تشرح عمل كل واحده منها؟؟

لكي يتضح لي

طيب عندما وضعت الرقم 90 في الحالة كيس

من الممكن ان يدخل المستخدم معدل اكبر من 90 مثلا 95 فكيف يصح المعدل؟؟

لانك خصصت 90 بالتحديد فقط

ارجوا منك الاجابة على استفساراتي

جزاك اللله خير لتعاونك السريع معي

اثابك الله

البرنامج الثالث مامعني المتغير t الذي استخدمته ماوظيفته في البرنامج؟

والجمله :

t*=a;

مامعناها؟

وهل برنامج هذا صحيح ::

#include<iostream.h>
#include<conio.h>
int power(int a,int b);
void main(){clrscr();
int z,x,y;
z=power(x,y);
cout<<"the power of numbers is:"<<z;
}
int power(int a,int b){
int p;
p=a^b;
return p;
}

ارجوا التصحيح

شكرا جزيلا::::

اخSIFE-C هل ماقصدته هكذا

انظر للبرنامج السابق

واخبرني هل صحيح ام فيه تعديلات

وشكرا لك

#6
اقتباس
طيب u\ تستخدم في ماذا؟؟

أذا ضغط المستخدم على هذا الحرف ينهي الأدخال.

اما بالنسبه للسطر التالي:

#include<iostream.h>

ففي الكمبايلر الجديد يكتب:

#include<iostream>
using namespace std;

اقتباس
ولماذا عرفت الحرف fمن نوع صحيح؟؟

لان السوتش لاتقبل النوع فلوت.

وعمل f هنا ان يحول العدد الى صحيح ويقرب الى مضاعفات العشرة فالاعداد الى اكبر من 90 تصبح تسعين والى اكبر من 80 واقل من 90 تصبح 80 وهكذا

اقتباس
البرنامج الثالث مامعني المتغير t الذي استخدمته ماوظيفته في البرنامج؟

هنا احسب حاصل ضرب العدد في نفسة.

البرنامج الى كتبتة انت اخر شئ خطاء واضح في دالة القوة

ملاحظه اذا انت تستخدم الكومبايلر قديم

اكتب فوق

#include<iostream.h>

واحذف:

#include<iostream>
using namepsace std;
tvquran_6.gif

#7

طيب

في بالبرنامج الاخير اللي كتبته خطأ

كيف ممكن تصححه بنفس البرنامج اللي كتبته انا ؟

صححه لي رجاءا...

اذا انت موجود حاليا...

وشكراااا

لم افهم البرنامج الثاني اللي كتبته انت للدالة بور

لم افهم طريقة تعريفك للمتغير t?

كيف لضرب العدد في نفسه ؟؟

وضح لي

بعد اذنك.............

#8
p=a^b;

العملية ^ غير معرفه.

for(int i=1;i<=b;i++)
t*=a;
cout<<t<<endl;

المتغير t قيمته اولا 1 بعد ذلك نعمل تكرار يساوي عدد الاس مثلا 5 مرفوع للقوه 9 راح اكرر الضرب 9 مرات.

كل مرة اضرب العدد في نفسة.

tvquran_6.gif

#9

اخ essa ..

ساتدخل يا فهد معكم في الموضوع ..

اسمع ..

عندما ترفع عدد لاس عدد اخر ..

مثلا 2 للاس 3 (او 2 للقوة 3 ) فهذا يعني اننا سنضرب العدد الاول بنفسه بمقدار العدد الثاني ..

وفي مثالنا هذا سنضرب 2 بنفسه ثلاث مرات .. فيكون الناتج 2×2×2 = 8 ..

لذلك عند برمجتك لدالة الرفع للقوه .. يجب عليك ان تبرمج حلقة for تبدا من الواحد وتنتهي بالعدد الثاني .. وما تنفذه هو ضرب العدد الاول بنفسه وتعيين الناتج الى متغير اخر ليرجع هذا المتغير الى الدالة الرئيسية main ويطبع بذلك على الشاشه ...

الكود التالي يوضح لك برمجة الدالة power واستدعاءها ..

#include<iostream.h>

int power(int x , int y)
   {
			int re=1;
		 for (int i=y;i>=1;i--)
					 re *= x;
		  return re;
   }


void main()
	{
			 int a,b;
		   cout << "enter the first number .. "; 
		   cin >> a;
		   cout << "enter the second number ..";
			cin >> b;
cout << "the result is .... " << power(a,b);
   }

هذا هو الكود .. انسخه وجربه لديك في الكومبايلر الخاص بك .. وشاهد النتيجة .

اذا وجدت اي سطر غير واضح اسال وان شاءاالله اوضحه لك ..

تحياتي العطرة ..

يَارَبُ إِن ضَاقَت قُلُوُب الْنَّاسٍ عَنْ مّافِي .. مِنْ خَيْرٍٍ فَعَفْوكَ لَا يَضِيْقْ ..

#10

اشكرك ياأخ فهد واعتذر ان تعبتك معي

وشكرا لك ايضا ياأخ سنان:::

على المداخلة المفيده جدا والتوضيح ::

كنت اريد ان اطرح اسئلة اخرى لاافهم اكثر لانني لم اتوصل للحل المطلوب

لكن الوقت تأخر::

ولم يعد هناك مجال

لذا اعتبر ان الحل وصل ولكم جزيل الشكر

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

:clapping:

هذا الموضوع مغلق.

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…