View Full Version : سوال در مورد خط فرمان
aliscan
جمعه 19 آبان 1391, 08:02 صبح
سلام :لبخندساده:
یه برنامه میخواسـتم (++C) که با اسـتفاده از خطـ فرمان اجرا شـود
و ضرایبـــ معادله درجه دوم رو بگیره و ریشه های اون رو چاپــ کنه:خجالت:
اگه کسـی برنامه اش رو نمی نویـسه حداقل راهنمایی کنه که به چه صورت باید
از خطـ فرمان استفاده کرد؟
ممــــنون میشم اگه دوســــتان راهنما یـی کنند.:قلب:
maktoom
جمعه 19 آبان 1391, 09:15 صبح
سلام
شما با آرگومانهای خط فرمان کار کردید؟ می دونید argc و argv چی هستن؟ اگه نمی دونید اشکالی نداره کلید تمرین شما، توی فهمیدین نقش این دوتاس توی برنامتون.
توضیحات جامع و کامل رو می تونید توی کتابای مرجع مطالعه بفرمایید. (راهنمایی: معادله درجه دو رو با روش دلتا برنامه نویسی کنید.)
aliscan
جمعه 19 آبان 1391, 09:26 صبح
سلام
شما با آرگومانهای خط فرمان کار کردید؟ می دونید argc و argv چی هستن؟ اگه نمی دونید اشکالی نداره کلید تمرین شما، توی فهمیدین نقش این دوتاس توی برنامتون.
توضیحات جامع و کامل رو می تونید توی کتابای مرجع مطالعه بفرمایید. (راهنمایی: معادله درجه دو رو با روش دلتا برنامه نویسی کنید.)
سلام
ممنون بابت راهنمایتون برنامه بدست آوردن ریشه ها رو می تونم بنویسم مشکلی
ندارم ولی استفاده از اون دوتا آرگومانی که اشاره کردین رو بلد نیستم،دقیقا دنبال
همین دوتا هستم argc و argv میشه منبعی رو معرفی کنید تا کار کردن با اینا رو
یاد بگیرم.
با تشـــــــــــــــــکر:قلب:
H_G_G_I
جمعه 19 آبان 1391, 10:12 صبح
هر برنامه رو که می خوای اجرا کنی می تونی یه چیزایی رو به عنوان پارامتر بهش بفرستی !
مثلا به یو دی کی وقتی -editor ارسال کنی ادیتور میاد !
برای این کار باید برنامه رو از طریق خط فرمان CMD اجرا کنی و پارامترهاش رو جلوش بنویسی !
C:\myProg.exe Hello Bye
یا یه شروت کات از فایل اگزت بسازی و در اخر ادرس پارامتر هایی که می خوای رو بعد از ادرس برنامه بنویسی !
یا برنامه OpenArg رو نصب کنی و رو هرچی خاستی کلیک راست کنی و با پارامتری که می خوای اجراش کنی !
argc
تعداد پارامتر های ارسالیه ! ما دوتا فرستادیم Hello و Bye
argv هم پارامتر هاست !
تو کنسول argv[0] ادرس برنامه هست ! پس argc میشه 3
argv[0] == Program directory
argv[1] == Hello
argv[2] == Bye
اینم مثال ::
#include <iostream>
int main(int argc, char** argv)
{
std::cout << argc << std::endl;
for(int i =0; i < argc; i++)
{
std::cout << argv[i] << std::endl;
}
system("PAUSE");
return 0;
}
aliscan
جمعه 19 آبان 1391, 11:03 صبح
هر برنامه رو که می خوای اجرا کنی می تونی یه چیزایی رو به عنوان پارامتر بهش بفرستی !
مثلا به یو دی کی وقتی -editor ارسال کنی ادیتور میاد !
برای این کار باید برنامه رو از طریق خط فرمان CMD اجرا کنی و پارامترهاش رو جلوش بنویسی !
C:\myProg.exe Hello Bye
یا یه شروت کات از فایل اگزت بسازی و در اخر ادرس پارامتر هایی که می خوای رو بعد از ادرس برنامه بنویسی !
یا برنامه OpenArg رو نصب کنی و رو هرچی خاستی کلیک راست کنی و با پارامتری که می خوای اجراش کنی !
argc
تعداد پارامتر های ارسالیه ! ما دوتا فرستادیم Hello و Bye
argv هم پارامتر هاست !
تو کنسول argv[0] ادرس برنامه هست ! پس argc میشه 3
argv[0] == Program directory
argv[1] == Hello
argv[2] == Bye
اینم مثال ::
#include <iostream>
int main(int argc, char** argv)
{
std::cout << argc << std::endl;
for(int i =0; i < argc; i++)
{
std::cout << argv[i] << std::endl;
}
system("PAUSE");
return 0;
}
خیلــی ممنونم ازتون یه تســت بزنم ببینم چی میشه مرســی دوست عزیز:قلب:
aliscan
جمعه 19 آبان 1391, 12:58 عصر
من تو نوشـتن برنامه اش مـشکلی ندارم.http://forum.p30world.com/images/sq-smile/sq_25.png
این برنامه ای اسـت که خودم نوشتم حالا میخوام بدونم چه جوری بـا استفاده از آرگومانهای خط فرمان
میـشه اون چیزی که میـخوام رو در آورد؟
این برنامه ای رو که نوشتم تو کامپایلر ++Turbo C هستش اگه میشه مبتدی تر توضیح دهید که این کد
رو چه جوری با استفاده از خط فرمان ازش استفاده کنم؟http://forum.p30world.com/images/sq-smile/sq_19.png
#include <iostream.h>
#include <math.h>
void main()
{
int a, b, c;
int delta;
cout<<"Please Enter a:"<<endl;
cin>>a;
cout<<"Please Enter b:"<<endl;
cin>>b;
cout<<"Please Enter c:"<<endl;
cin>>c;
delta = (b*b)-(4*a*c);
if(delta == 0)
{
cout<<"The only answer:"<<"x= "<<(-b)/(2*a);
}
else if(delta > 0)
{
cout<<"Two answers:"<<endl<<"x1= "<<((-b)+sqrt(delta))/(2*a)<<endl;
cout<<"x2= "<<((-b)-sqrt(delta))/(2*a);
}else
cout<<"NO Answer";
return;
}
بازم ممنونhttp://forum.p30world.com/images/sq-smile/sq_9.png
مسعود اقدسی فام
جمعه 19 آبان 1391, 13:15 عصر
همونطوری که دوستمون گفتن آرگومانها رو دریافت کنید و با تابعی مثل atoi و atof تبدیل به عدد کنید و کارا را انجام بدید. مثلا آرگومان صفر که اسم برنامه هستش و بیخیال. آرگومان یک رو atof کن به a. بعدی رو به b و بعدی رو به c.
aliscan
جمعه 19 آبان 1391, 15:13 عصر
مــرسی ممنونم از راهنمایتون بلاخــره قضیه استفاده از این آرگومانها دستم اومد.http://forum.p30world.com/images/sq-smile/sq_23.png
دمتون گرم،از اینکه کمکم کردین.http://forum.p30world.com/images/sq-smile/sq_8.png
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.