السلام عليكم ورحمة الله وبركاته ....
أسعد الله اوقاتكم بكل خير وبركه ...
احب ان استفسر منكم عن سبب الاخطاء في هذه الاكواد ..
علما ان هذه الاكواد الهدف منها رسم بياني للداله او مشتقتها او كلاهما معا ..
استخدمت هذا الكود لرسم الداله عن طريق وضع علامة * في اماكن محدده عن طريق for loop ....
#include<stdio.h>
#define MAX 55
int f(int t);
main (void)
{
char plot[MAX +2];
int i, t, funval;
for( i = -15; i <= MAX; i += 5 )
printf("%5d", i );
printf("\n");
for( i = -15; i <= MAX; i += 5 )
printf(" |", i );
printf("\n");
for( i = -15; i <= MAX + 1; ++i )
plot = ' ';
for( t = 0; t <= 9; ++t )
{
funval = f(t);
plot[funval] = '*';
plot[funval + 1] = '\0';
printf("t=%2d %s\n", t, plot);
plot[funval] = ' ';
plot[funval + 1] = ' ';
}
return (0);
}
int f (int t)
{
return ( t * t - 4 * t + 5 );
}وهذا هو الناتج
إلى هنا لا يوجد اي مشكله ...
============================================
ولكن عند تطبيق نفس الكود لعمل رسم بياني للمشتقه لم يعمل علما بان الكود الذي عملته هو التالي ،، وفيه قمت بوضع مشتقة الداله في مكان الداله السابقه ......
#include<stdio.h>
#define MAX 55
int f(int t);
main (void)
{
char plot[MAX +2];
int i, t, funval;
for( i = -15; i <= MAX; i += 5 )
printf("%5d", i );
printf("\n");
for( i = -15; i <= MAX; i += 5 )
printf(" |", i );
printf("\n");
for( i = -15; i <= MAX + 1; ++i )
plot = ' ';
for( t = 0; t <= 9; ++t )
{
funval = f(t);
plot[funval] = '*';
plot[funval + 1] = '\0';
printf("t=%2d %s\n", t, plot);
plot[funval] = ' ';
plot[funval + 1] = ' ';
}
return (0);
}
int f (int t)
{
return ( 2 * t - 4 );
}فظهر الناتج هكذا مع تداخل بعض الاحرف العربيه لا اعرف كيف اتت ؟؟؟ ..
وانا اريد ان يظهر الناتج هكذا لان اماكن النقاط عند حسابها نفس الاماكن المحدده في الرسم التالي ..
========================================================================
ولو فرضنا انني اريد عمل كود يقوم برسم اي داله يريدها المستخدم ,, سوف يطلب البرنامج عند تشغيله من المستخدم ادخل العوامل للداله ( أ س2 + ب س + ج ) اي سوف يطلب من المستخدم ادخال االارقام التاليه أ ، ب ، ج ..... ورمزت لها في الكود التالي بالاحرف a b c بالتوالي ... ولكن عند تشغيل الكود لم يعمل البرنامج كما اريد ويقول يوجد اخطاء ؟؟؟؟ فما هو السبب ؟؟؟
#include<stdio.h
#define MAX 55
int f(int t);
main (void)
{
char plot[MAX +2];
int a, b, c, i, t, funval;
printf(" Enter the coffiecent of the funcyion:");
scanf("%d%d%d", &a, &b, &c);
for( i = -15; i <= MAX; i += 5 )
printf("%5d", i );
printf("\n");
for( i = -15; i <= MAX; i += 5 )
printf(" |", i );
printf("\n");
for( i = -15; i <= MAX + 1; ++i )
plot = ' ';
for( t = 0; t <= 9; ++t )
{
funval = f(t);
plot[funval] = '*';
plot[funval + 1] = '\0';
printf("t=%2d %s\n", t, plot);
plot[funval] = ' ';
plot[funval + 1] = ' ';
}
return (0);
}
int f (int t)
{
return ( a * t * t + b * t + c);
}ولكم خالص تحياتي ؟؟
واتمنى ان لا اكون خالفت قوانين المنتدى بطرح هذا الاستفسار ولكن كما ترون اريد الاستفاده منكم ......