با سلام و خسته نباشی خدمت اعضای گروه کدی که من نوشتم کد قاعده کرامر برای حل سه معادله سه مجهول است،منتها یه اشکال در این کد است، موقعی من کد را ران میکنم فقط یه جواب از سه جواب را به من می دهد.اگه امکان داره یه نگاهی بهش بندازین و اشکالش را درج کنین.با تشکر.
 #include<stdio.h>
 
#include<conio.h>
#include<math.h>
main()
{
int i,j,k,l,m=0,y,u,r;
float d,determ=1.0,a[3][3],b[3],x[3],c[3][3],deltam[3],delta=1.0,p[3][3],q[3];
for(i=0;i<=2;i++)
{
for(j=0;j<=2;j++)
{
printf("matris a");
scanf("%f",&a[i][j]);
}
}
for(l=0;l<=2;l++)
{
printf("bordar b");
scanf("%f",&b[l]);
}
for(i=0;i<=2;i++)
{
for(j=0;j<=2;j++)
{
c[i][j]=a[i][j];
}}
for(i=0;i<2;i++)
{
for(j=i+1;j<=2;j++)
{
d=c[j][i]/c[i][i];
for(k=0;k<=2;k++)
{
c[j][k]=c[j][k]-(d*c[i][k]);
}
}
}
for(i=0;i<=2;i++)
{
for(j=0;j<=2;j++)
{
if(i==j)
determ=determ*c[i][j];
}
}
for(y=0;y<=2;y++){
for(u=0;u<=2;u++){
p[y][u]=a[y][u];
}}
for(j=0;j<=2;j++)
{
for(i=0;i<=2;i++)
{
for(l=0;l<=2;l++)
{
if(i==l)
{
p[i][j]=b[l];
if(l==2 && m<=2)
{
for(i=0;i<2;i++)
{
for(j=i+1;j<=2;j++)
{
d=p[j][i]/p[i][i];
for(k=0;k<=2;k++)
{
p[j][k]=p[j][k]-(d*p[i][k]);
}
}
}
for(i=0;i<=2;i++)
{
for(j=0;j<=2;j++)
{
if(i==j){
delta=delta*p[i][j];
}
}}
deltam[m]=delta;
x[m]=(deltam[m])/(determ);
for(r=0;r<=2;r++){
if(r==m){
q[r]=x[m];
} }
m=m+1;
for(y=0;y<=2;y++){
for(u=0;u<=2;u++){
p[y][u]=a[y][u];
}}
}
}
}
}}
for(r=0;r<=2;r++){
printf("%f",q[r]);
}
getch();
}

جدیدترین سوالات




با سلام و خسته نباشی خدمت اعضای گروه کدی که من نوشتم کد قاعده کرامر برای حل سه معادله سه مجهول است،منتها یه اشکال در این کد است، موقعی من کد را ران میکنم فقط یه جواب از سه جواب را به من می دهد.اگه امکان داره یه نگاهی بهش بندازین و اشکالش را درج کنین.با تشکر.
 #include<stdio.h>
 
#include<conio.h>
#include<math.h>
main()
{
int i,j,k,l,m=0,y,u,r;
float d,determ=1.0,a[3][3],b[3],x[3],c[3][3],deltam[3],delta=1.0,p[3][3],q[3];
for(i=0;i<=2;i++)
{
for(j=0;j<=2;j++)
{
printf("matris a");
scanf("%f",&a[i][j]);
}
}
for(l=0;l<=2;l++)
{
printf("bordar b");
scanf("%f",&b[l]);
}
for(i=0;i<=2;i++)
{
for(j=0;j<=2;j++)
{
c[i][j]=a[i][j];
}}
for(i=0;i<2;i++)
{
for(j=i+1;j<=2;j++)
{
d=c[j][i]/c[i][i];
for(k=0;k<=2;k++)
{
c[j][k]=c[j][k]-(d*c[i][k]);
}
}
}
for(i=0;i<=2;i++)
{
for(j=0;j<=2;j++)
{
if(i==j)
determ=determ*c[i][j];
}
}
for(y=0;y<=2;y++){
for(u=0;u<=2;u++){
p[y][u]=a[y][u];
}}
for(j=0;j<=2;j++)
{
for(i=0;i<=2;i++)
{
for(l=0;l<=2;l++)
{
if(i==l)
{
p[i][j]=b[l];
if(l==2 && m<=2)
{
for(i=0;i<2;i++)
{
for(j=i+1;j<=2;j++)
{
d=p[j][i]/p[i][i];
for(k=0;k<=2;k++)
{
p[j][k]=p[j][k]-(d*p[i][k]);
}
}
}
for(i=0;i<=2;i++)
{
for(j=0;j<=2;j++)
{
if(i==j){
delta=delta*p[i][j];
}
}}
deltam[m]=delta;
x[m]=(deltam[m])/(determ);
for(r=0;r<=2;r++){
if(r==m){
q[r]=x[m];
} }
m=m+1;
for(y=0;y<=2;y++){
for(u=0;u<=2;u++){
p[y][u]=a[y][u];
}}
}
}
}
}}
for(r=0;r<=2;r++){
printf("%f",q[r]);
}
getch();
}

