سلام
میخواهم برای یادگیری و تمرین 2 تا عدد خیلی بزرگ بگیرم.به کمک آرایه روش 4 عمل اصلی انجام بدهم.
خودم میخواهم این کار رو انجام بدهم.فقط راهنمایی و طریقه کار را میخواهم با سپاس
Printable View
سلام
میخواهم برای یادگیری و تمرین 2 تا عدد خیلی بزرگ بگیرم.به کمک آرایه روش 4 عمل اصلی انجام بدهم.
خودم میخواهم این کار رو انجام بدهم.فقط راهنمایی و طریقه کار را میخواهم با سپاس
سلامنقل قول:
براي اين كار بايد عدد رو به صورت كاراكتر از كاربر بگيري و ٤٨ تا ازش كم كني و توي آرايه قرارش بدي.
ادامه اش رو نخون و خودت فكر كن چون الگوريتم به طور كامل توضيح داده شده..
.
.
.
.
.
بعد از انتها عمل جمع يا ضرب يا تفريق رو دونه دونه اعمال كني و رقم نقلي و به بعدي اضاف مي كني.
نكته:يك شمارنده تعريف كن كه تعداد رقم هاي عدد رو بهت بده كه همون اندازه ي آرايه -١ هست.
نكته:از ركورد دوم آرايه شروع كن و اولي رو صفر قرار بده چون ممكنه رقم نقلي داشته باشي.
برا تقسيم ميتوني از ابتداي آرايه اين كا رو انجام بدي تنها كمي پيچيده تر.
اگه باز مشكلي بود بگو تا بيشتر توضيح بدم.
Mehrdad Sh.
من مبخوام با زبان c یه آنتی ویروس بسازم.که وقتی فلش رو میزنم به کامپیوتر فلش رو بخونه و ویروساشو بشناسه.کسی میتونه تو این زمینه کمک کنه؟یه کارایی کردم خودم.اگه کسی میتونه بگه تا از طریق پ.خ سوالامو بپرسم.
سلام.
تو برنامه visual studio 2010 پنجره ی memory کجا هست؟
برای دسترسی به آدرس متغیر ها و بایت ها.
قبلا تو view بود ولی الان نیست!
ممنون بابت جواب همه:n02:نقل قول:
دوست من آنتی ویروس نویسی به این سادگی نیست. شما اول باید کاملا مسلط به سیستم عامل، رجیستری و برنامه نویسی سیستمی باشی. که خودش دنیایی هستش. باید بتونی به زبون c خالص برنامه بنویسی بعدش باید مدیریت حافظه مستقل از سیستم عامل رو یاد بگیری که اینم خودش دنیایی هستش. بعدش تازه شاید بتونی مطالعه کنی که آنتی ویروس ها چطور کار می کنن.نقل قول:
من برای چاپ تمام زیر مجموعه های یک مجموعه این کدو دارمولی این قسمتشو خوب متوجه نمیشم که دقیقا داره چیکار میکنهنقل قول:
#include <iostream>
#include <stdlib.h>
#include <vector>
using namespace std;
void subset(char*);
int power(int , int);
char * D2B(int,char*);
int main()
{
cout<<"count :";
int count=3;
//cin>>count;
char set[3]={'a','b','c'};
for(int i=0 ; i < count ; i++);
subset(set);
system("pause");
return 0;
}
char *D2B(int n , char *b)
{
itoa(n,b,2);
return b;
}
void subset(char *r)
{
char buffer[100];
int k=1;
long limit=power(2,3);
for (int i=0 ; i < limit ; ++i)
{
cout<<endl<<k++<<" : ";
D2B(i,buffer);
char *p;
for(p=buffer ; *p ;++p);
{
--p;
cout<<"{";
for(int j = 0 ; p>=buffer; ++j,--p)
{
if(*p=='1')
cout<<r[j]<<"";
}
cout<<"}";
}
}
cout<<endl;
}
int power(int x, int n)
{
if(n==0)
return 1;
return x*power(x,n-1);
}
دوستان اگر می تونید یه توضیحی برام بدید ممنون میشم:n28:نقل قول:
for(p=buffer ; *p ;++p);
{
--p;
cout<<"{";
for(int j = 0 ; p>=buffer; ++j,--p)
{
if(*p=='1')
cout<<r[j]<<"";
}
cout<<"}";
}
سلام بجه ها من میخواستم یه متغیری(CString) را تو یه فایل text ذخیره کنم ولی به جای مقدار ادرس متغیر ذخبره میشه کسی میتونه کمک کنه؟
مرسی
اینجوری که نمی شه دوست من. کدی که می زنی رو اینجا بذار تا بررسی کنیم چی نوشتی.نقل قول:
دوست عزيز دقت کنيد
اولا اينجا دوتا رشته وجود دارد يکي رشته abc که در متغير r ذخيره شده و ديگري رشته اي که بصورت دنباله اي از صفر و يک است که در متغير p ذخيره شده
رشته کاراکترها در ++c به صورت کاراکترهاي مورد نظر به اضافه يک صفر در انتهاي رشته ذخيره مي شود مثلا اگر رشته ما salam باشد ذخيره آن بصورت salam0 است
for(p=buffer ; *p ;++p);
در لوپ بالا اشاره گر به انتهاي رشته کاراکتر که هميشه null يا صفر است انتقال پيدا ميکند بنابراين p* غير از صفر است تا اينکه برسيم به انتهاي رشته که صفر است در اين حالت از لوپ خارج مي شويم فايده اين لوپ ذخيره شدن آدرس انتهاي رشته در p است دقت کنيد به علت وجود ; در انتهاي دستور for اين لوپ تمام مي شود
{
--p;
cout<<"{";
for(int j = 0 ; p>=buffer; ++j,--p)
{
if(*p=='1')
cout<<r[j]<<"";
}
در کد بالا يک بلاک شروع مي شود دقت کنيد اين بلاک مربوط به دستور for قبلي نيست
--p;
ابتدا اشاره گر از انتهاي رشته که همواره صفر است به يکي ماقبل آن مي رود
cout<<"{";
چاپ يک آکولاد
for(int j = 0 ; p>=buffer; ++j,--p)
{
if(*p=='1')
cout<<r[j]<<"";
}
در اين لوپ از انتهاي رشته p به ابتداي آن مي رويم و هر جا رشته برابر با 1 بود مقدار رشته r درهمان مکاني که p برابر 1 بود چاپ مي شود
با سلام
دوستان من میخوام یادگیری زبانC++ رو شروع کنم کتاب جعفرنزادقمی رو خریدم و دارم مطالعه میکنم یک 20-30 صفحه ای خوندم حالا میخوام یک برنامه
خیلی ساده رو بنویسم مشکل اینه که نوشته با کامپایلر بورلند C++ تحت ویندوز ( بورلند C++5) یا ویزوال C++ هرنسخهای من هرچی تو اینترنت گشتم
لینک دانلود برنامه v5 پیدا نکردم Borland.C++.v5.02_-----------.com نزدیکترین چیزی که بهش پیداکردم این بود اونم یک پوشه درست میکنه با کلی
فایل توش و یک فایل exe که هرچی روش کلید کردم هیچ اتفاقی نیفتاد و هیچی نصب نکرد البته کلی فایل دیگه هم گرفتم
Borland.C++.Builder.v6.0.Enterprise.Suite_-----------.com
Borland_Turbo_CPlusPlus_v5.02
Intel.C.++.Compiler.v11.1.067.x64_-----------.com
Microsoft.C-C++.v7.0_-----------.com
Turbo.C.v2.0_-----------.com
Turbo.C++.v4.5.Win_-----------.com
Turbo.C++.v3.0.DOS_-----------.com
حالا کدوم رو باید نصب کنم و چجوری اگر فایل دیگهای رو باید نصب کنم لینک دانلودشو لطف کنید
ممنونم علی
یک برنامه جالب که من معمولا اون رو پیشنهاد می کنم Bloodshed Dev cpp هست کی اینم لینکشه
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
کار باهاش راحته
برنامه رو نصب کنین
بعنوان اولین تمرین notepad رو باز کنید برنامه رو بنویسید و مثلا با عنوان myprogram.c ذخیره کنید حالا اگر روی فایل برنامه ای که نوشتین دوبار کلیک کنید با برنامه Devcpp باز میشه روی دکمه compile کلیک کنید یا از من گزینه compile رو بزنید اگر برنامه خطا داشته باشه اون زیر خطا ها رو نشون می ده که با کلیک روی هر خطا می تونید به سطری که خطا رو ایجاد کرده بروید اگر خطایی نداشت یک برنامه exe توی همون فولدری که myprogram.c نصب است ایجاد میشه یک نکته دیگه اینکه برنامه هایی که شما در ابتدا می نویسید در خط فرمان اجرا میشه. برنامه cmd را باز کنید اگه نمی دونید از کجا بازش کنید در استارت منو روی run کلیک کنید و تایپ کنید cmd یک صفحه سیاه رنگ ظاهر میشه اون فایلexe که ایجاد کردید رو با موس بکشید توی پنجره سیاه در نتیجه برنامه اجرا میشه
با تشکر از دوست خوبمrahnema1
من نرمافزار کامپایلر بورلند C++ تحت ویندوز ( بورلند C++5) رو که پاییه و بیس شروع برنامه نویسی هست میخوام
خودم نرمافطزار مشابه نصب کردم مثل ویژوال C++ 2011 ولی تو فرامین تفاوت داره و خیلی از دستوراتش فرق دارن
ممنونم علی .
دوستان من تو c میخوام اسم و فامیل رو یه جا با scanf وارد کنم ولی فقط در خروجی اسم رو نمایش میده
چی کار کنم که جفتش رو نمایش بده(اصلا باید از scanf استفاده کرد؟
سلامنقل قول:
حرف شما رو قبول ندارم کامپایلر بورلند یا هر شرکت نرم افزاری دیگری به هیچ وجه پایه وبیس شروع برنامه نویسی نیست
تازه علاوه بر این کامپایلر بورلند 5 تحت خط فرمان اجرا میشه و دردسرش بیشتره ولی devcpp که معرفی کردم محیط گرافیکی داره تحت ویندوز
نرم افزاری که معرفی کردم با کامپایلر gcc مهم ترین کامپایلر رایگان کار می کنه که در سیستم عاملهای مختلف از جمله ویندوز و لینوکس و اپل قابل نصب است
کار باهاش هم خیلی راحته حجمش کمه و protable هم هست مثلا می تونید اون رو توی فلش نصب کنید و فلش رو به هر کامپیوتری بزنید از کامپایلر استفاده کنید . زمانی که عین اله جعفرنژاد قمی چندین سال قبل کتابش رو می نوشت devcpp و CodeBlocksو یا نرم افزار های دیگه وجود نداشت وگرنه اونا رو توصیه می کرد نه بورلند 5
آیا اون نکته های قبلی که گفتم عمل کردید؟ به مشکل بر خوردید؟
دوست عزیز اولین برنامه ات را بنویس توش کامپایل کن اگه به مشکل برخوردی به ما بگو
سلامنقل قول:
حرف شما رو قبول ندارم کامپایلر بورلند یا هر شرکت نرم افزاری دیگری به هیچ وجه پایه وبیس شروع برنامه نویسی نیست
تازه علاوه بر این کامپایلر بورلند 5 تحت خط فرمان اجرا میشه و دردسرش بیشتره ولی devcpp که معرفی کردم محیط گرافیکی داره تحت ویندوز
نرم افزاری که معرفی کردم با کامپایلر gcc مهم ترین کامپایلر رایگان کار می کنه که در سیستم عاملهای مختلف از جمله ویندوز و لینوکس و اپل قابل نصب است
کار باهاش هم خیلی راحته حجمش کمه و protable هم هست مثلا می تونید اون رو توی فلش نصب کنید و فلش رو به هر کامپیوتری بزنید از کامپایلر استفاده کنید . زمانی که عین اله جعفرنژاد قمی چندین سال قبل کتابش رو می نوشت devcpp و CodeBlocksو یا نرم افزار های دیگه وجود نداشت وگرنه اونا رو توصیه می کرد نه بورلند 5
آیا اون نکته های قبلی که گفتم عمل کردید؟ به مشکل بر خوردید؟
دوست عزیز اولین برنامه ات را بنویس توش کامپایل کن اگه به مشکل برخوردی به ما بگو
ویژوال c++ توی مد win32 console هیچ کمبودی نسبت به ورژن های کامپایلر های دیگه نداره که هیچ اضافه هم داره.نقل قول:
در ضمن دوست من اصولا تعداد دستورات استاندارد C++ اونقدر زیاد نیست که شما فکر کنید کامپالیری با کامپایلر دیگه فرق می کنه
سلام بچه ها
یه سوال من الان با turbo c یه برنامه نوشتم save نکردم حالا نمیتونم برم تو محیط کد رو حالت اجرا مونده چیکار کنم؟؟؟؟
هیچ کیلدی کار نمیکنه قفلم نکردن Please help meeeeeeeeeeeeeee:n03::n03:
فکر نکنم تا قبل از اینکه یک فایل برنامه ذخیره بشه اجرا بشه حتما یه جایی ذخیره شده که خودت نمی دونی برنامه رو کاملا ببند فایلت رو بگرد پیداش میکنینقل قول:
عزيز براي ذخيره كردن اين رشته هايي كه فاصله دارن ٢ راه داري،نقل قول:
راه اول استفاده از تابع gets() هست كه در كروشه اسم آرايه ي شما نمايش داده ميشه،
براي استفاده از اين تابع بايد فايل سرآمد studio.h رو include كني.
راه دوم گرفتن تك به تك كاراكترها و ذخيره كردن اونهاست كه كمي مشكله و در اين مورد شما استفاده نميشه و بهينه نيست،البته قبلا اين روش رو در همين تاپيك مفصل توضيح دادم.
Mehrdad Sh.
دوستان من Visual studio 2012 ریختم ولی دستور COUT کار نمیکنه ! یجا خودم باید iostream.h یا iostream رو include بکنم که اون رو هم نشناخت سیستم یعنی هدرش اصلا نبود تو فولدر visual !
شما به صورت زیر بنویسید به احتمال زیاد حل میشهنقل قول:
کد:#include<iostream>
using namespace std;
int main(){
محل نوشتن کد
return0;
}
iostrream بدون H. بذارنقل قول:
2 راه داری:
1.بعد از Include<iostream عبارت using namespace std; بذار
2.اگه عبارت قبلیو ننوشتی باید قبل از هر Cout و Cin یه std:: بذار
یکی کمک کنه!
وقتی توی ویژوال استدیو برنا مه رو مینویسم و میخوام اجراش کنم این ارور رو میده:
Unable to start program C:\users\....\(exampel).exe
The system cannot the file specified
باید چی کار کنم؟؟؟؟؟؟
ویندوزم سون 64 بیتی!
همه جای کد درسته توی devc++ اجرا میشه
سلام
بررسی کن
جایی از کدت خطا نداشته باشه
همه کد درسته!
توی dev c++ اجرا میشه
برام کدتو پ خ کن
گفتم که!
مشکل از کد نیس!
هرچی مینویسم حتی از تو کتاب جعفر نژاد اون ارور رو میده
سلام خسته نباشید از اونجا که من علاقه ی زیادی به کامپیوتر دارم ولی نیازمند اون برنامه نویسی هستش نمیتونم بفهمم که بتونم یاد بگیرم اگه می تونید یک کتاب خوب در زمینه برنامه نویسی به زبان c رو به من معرفی کنید طوری که قابل فهم بشه
ممنون:n01:
درودنقل قول:
قبل از برنامه نویسی سعی کنید.الگوریتم و فلوچارت را قوی کنید. کتاب جعفرنژاد قمی الگوریتم و فلوچارت قرمز رنگ هست
بعد کتاب های دیتل دیتل خوب هستند
سلام
میتونی یه شات بزاری
دوستان ممنون میشم بگین چرا Eclipse نمیتونه این رو کامپایل کنه :
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
با تشکر فراوان
به جای
این را بذارید:کد:#include <stdio.h>
کد:#include <iostream>
using namespace std;
آقا خیلی ممنون ولی این دفعه یه اررور دیگه میدهنقل قول:
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
ممنون میشم راهنمایی بفرمایید
باتشکر فراوان
دستور cin از stream ورودی و خروجی (جریان داده) یک سری کاراکتر رو دریافت می کنه و توی متغیر رشته ای می ریزه (آرایه ای از متغیرهای کاراکتری) علامت << هم جهت جریان رو مشخص می کنه. فلذا باید سمت راست این علامت یه متغیر رشته ای یا آرایه ای از کاراکترها باشه تا جریان رو (تا زمان زدن کلید enter) توی اون بریزه.نقل قول:
Number1 و Number2 را داخل گیومه قرار ندهید چون عدد هستند و رشته نیستند
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ] لطفا کمک کنید ادرس تاپیک:
دوستان عزیز یه توضیحی بی زحمت میدین که چرا وقتی کد های زیر رو کامپایل میکنم نتیجه رو این میده "the other is true""
کد:#include <stdio.h>
و یا مثلا چرا وقتی جای a و b رو عوض میکنم (قرمز رنگ) بهم این نتیجه رو میده "this is true"؟کد:
int main( int argc, char ** argv ) {
int a = 0;
int b = 1;
int c = 2;
if(a) {
puts("this is true");
}else if(b) {
puts("the other is true");
} else {
puts("nothing is true");
}
return 0;
}
خیلی ممنون:n16:
توی پرانتز جلو if اگه صفر باشه عبارت جلو اون اجرا نمی شه و else اجرا میشه و اگه جلو if غیر از صفر بود عبارت بعد از if اجرا میشه و else اجرا نمیشه
در زبانC عدد صفر به معنی غلط و غیر از صفر به معنی درست هستش. برای همین این نتیجه حاصل می شهنقل قول: