View previous topic :: View next topic |
Author |
Message |
afshin مهمون يكي دو روزه
Joined: 15 May 2006 Posts: 10
|
Posted: Mon May 15, 2006 5:38 pm Post subject: eshkal dar nasb-e C++ lotfan komak |
|
|
salam be hame doostan-e aziz, man ozve jadid -e group hastam & dar avalin voroodam 1 solal-e asasy dashtam , mishe man ro dar mored-e nasbe C++ rahnamaee konin, man bad az nasb-e barname & neveshtan kod ha & ejrai-e an, safhee OUTPUT zaher nemisheh !!! vaghen moonda chikar konam!!!!! hata rooie chand computer ham emtehan karda,valy farghy nakardeh
age kasy midoone moshkel az kojast, lotfan komak koneh
vaghean mamnoon |
|
Back to top |
|
|
vahid بي تو هرگز
Joined: 26 Nov 2004 Posts: 3067 Location: Tehran
|
Posted: Tue May 16, 2006 1:34 pm Post subject: |
|
|
من نميدونم در چه حد بلدي لذا اين راهنمايي رو ميكنم كه انتهاي برنامه ات cin ميكني يا نه ؟
.... اگه هم مشكل از اين نيست . نسخه كامپايلرت چيه و اينكه windows هست يا dos . |
|
Back to top |
|
|
vahid بي تو هرگز
Joined: 26 Nov 2004 Posts: 3067 Location: Tehran
|
Posted: Wed May 17, 2006 2:09 pm Post subject: |
|
|
براي اينكه بفهمي نسخه كامپايلرت چيه : اصولا تو همه برنامه ها ميتوني از منوي help بري قسمت about يا گزينه اي مشابه رو انتخاب كني و ببيني .
در مورد كامپايلر جدا از برنامه هم . اون محيطي كه شما توش مي نويسي يه ويرايشگر معمولي هست . مي توني برنامه ات رو توي notepad بنويسي بعد براي كامپيال بسته به كامپايلر فايلي به نام مثلا turbo رو با پارامترهاي ورودي كه توش نام فايلي كه سورس كدت توش هست رو اجرا مي كني بعد با فايلي به نام linker برنامه رو Exe مي كني . كه معمولا راحت تر اينه كه تو همون محيط كامپايلر با ctrl+f9 كامپايل رو انجام بدي
برنامه زير رو تو يه كامپايلرت اجرا كن ببين اجرا ميشه يا نميشه :
|
#include<stdio.h>
#include<conio.h>
main(){
long int a,s=0,r,i=0,j;
printf("Enter a binery number :");
scanf("%ld",&a);
for(;a;i++){
r=a%10;
if(r) {
for(j=i;j;j--) r*=2;
s+=r;
}
a=a/10;
}
printf("%ld = %c",s,s);
return 0;
} |
|
|
Back to top |
|
|
arash مدير بخش سي
Joined: 27 Nov 2004 Posts: 1232 Location: www.parsx.com
|
Posted: Wed May 17, 2006 10:30 pm Post subject: |
|
|
در ضمن مطمئن شو که فلدر TC در درایو :C باشه در غیر این صورت باید باید از منوی option گزینه directories رو انتخاب کنی
و در نهایت محل جدید رو وارد کنی |
|
Back to top |
|
|
afshin مهمون يكي دو روزه
Joined: 15 May 2006 Posts: 10
|
Posted: Thu May 18, 2006 10:11 am Post subject: |
|
|
واقعاً ممنون از راهنمایی های شما دوستان.
تا مرحله ای که من کدهای یک برنامه را می نویسم و اونها را کامپایل می کنم، هیچ مشکلی پیش نمی یاد، یعنی اگه خطایی تو کدها باشه کامپایلر خودش اعلام می کنه، ولی مشکل من در run نشدن برنامه هاست، یعنی صفحه output که باید در اون فرمانهایی را که نوشتم اجرا بشه، اصلاً ظاهر نمی شه !!!!
در اصل بعد از run کردن یه صفحه سیاه رنگ شبیه DOS در مدت زمانی کمتر از 0.1 ثانیه میاد و سریع ناپدید می شه!! حتی یه خروجی ساده رو هم نمی تونم ببینم !!!
این هم مشکل از کامپایلره؟؟ یا ویندوز اشکال داره ؟ شاید هم نصب کردن من اشکال داشته باشه؟ |
|
Back to top |
|
|
vahid بي تو هرگز
Joined: 26 Nov 2004 Posts: 3067 Location: Tehran
|
Posted: Thu May 18, 2006 3:19 pm Post subject: |
|
|
خوب اين مشكل از هيچي نيست . همه اولش اين مشكل رو دارن ... منم داشتم .
ميتوني براي مشاهده خروجي alt + f5 رو بزني ( تو نسخه كامپايلر تحت داس ) .
ولي اكثرا در انتهاي برنامه هاشون از دستور cin استفاده مي كنن .
در انتهاي برنامه چون برنامه با سرعت بالا اجرا ميشه و بقول شما يكدهم ميلي ثانيه طول ميكشه يه خط بنويس كه از كاربر ورودي بگيره ... خط زير رو دقيقا تو آخرين خط بنويس .
اين باعث ميشه برنامه ات اجرا بشه اما منتظر ورودي تو بشه در نتيجه ميتوني تا قبل از وارد كردن هر چيزي و زدن دكمه enter خروجي روببيني . |
|
Back to top |
|
|
afshin مهمون يكي دو روزه
Joined: 15 May 2006 Posts: 10
|
Posted: Thu May 18, 2006 7:05 pm Post subject: |
|
|
حرف شما درست.
ولی اگه من بخوانم نتایج برنامه ای رو که نوشتم ببینم باید چکار کنم ؟؟؟؟
حتی اگه کدهای یه برنامه رو که اولش نیاز به ورودی داره و بعدش خروجی می ده و دوباره نیاز به ورودی داره رو بنویسم، فقط قسمت اول رو انجام می ده و خروجی را با سرعت بسیار بالایی نشون می ده و قسمت سوم رو که باید تو اون دوباره ورودی رو نشان نمی دهد !!!!!!!!!!!!!!
(تا حالا به چنین مشکلی بر خوردین !!!)
ممنون از کمکهاتون
[/code][/quote] |
|
Back to top |
|
|
arash مدير بخش سي
Joined: 27 Nov 2004 Posts: 1232 Location: www.parsx.com
|
Posted: Thu May 18, 2006 10:15 pm Post subject: |
|
|
راحترین راهش اینه که دستور زیر رو قبل از دستور return 0 بنویسی
|
|
Back to top |
|
|
vahid بي تو هرگز
Joined: 26 Nov 2004 Posts: 3067 Location: Tehran
|
Posted: Fri May 19, 2006 10:22 am Post subject: |
|
|
كد اين برنامه اي كه نوشتي رو بفرست ... |
|
Back to top |
|
|
afshin مهمون يكي دو روزه
Joined: 15 May 2006 Posts: 10
|
Posted: Sat May 20, 2006 3:07 pm Post subject: |
|
|
سلام و تشکر.
من میخواستم کد برنامه هایی را که گفتم تو کامپایلر من اجرا نمی شه رو تو این قسمت بنویسم ولی نمیدونم چه جوری ؟؟
همینطور عادی اونها را تو قسمت reply تایپ کنم یا باید کار دیگه ای انجام بدم؟؟
راستی دستور ()getch مال ++c است یا c ؟؟ و چه کاری انجام می ده؟؟ آخه تو کتابی که من دارم از روش کار می کنم تا الان به این دستور برنخوردم !! |
|
Back to top |
|
|
arash مدير بخش سي
Joined: 27 Nov 2004 Posts: 1232 Location: www.parsx.com
|
Posted: Sat May 20, 2006 7:18 pm Post subject: |
|
|
C و ++C هیچ فرقی ندارن . در کل !!!
در واقع ++C شامل C هم می شه و به راحتی و بدون هیچ مشکلی می تونی از دستور c در ++C استفاده کنی پس از این لحاظ ناراحت نباش
این دستور هم جزو C و هم جزو ++C
اینم یه نمونه کد برای اینکه دچار مشکل نشی
| #include <iostream.h>
#include <conio.h>
main(){
int a;
cout<<"www.\
parsx.com";
cin >>a; // (1)
getch(); // (2)
return 0;
}
|
شماره (1) راهی هستش که وحید گفت و شماره (2) راهی هستش که من گفتم
موفق باشی |
|
Back to top |
|
|
vahid بي تو هرگز
Joined: 26 Nov 2004 Posts: 3067 Location: Tehran
|
Posted: Sun May 21, 2006 1:19 pm Post subject: |
|
|
كد رو كپي paste كن .
بعد هم نگفتي اون برنامه اي كه گفتم كامپايل كن جوابش چي شد .
پس حداقل اين برنامه اي كه آرش داده رو كامپايل كن . ببين چه اتفاقي مي افته اينجا بگو . |
|
Back to top |
|
|
vahid بي تو هرگز
Joined: 26 Nov 2004 Posts: 3067 Location: Tehran
|
Posted: Tue May 23, 2006 1:32 pm Post subject: |
|
|
[quote=afshin]
حتی اگه کدهای یه برنامه رو که اولش نیاز به ورودی داره و بعدش خروجی می ده و دوباره نیاز به ورودی داره رو بنویسم، فقط قسمت اول رو انجام می ده و خروجی را با سرعت بسیار بالایی نشون می ده و قسمت سوم رو که باید تو اون دوباره ورودی رو نشان نمی دهد !!!!!!!!!!!!!!
[/quote]
احتمالا توي وروديت به جاي int كاراكتر يا امثاله وارد نكردي ؟ |
|
Back to top |
|
|
afshin مهمون يكي دو روزه
Joined: 15 May 2006 Posts: 10
|
Posted: Tue May 23, 2006 6:24 pm Post subject: |
|
|
دوستان عزیز سلام.
با کمک شما دوستان فکر می کنم مشکلم حل شده باشه.
اشکال کارم همینطور که شما گفتین، سرعت بالای اجرا و عمل نکردن قسمت حلقه ها بوده،
چون یه برنامه نوشتم که دو تا حلقهء توش درست عمل می کردند و شکر خدا برنامه به خوبی عمل کرد.
واقعاً ممنون از راهنمایی هاتون |
|
Back to top |
|
|
|