جستجو در بانک سوالات
در این قسمت می توانید بخشی از متن سوال را وارد نموده و به دنبال سوال مورد نظر خود بگردید:

بخشی از متن سوال:

کد نویسی قاعده کرامر در زبان c

با سلام و خسته نباشی خدمت اعضای گروه کدی که من نوشتم کد قاعده کرامر برای حل سه معادله سه مجهول است،منتها یه اشکال در این کد است، موقعی من کد را ران میکنم فقط یه جواب از سه جواب را به من می دهد.اگه امکان داره یه نگاهی بهش بندازین و اشکالش را درج کنین.با تشکر.

 #include<stdio.h>
 
#include<conio.h>
#include<math.h>
main()
{
int i,j,k,l,m=0,y,u,r;
float d,determ=1.0,a[3][3],b[3],x[3],c[3][3],deltam[3],delta=1.0,p[3][3],q[3];
for(i=0;i<=2;i++)
{
for(j=0;j<=2;j++)
{
printf("matris a");
scanf("%f",&a[i][j]);
}
}
for(l=0;l<=2;l++)
{
printf("bordar b");
scanf("%f",&b[l]);
}
for(i=0;i<=2;i++)
{
for(j=0;j<=2;j++)
{
c[i][j]=a[i][j];
}}
for(i=0;i<2;i++)
{
for(j=i+1;j<=2;j++)
{
d=c[j][i]/c[i][i];
for(k=0;k<=2;k++)
{
c[j][k]=c[j][k]-(d*c[i][k]);
}
}
}
for(i=0;i<=2;i++)
{
for(j=0;j<=2;j++)
{
if(i==j)
determ=determ*c[i][j];
}
}
for(y=0;y<=2;y++){
for(u=0;u<=2;u++){
p[y][u]=a[y][u];
}}
for(j=0;j<=2;j++)
{
for(i=0;i<=2;i++)
{
for(l=0;l<=2;l++)
{
if(i==l)
{
p[i][j]=b[l];
if(l==2 && m<=2)
{
for(i=0;i<2;i++)
{
for(j=i+1;j<=2;j++)
{
d=p[j][i]/p[i][i];
for(k=0;k<=2;k++)
{
p[j][k]=p[j][k]-(d*p[i][k]);
}
}
}
for(i=0;i<=2;i++)
{
for(j=0;j<=2;j++)
{
if(i==j){
delta=delta*p[i][j];
}
}}
deltam[m]=delta;
x[m]=(deltam[m])/(determ);
for(r=0;r<=2;r++){
if(r==m){
q[r]=x[m];
} }
m=m+1;
for(y=0;y<=2;y++){
for(u=0;u<=2;u++){
p[y][u]=a[y][u];
}}
}
}
}
}}
for(r=0;r<=2;r++){
printf("%f",q[r]);
}
getch();
}



66
امتیاز جایزه داشت!
0
امتیاز

جواب های موجود برای این سوال:


ازین پس می توانید به کاربرانی که دوست دارید هدیه بدهید! کافیست بر روی علامت    در کنار تصویر آنها کلیک کنید!

2


جواب برای این سوال ثبت شده است!

تازه ترین


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

پرامتیاز ترین


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

2 جواب برای این سوال ثبت شده!

چینش بر اساس زمان ثبت


چینش بر اساس امتیاز



29307
10024
90759

Guest

من کدتو اجرا کردم. الگوریتمت مشکل داره فک کنم چون جواب های صحیحی نمی ده اما به خاطر شرطی که داری:

 if(l==2 && m<=2)


فقط وقتی متغیر l مقدار ۲ رو داره مقادیر حساب می شن و لذا فقط در اون صورت تو یک جواب خواهی داشت. لذا یا باید شرطتو عوض کنی یا حذفش کنی.
0
امتیاز


29307
10024
90759

Guest

مقادیر متغیر m رو پرینت کن توی لوپ ها و مطمین شو که در نهایت تا 2 میره.... در غیر این صورت داره هربار جواب صحیح رو توی q[0] ذخیره می کنه.
0
امتیاز




جواب تو چیه؟
userImage
کاربر میهمان



22500 امتیاز هدیه بهترین جواب

20000 امتیاز هدیه بهترین جواب


20000 امتیاز هدیه بهترین جواب


















پرسش سوال جدید :: تبلیغات در سوال و جواب :: گروه های سوال و جوابی

تمامی حقوق مادی و معنوی، متعلق به وب سایت سوال جواب (soja.ai) و تیم مدیریتی آن می باشد.

طراحی و اجرا : گروه مشاوران فناوری اطلاعات

پاسخ های موجود در سایت توسط کاربران سایت ثبت می شود،
سایت سوال و جواب هیچ مسئولیتی در قبال صحت و محتوی پاسخ ها ندارد، هرچند تا حد امکان نظارت بر محتوی آنها صورت می گیرد.