PDA

View Full Version : یه کمکه فوری در ضمینه ی ++c



rezakhoshkele
یک شنبه 21 خرداد 1391, 21:42 عصر
سلام دوستان!
ممنون از انجمنتون!
حقیقتش فردا باید یه پروژه ی برنامه نویسی در ضمینه استاتیک دارم
http://http://img4up.com/up2/44637732532853256637.jpg (http://img4up.com/up2/44637732532853256637.jpg)http://img4up.com/up2/44637732532853256637.jpg



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

using namespace std;
int main ( )
{
double x1,x3,x4,k,m2,m3,m1=0,l1=0,l2=0,l0=0,f=0,g=9.8,a=0 ,b=0,c=0,l3,x5,x6,x2;
cin>>m3>>m2>>x1>>x2>>x3>>x4>>x5>>x6>>k;
l3= double sqrt((x5^2)+((x6+x2)^2);
l2=double sqr(x5^2+(x3-x6)^2) ;
l1=double sqr(x6^2+(x5=x2)^2) ;
a=double acos(x6+x2/l3) ;
b=double acos(x6/l1) ;
c=double acos((x3-x6)/l2) ;
f=((m3)(gcosc)-(m2gcosa))/cosb ;
m=((m2)(gsina)+(m3gsinc)+fsinb)/g ;
l0=(f-kl1)/k ;
cout<<" niruye fanar "<<f ;
cout<<" vazn jesm " <<m ;
cout<<" tool avaliyeye fanar "<<l0 ;
return 0;
}

خیلی ارور می ده!
نمی دونم مشکل از کجاست!
راستی استاد گفته این رو با نرم افزار کدبلاکس اجرا می کنه
ممنون می شم کمکم کنید
اینم لینک خوده برنامه!


http://www.4shared.com/file/RlcRNwQt/New_Text_Document__4_.html

barnamenevisforme
یک شنبه 21 خرداد 1391, 22:29 عصر
سلام

l3= double sqrt((x5^2)+((x6+x2)^2);
در حال حاضر compiler c ندارم که برنامه رو واستون بنویسم،ولی راهنمایی که میتونم بکنم اینه که موقع نوشتن فرمول،برنامه فقط جایگذاری انجام میده و معادله حل نمیکنه.
به همین خاطر شما باید فرمول ها رو طوری دسته بندی کنید که در طرف راست تساوی متغیر ها ،از طریق پارامتر مقدار بگیرن.و طرف چپ فقط باید یه متغیر بذاری که نتیجه رو در اون ذخیره کنی.البته روش حل معادله هم در برنامه نویسی به کار میره ولی به این صورت که واسه متغیر های سمت راست یه رنج تعریف میکنی و مرحله به مرحله به مقدار یه ابسیلن به اون اضافه میکنی تا وقتی که حاصل بشه اونی که شما میخوای.اگه به زبون دیگه ای بود واستون مینوشتم.

one hacker alone
یک شنبه 21 خرداد 1391, 22:37 عصر
نیاز به انجام چه محاسباتی داره یعنی فرمول چیه؟

rezakhoshkele
یک شنبه 21 خرداد 1391, 22:43 عصر
نیاز به انجام چه محاسباتی داره یعنی فرمول چیه؟

http://img4up.com/up2/94354531904269368157_thumb.jpg (http://img4up.com/viewer.php?file=94354531904269368157.jpg)

سلام

در حال حاضر compiler c ندارم که برنامه رو واستون بنویسم،ولی راهنمایی که میتونم بکنم اینه که موقع نوشتن فرمول،برنامه فقط جایگذاری انجام میده و معادله حل نمیکنه.
به همین خاطر شما باید فرمول ها رو طوری دسته بندی کنید که در طرف راست تساوی متغیر ها ،از طریق پارامتر مقدار بگیرن.و طرف چپ فقط باید یه متغیر بذاری که نتیجه رو در اون ذخیره کنی.البته روش حل معادله هم در برنامه نویسی به کار میره ولی به این صورت که واسه متغیر های سمت راست یه رنج تعریف میکنی و مرحله به مرحله به مقدار یه ابسیلن به اون اضافه میکنی تا وقتی که حاصل بشه اونی که شما میخوای.اگه به زبون دیگه ای بود واستون مینوشتم.
ممنون!
منم مچهول رو یه طرف میارم و معلوم یه طرف!....:(

barnamenevisforme
دوشنبه 22 خرداد 1391, 06:01 صبح
سلام

منم مچهول رو یه طرف میارم و معلوم یه طرف!....:(
به این روش نه.
فرض کنید که در معادله،m1،FabوLfree رو نیاز داشته باشید.باید فرمول رو طوری مرتب کنید،که اول m1 از اون به دست بیاد.
مثلاm1=a+b^c در واقع a,b,c اینجا معلوما(یعنی از طریق جایگذاری از طرف ما و یا هر کاربر دیگه)این وسط m1 فقط مجهوله که برنامه با جایگذاری سه پارامتر دیگه به دستش میاره.حالا تو دو مرحله بعد جایگذاری و به دست آوردن دو مجهول دیگه رو انجام میدیم.(البته فرمول ها فرضیه فقط واسه مثال)
ولی اون چیزی که شما در برنامه نوشتید(13=a+b) به این معنیه که برنامه باید معادله ای رو حل کنه تا مقدار a,b رو بدست بیاره.
مثلا میتونی یه همچین چیزی داشته باشی:

al3= double sqrt((x5^2)+((x6+x2)^2)
که x2,x5,x6 از طریق جایگذاری مشخص میشن و حاصل در a13 قرار میگیره،نه 13