عرض مشاركة واحدة
منتديات طلاب وطالبات جامعة الملك عبد العزيز منتديات طلاب وطالبات جامعة الملك عبد العزيز
قديم 13-11-2009, 01:56 PM   #9

Mr.Ahmad

عضو هيئة تدريس

الصورة الرمزية Mr.Ahmad

 
تاريخ التسجيل: Jul 2008
كلية: كلية الحاسبات وتقنية المعلومات
التخصص: IT
نوع الدراسة: عضو هيئة تدريس
المستوى: متخرج
البلد: جــــدة
الجنس: ذكر
المشاركات: 2,477
افتراضي رد: مساعدة في حل واجب البرمجة lab5

المشاركة الأصلية كتبت بواسطة Fiery Phoenix مشاهدة المشاركة
كود:
/*
Calculates the hypotenuse and area of a rectangular rectangle 
*/
 
#include<stdio.h>   /* printf, scanf definitions */ 
#include<math.h>    /* sqrt, pow definitions */
 
double
hypotenuse(double a,double b)
{
    return(sqrt(pow(a,2)+pow(b,2)));
}
 
double
area(double a,double b)
{
    return((a+b)/2);
}
 
int
main(void)
{
    double a;     /* input - length */ 
    double b;     /* input - height */
 
    /* 1&2. Get the height and length from the user. */ 
    printf("Please Enter Rectangle Lenght: ");
    scanf("%lf", &a);
    printf("Please Enter Rectangle Height: ");
    scanf("%lf", &b);
    /* 3&4. Calculate the hypotenuse and area of the rectangle. */
    hypotenuse(a,b);
    area(a,b); 
    /* 5&6. Display the value of both. */ 
    printf("H = %.2f\nA = %.2f\n", hypotenuse, area);
 
    return(0);
}
ممكن أحد يعلمني فين الخطأ هنا؟ البرنامج اشتغل معاي تمام لكن كل ما ادخل ارقام يطلع لي أصفار، ما يحسبها صح.
التصحيح :
كود:
/* Calculates the hypotenuse and area of a rectangular rectangle */
#include
<stdio.h>/* printf, scanf definitions */
#include
<math.h>/* sqrt, pow definitions */
double
hypotenuse(
double a,double b) { return(sqrt(pow(a,2)+pow(b,2))); }
double
area(
double a,double b) { return((a+b)/2); }
int
main(
void) { double a; /* input - length */ double b; /* input - height */
/* 1&2. Get the height and length from the user. */ printf("Please Enter Rectangle Lenght: "); scanf("%lf", &a); printf("Please Enter Rectangle Height: "); scanf("%lf", &b); /* 3&4. Calculate the hypotenuse and area of the rectangle. */
/* 5&6. Display the value of both. */ printf("H = %.2f\nA = %.2f\n", hypotenuse(a,b), area(a,b)); return(0); }
الخطأ كان عندك في أستدعاء Function يعيد قيمة في الفراغ .
يجب إذ كانت الوظيفة تعيد قيمة أن تستقبل إعادتها بأي طريقة , سواءاً تسندها لمتغير أو تضعها مباشرة في دالة الطباعة .

بالتوفيق .

 

توقيع Mr.Ahmad  

 

سبحان الله وبحمد ,,, سبحان الله العظيم
الحمد لله كما ينبغي لجلال وجهه وعظيم سلطانه .
اللهم صل على محمد وعلى آل محمد كما صليت على إبراهيم وعلى آل إبراهيم إنك حميد مجيد . اللهم بارك على محمد وعلى آل محمد كما باركت على إبراهيم وعلى آل إبراهيم إنك حميد مجيد.

 

Mr.Ahmad غير متواجد حالياً   رد مع اقتباس