08-05-2013, 07:35 PM
|
#5
|
تاريخ التسجيل: Jul 2012
نوع الدراسة: إنتظام
المستوى: الثالث
الجنس: ذكر
المشاركات: 52
|
رد: أداة لعمليات الـ Vectors
متعووب عليه يعطيك العافيه
|
الله يعافيك تعبكم راحة
لم أطبقها إلى الآن ولكن الفكرة لوحدها " ما شاء الله تبارك الله"
الله ينفعك بما علمك ... ابداااااااع قلما نشاهد مثله
شكرا خزان الأحزان واسمحلي أن أسميك خزان الإبداع :)
|
جزاك الله خير
أرفقت الكود بآخر الرد للإطلاع عليه إن حبيت مهندس عبدالله
شرفني مرورك
omg
ماشاء الله تبارك الله عندنا مبدعيييين
ياخي ليه مافكرت فيها الترم الاول لما كنت آخذ فيزياء ؟
جزاك الله خيـــــــر والله ينفع بك ويكتب لك الأجر ..
|
وإياك يارب
الترم الأول مبدع ومعيد في الأحياء والكيمياء
الشفرة المصدرية
كود:
//c++ اللغة
// دالة acos() = inverse cos
// دالة sqrt() = الجذر التربيعي
#include <iostream>
#include <math.h>
using namespace std;
const double Pay = 3.141592654 ;
class Vector{
public:
double X ;
double Y ;
double Z ;
};
int main(){
int x = 0 ;
int num = 0;
Vector Sum, Dot, Cross, Angle;
Dot.X = 1 ; Dot.Y = 1 ; Dot.Z = 1 ;
Sum.X = 0 ; Sum.Y = 0 ; Sum.Z = 0 ;
Cross.X = 1 ; Cross.Y = 1 ; Cross.Z = 1 ;
Angle.X = 0 ; Angle.Y = 0 ; Angle.Z = 0 ;
cout << "\n Please insert the number of Vectors : ";
cin >> num ;
cout << "\n\n================";
for (int c = 0 ; c < num ; c++)
{
cout << "\nVector " << c + 1 ;
cout << "\n================\n";
Vector Q ;
cout << "x : ";
cin >> Q.X;
cout << "y : ";
cin >> Q.Y;
cout << "z : ";
cin >> Q.Z;
Sum.X = Sum.X + Q.X ; Sum.Y = Sum.Y + Q.Y ; Sum.Z = Sum.Z + Q.Z ;
Dot.X = Dot.X * Q.X ; Dot.Y = Dot.Y * Q.Y ; Dot.Z = Dot.Z * Q.Z ;
cout << "Vector Angle with = \t x: " << acos(Q.X/sqrt( (Q.X*Q.X+Q.Y*Q.Y+Q.Z*Q.Z))) * 180/Pay ; // Pay = 3.1415926
cout << " \t y: " << acos(Q.Y/sqrt( (Q.X*Q.X+Q.Y*Q.Y+Q.Z*Q.Z))) * 180/Pay ;
cout << " \t z: " << acos(Q.Z/sqrt( (Q.X*Q.X+Q.Y*Q.Y+Q.Z*Q.Z))) * 180/Pay ;
cout << "\nAbsolute Value = \t " << sqrt( (Q.X*Q.X+Q.Y*Q.Y+Q.Z*Q.Z));
if ( x != 0 ){
double TempX = Cross.X , TempY = Cross.Y, TempZ = Cross.Z;
Cross.X = (TempY * Q.Z) - (Q.Y * TempZ);
Cross.Y = (TempX * Q.Z) - (Q.X * TempZ);
Cross.Z = (TempX * Q.Y) - (Q.X * TempY);
}else{
Cross.X = Q.X; Cross.Y = Q.Y; Cross.Z = Q.Z;
}
x++;
cout << "\n\n================";
}
Angle.X = acos( Cross.X / sqrt( (Dot.X*Dot.X+Dot.Y*Dot.Y+Dot.Z*Dot.Z) ) ) * 180/Pay ;
Angle.Y = acos( Cross.Y / sqrt( (Dot.X*Dot.X+Dot.Y*Dot.Y+Dot.Z*Dot.Z) ) ) * 180/Pay ;
Angle.Z = acos( Cross.Z / sqrt( (Dot.X*Dot.X+Dot.Y*Dot.Y+Dot.Z*Dot.Z) ) ) * 180/Pay ;
if (x > 1 ){
cout << "\n\n\t================[Final result]================ \n";
cout << "\tSum of Vectors = " << Sum.X << "i " << Sum.Y << "j " << Sum.Z << "k";
cout << "\n\tDot of Vectors = " << Dot.X+Dot.Y+Dot.Z;
cout << "\n\tAbsolute Value = " << sqrt( (Dot.X*Dot.X+Dot.Y*Dot.Y+Dot.Z*Dot.Z));
cout << "\n\tCross Vector = " << Cross.X << "i "
<< Cross.Y << "j "
<< Cross.Z << "k";
cout << "\n\tAngle of Vector = "
<< "\n\t\t\t x: " << Angle.X
<< "\n\t\t\t y: " << Angle.Y
<< "\n\t\t\t z: " << Angle.Z ;
cout << "\n\t================[Final result]================ \n";
};
return 0;
}
|
|
هذا مكـانـي وانت هـذا مـكانـك = والحيـره اللي تـجمـع اثنين علّـه
غـلطة زماني وانت غلطة زمانـك = مثـلي تــحمّـل ما تـحملت شلّـه
صبرك حبيبي جاير الوقت هانـك = من لا تـزهّـل لك تـجـنّب وخـلّـه
مـن لا يـهمــه عـزّك وعـزّ شـانك = قل لـه عـلى وعد السلاطين قل له
وإن كان ظنك فيه كذاب وخـانـك = مـا ضـرّنا فـي أول الـعـمــر زلّـه
البعض أقـرب لك من أول بنانك = كـم مـن يميـنٍ خانها الكف كـلّـه
|
|
|
|