سوالات و مشکلات و درخواست های خود را فقط اینجا مطرح کنید

خانم مهندس92

عضو جدید
۱.با چه زبان برنامه نویسی قراره اینا نوشته بشه؟ اگه محیط خاصی هم قراره استفاده بشه بفرمایید.
۲.خب، خودت تا کجاهاشو نوشتی؟ اگه کدش رو هم ننوشتی عیب نداره، فلوچارتی، چیزی کشیدی؟ ایده ای داری که باید از کجا شروع بشه برنامه؟ کارهایی که کردی رو بگو (و ترجیحا ارائه کن). برنامه هات ساده اس، کمکت می‌کنیم سریع بنویسیش.


وااااااااای مرسی لطف میکنید
باید با نرم افزار visual studio نوشته بشه ،نه روی اینا هنوز فکر نکردم 20 تا برنامست این فقط سه تا از اون 20 تاست دارم رو بقیش کار میکتم :cry:
برنامه ها مال ++c میشه :)
cpp.
 

Drago

پیشکسوت فعال فناوری اطلاعات
کاربر ممتاز
باید با نرم افزار visual studio نوشته بشه ،نه روی اینا هنوز فکر نکردم 20 تا برنامست این فقط سه تا از اون 20 تاست دارم رو بقیش کار میکتم :cry:
برنامه ها مال ++c میشه :)
cpp.
پس در واقع باید به زبان ++C و در محیط Microsoft Visual Studio نوشته بشه.
خب بریم سراغ سوالها :
۱.نمودار هیستوگرام رو دقیق میشه بگی چیه؟ یعنی میخوای برنامه ات بگه که مثلا از تعداد nتا عدد چندتاش توی بازه ۱تا ۱۰ و چندتا بین ۱۱ تا ۲۰ و ... بوده؟ اون n کی مشخص میشه؟ توی زمان اجرا؟ یعنی دست کاربره؟
من یه راهنمایی بهت بکنم، اینو میتونی با آرایه پیاده کنی. تعداد خونه های آرایه به تعداد بازه ها هست (مثلا برای ۱ تا ۱۰ یه خونه، برای ۱۱ تا ۲۰ یه خونه و برای ۲۱ تا ۳۰ هم یه خونه). با یه حلقه for که به تعداد n بار میچرخه از کاربر n تا عدد دریافت میکنی. هر عددی رو که داری دریافت می‌کنی چک میکنی ببینی توی کدوم بازه میفته و عدد توی اون خونه‌ی آرایه رو یکی بهش اضافه می‌کنی.بعد که همه اعداد رو گرفتی یه حلقه تو در تو درست می‌کنی : حلقه خارجی خونه های آرایه رو به ترتیب می‌خونه، حلقه‌ی داخلی نمودار رو چاپ می‌کنه (مثلا به تعداد لازم * چاپ می‌کنه).

۲. فرمولی که باید باهاش عدد پی رو حساب کنید فرمول لایبنیتز هست :
کد:
 pi = Σi=0∞ (-1)i 4 / (2i+1)
(زیگما یا مجموع ۱- به توان i ضربدر چهار تقسیم بر 2i به علاوه یک از i برابر صفر تا بینهایت)
حالا شما باید یه حلقه بنویسی که از صفر شروع کنه و یه دونه یه دونه بره جلو و هربار این فرمول رو حساب کنه (مثلا توی متغیر formula بریزه) و به مجموع به دست آمده های قبلی اضافه کنه(sum = sum+formula). فقط کنترل کن که اگه اختلاف اون عدد نهایی (sum) از 3.141592 کمتر از 0.0001 بود حلقه رو خاتمه بده و sum رو چاپ کنه.

۳. مرتب سازی رو بهتون یاد دادن دیگه؟ میتونید از توابع مرتب سازی کتابخانه ای استفاده کنید؟ بعد این ۲۰ تا ورودی رو توی چی باید بریزیم؟ آرایه؟
پس اول یه حلقه میندازیم که ۲۰ تا ورودی بگیریم، موقع ورودی گرفتن هم چک می‌کنیم که حتما عدد بین ۱۰ تا ۱۰۰ باشه.
بعد به نظرم ساده ترین راه اینه که آرایه رو مرتب کنیم. در این حالت فقط کافیه یه بار آرایه رو پیمایش کنیم. اگه عددی که در ایندکس فعلی قرار داره با عددی که در ایندکس بعدی هست برابره چاپش نکنیم، در غیر اینصورت چاپ بشه.

=======
اینها رو تا اونجا که بلدی پیاده کن تا کدش رو هم با هم اصلاح کنیم در غیر اینصورت انتظار کد آماده نداشته باش!
 

خانم مهندس92

عضو جدید
پس در واقع باید به زبان ++C و در محیط Microsoft Visual Studio نوشته بشه.
خب بریم سراغ سوالها :
۱.نمودار هیستوگرام رو دقیق میشه بگی چیه؟ یعنی میخوای برنامه ات بگه که مثلا از تعداد nتا عدد چندتاش توی بازه ۱تا ۱۰ و چندتا بین ۱۱ تا ۲۰ و ... بوده؟ اون n کی مشخص میشه؟ توی زمان اجرا؟ یعنی دست کاربره؟
من یه راهنمایی بهت بکنم، اینو میتونی با آرایه پیاده کنی. تعداد خونه های آرایه به تعداد بازه ها هست (مثلا برای ۱ تا ۱۰ یه خونه، برای ۱۱ تا ۲۰ یه خونه و برای ۲۱ تا ۳۰ هم یه خونه). با یه حلقه for که به تعداد n بار میچرخه از کاربر n تا عدد دریافت میکنی. هر عددی رو که داری دریافت می‌کنی چک میکنی ببینی توی کدوم بازه میفته و عدد توی اون خونه‌ی آرایه رو یکی بهش اضافه می‌کنی.بعد که همه اعداد رو گرفتی یه حلقه تو در تو درست می‌کنی : حلقه خارجی خونه های آرایه رو به ترتیب می‌خونه، حلقه‌ی داخلی نمودار رو چاپ می‌کنه (مثلا به تعداد لازم * چاپ می‌کنه).

۲. فرمولی که باید باهاش عدد پی رو حساب کنید فرمول لایبنیتز هست :
کد:
 pi = Σi=0∞ (-1)i 4 / (2i+1)
(زیگما یا مجموع ۱- به توان i ضربدر چهار تقسیم بر 2i به علاوه یک از i برابر صفر تا بینهایت)
حالا شما باید یه حلقه بنویسی که از صفر شروع کنه و یه دونه یه دونه بره جلو و هربار این فرمول رو حساب کنه (مثلا توی متغیر formula بریزه) و به مجموع به دست آمده های قبلی اضافه کنه(sum = sum+formula). فقط کنترل کن که اگه اختلاف اون عدد نهایی (sum) از 3.141592 کمتر از 0.0001 بود حلقه رو خاتمه بده و sum رو چاپ کنه.

۳. مرتب سازی رو بهتون یاد دادن دیگه؟ میتونید از توابع مرتب سازی کتابخانه ای استفاده کنید؟ بعد این ۲۰ تا ورودی رو توی چی باید بریزیم؟ آرایه؟
پس اول یه حلقه میندازیم که ۲۰ تا ورودی بگیریم، موقع ورودی گرفتن هم چک می‌کنیم که حتما عدد بین ۱۰ تا ۱۰۰ باشه.
بعد به نظرم ساده ترین راه اینه که آرایه رو مرتب کنیم. در این حالت فقط کافیه یه بار آرایه رو پیمایش کنیم. اگه عددی که در ایندکس فعلی قرار داره با عددی که در ایندکس بعدی هست برابره چاپش نکنیم، در غیر اینصورت چاپ بشه.

=======
اینها رو تا اونجا که بلدی پیاده کن تا کدش رو هم با هم اصلاح کنیم در غیر اینصورت انتظار کد آماده نداشته باش![/QUOTE]

نمودار که پرسیدین با مثال میگم :
مثلا عدد داده شده 4 و نمودارش : ****
عد 7ونمودار: *******
متوجه شدین ؟
کدسوال اول رو مینوسین میپرسم درسته یا نه
2 رو تقریبا فهمیدم
برای سوال سوم هم باید بگم مرتب سازی رو برامون نگفتن ،حالا چه کنم ؟
پس من 1و2 رو مینویسم لطف کنین درست بودنش رو بگین و برای سوال سوم هم یه راهنمایی دیگه اگه میشه بکنین
ممنون از کمکتون
 

setare11

عضو جدید
علما:چگونگی اشتراک گذاری یک پرینتر بین چند دومین؟

علما:چگونگی اشتراک گذاری یک پرینتر بین چند دومین؟

سلام لطفا علما و دوستان به این سوال بنده جواب بدن:البته من خودم یک حدث میزنم اما مطمین نیستم اینکه پرینتر رو از لوکال به سرور تبدیل کنیم به نظرتون این درسته یا نه؟؟ممنون میشم بهم جواب بدید:gol:
 

alex_17

عضو جدید
لام. یکی از دوستان لطفا منو در نوشتن ادامه این برنامه کمک کنه. فقط یکم زود تر چون عجله ای هست:دی
#include <cstdlib>
#include <iostream>
#include <fstream>
using namespace std;
class Ware
{
public:
int id;
char name[30];
int count;
Ware *next;
};
class ListWare
{
public:
Ware *first;


void init();
void add();//from keyboard
void add2(Ware *w);
bool deletee(int myId);
void print();
void save();
void load();
bool edit (int myId, int addCount, int delCount);
Ware *findById(int myId);
Ware *findByName(char *str);
};




void ListWare::init()
{
first=NULL;
}
bool ListWare::edit (int myId, int addCount, int delCount)
{
Ware *temp;
temp=first;

bool result=0;
while (temp!=NULL)
{
if (temp->id==myId)
{
result=1;
temp->count+=addCount;
temp->count-=addCount;
break;
}
temp=temp->next;
}
return result;
}
void ListWare::add()
{
Ware *w=new Ware;
cout<<"id: ";
cin>>(*w).id;
cout<<"name: ";
cin>>(*w).name;
cout<<"count: ";
cin>>(*w).count;
(*w).next=NULL;

if (first==NULL)
first=w;
else
{
(*w).next=first;
first=w;
}
}
void ListWare::add2(Ware *w)
{
(*w).next=NULL;

if (first==NULL)
first=w;
else
{
(*w).next=first;
first=w;
}
}
bool ListWare::deletee(int myId)
{
}
void ListWare::print()
{
Ware *temp=first;
while(temp!=NULL)
{
cout<<(*temp).id<<'\t'<<'\t'<<'\t'<<'\t'<<(*temp).name<<'\t';
cout<<(*temp).count<<endl;

temp=(*temp).next;
}
}
void ListWare::save()
{
fstream f;
f.open("ware",ios::out);


Ware *temp=first;
while (temp != NULL)
{
f.write((char *)temp,sizeof(Ware));

temp=(*temp).next;
}


f.close();
}
void ListWare::load()
{
first=NULL;
fstream a;
a.open("ware",ios::in);
while(!a.eof())
{
Ware *c=new Ware;
a.read( (char *)c ,sizeof(Ware));
if (a.eof())
break;
add2(c);
}
a.close();
}


class Send
{
public:
void init();
int id;
char date[9];
ListWare *list;
int listCount;

//Receipt *next;
};
void Send::init()
{
list=new ListWare;
(*list).init();
// next=NULL;
listCount=0;
}


class Receipt
{
public:
void init();
int id;
char date[9];
ListWare *list;
int listCount;

Receipt *next;
};
void Receipt::init()
{
list=new ListWare;
(*list).init();
next=NULL;
listCount=0;
}
class ListReceipt
{
public:
Receipt *first;
void add();
bool deletee(int myId);
void print();
void save();
void load();
void init();
};
void ListReceipt::init()
{
first=NULL;
}
void ListReceipt::add()
{
Receipt *r=new Receipt;
(*r).init();
cout<<"Receipt id: ";
cin>>(*r).id;
cout<<"Receipt date: ";
cin>>(*r).date;

int k=-1;
while(k!=0)
{
cout<<"1: Add ware"<<endl;
cout<<"2: Delete ware"<<endl;
cout<<"0: Finish"<<endl;
cin>>k;
if (k==1)
{
//(*r).add();
}
}

}
void showFirstMessage()
{
cout<<"1: Add Ware"<<endl;
cout<<"2: Delete Ware"<<endl;
cout<<"3: Save Ware"<<endl;
cout<<"4: Load Ware"<<endl;
cout<<"5: List Ware"<<endl;
cout<<"6: Add Receipt"<<endl;
cout<<"7: List Recipt"<<endl;
cout<<"8: Add Send"<<endl;
cout<<"9: List Send"<<endl;
cout<<"10: edit"<<endl;
cout<<"0: Exit"<<endl;
}
main()
{
ListWare *list= new ListWare;
(*list).init();
int k=-1;

while (k!=0)
{
showFirstMessage();
cin>>k;
if (k==1)
{
(*list).add();
}
if (k==2)
{
cout<<"Please give ware id: ";
int id;
cin>>id;
if ((*list).deletee(id))
cout<<"deleted done";
else
cout<<"Ware is not found";
از اونجایی که ListReceipt نوشته شده، میخوایم یه کالا رو اد کنیم که این کالا در این قسمت تو بخش زونکن حواله ها ذخیره میشه اما من اون قسمت که نوشته:


cout<<"1: Add ware"<<endl;
if (k==1)
{

}
رو نمی دونم چیکار کنم. ینی میدونم نمی تونم بنویسم. از اینجا باید با توجه با اون ip که اول کار گرفتیم از کابربر بگرده تو لیست ویر، این ip رو پیدا کنه و تو لیست ویر(لیست اصلی کالا ها) به تعداد کالا هر چی اضافه شده رو اعمال کنه. یکی راهنمایی کنه باید چجور این کارو بکنم.
 

alex_17

عضو جدید
کد:
#include <cstdlib>#include <iostream>
#include <fstream>
using namespace std;
class Ware
{
   public:
      int id;
      char name[30];
      int count;
      Ware *next;
};
class ListWare
{
   public:
      Ware *first;


      void init();
      void add();//from keyboard
      void add2(Ware *w);
      bool deletee(int myId);
      void print();
      void save();
      void load();
      bool edit (int myId, int addCount, int delCount);
      Ware *findById(int myId);
      Ware *findByName(char *str);
};




void ListWare::init()
{
     first=NULL;
}
bool ListWare::edit (int myId, int addCount, int delCount)
{
     Ware *temp;
     temp=first;
     
     bool result=0;
     while (temp!=NULL)
     {
           if (temp->id==myId)
           {
              result=1;
              temp->count+=addCount;
              temp->count-=addCount;
              break;
           }
           temp=temp->next;
     }
     return result;
}
void ListWare::add()
{
     Ware *w=new Ware;
     cout<<"id: ";
     cin>>(*w).id;
     cout<<"name: ";
     cin>>(*w).name;
     cout<<"count: ";
     cin>>(*w).count;
     (*w).next=NULL;
     
     if (first==NULL)
        first=w;
     else
     {
         (*w).next=first;
         first=w;
     }
}
void ListWare::add2(Ware *w)
{
     (*w).next=NULL;
     
     if (first==NULL)
        first=w;
     else
     {
         (*w).next=first;
         first=w;
     }
}
bool ListWare::deletee(int myId)
{
}
void ListWare::print()
{
     Ware *temp=first;
     while(temp!=NULL)
     {
       cout<<(*temp).id<<'\t'<<'\t'<<'\t'<<'\t'<<(*temp).name<<'\t';
       cout<<(*temp).count<<endl;
       
       temp=(*temp).next;
     }
}
void ListWare::save()
{
    fstream f;
    f.open("ware",ios::out);


    Ware *temp=first;
    while (temp != NULL)
    {
           f.write((char *)temp,sizeof(Ware));
           
           temp=(*temp).next;
    }


    f.close();
}
void ListWare::load()
{
    first=NULL;
    fstream a;
    a.open("ware",ios::in);
    while(!a.eof())
    {
      Ware *c=new Ware;
      a.read( (char *)c  ,sizeof(Ware));
      if (a.eof())
         break;
      add2(c);
    }
    a.close();
}


class Send
{
   public:
      void init();
      int id;
      char date[9];
      ListWare *list;
      int listCount;
      
      //Receipt *next;
};
void Send::init()
{
     list=new ListWare;
     (*list).init();
   //  next=NULL;
     listCount=0;
}


class Receipt
{
   public:
      void init();
      int id;
      char date[9];
      ListWare *list;
      int listCount;
      
      Receipt *next;
};
void Receipt::init()
{
     list=new ListWare;
     (*list).init();
     next=NULL;
     listCount=0;
}
class ListReceipt
{
      public:
        Receipt *first;
        void add();
        bool deletee(int myId);
        void print();
        void save();
        void load();
        void init();
};
void ListReceipt::init()
{
     first=NULL;
}
void ListReceipt::add()
{
     Receipt *r=new Receipt;
     (*r).init();
     cout<<"Receipt id: ";
     cin>>(*r).id;
     cout<<"Receipt date: ";
     cin>>(*r).date;
     
     int k=-1;
     while(k!=0)
     {
        cout<<"1: Add ware"<<endl;
        cout<<"2: Delete ware"<<endl;
        cout<<"0: Finish"<<endl;
        cin>>k;
        if (k==1)
        {
           //(*r).add();
        }
     }
     
}
void showFirstMessage()
{
      cout<<"1: Add Ware"<<endl;
      cout<<"2: Delete Ware"<<endl;
      cout<<"3: Save Ware"<<endl;
      cout<<"4: Load Ware"<<endl;
      cout<<"5: List Ware"<<endl;
      cout<<"6: Add Receipt"<<endl;
      cout<<"7: List Recipt"<<endl;
      cout<<"8: Add Send"<<endl;
      cout<<"9: List Send"<<endl;
      cout<<"10: edit"<<endl;
      cout<<"0: Exit"<<endl;
}
main()
{
      ListWare *list= new ListWare;
      (*list).init();
      int k=-1;
      
      while (k!=0)
      {
          showFirstMessage();
          cin>>k;
          if (k==1)
          {
             (*list).add();
          }
          if (k==2)
          {
              cout<<"Please give ware id: ";
              int id;
              cin>>id;
              if ((*list).deletee(id))
                 cout<<"deleted done";
              else
                  cout<<"Ware is not found";
          }
          if (k==5)
          {
                   (*list).print();
          }
      
      }
    
      
      system("PAUSE");
}
 

hnbaran

عضو جدید
سوالات پایان ترم درس امنیت داده ها

سوالات پایان ترم درس امنیت داده ها

سلام دوستان
کسی سوالای درس امنیت داده(نوشته مندس ملکیان) رو داره؟
 

خانم مهندس92

عضو جدید
سلام
میشه ایرادای این برنامه رو اگه میتونید بگید؟
20 عددصحیح بین 10تا100که از بین آنها اعدادی را چاپ کند که تکراری نباشد:
کد:
 using namespace std;
#include<iostream>
#include<conio.h>
int main()
{
int A[20];
for(int i=0;i<=20;i++)
    cin>>A[i];
for(int i=0;i<=20;i++)
{
    for(int j=i+1;j<20,j++)
        if(A[i]=A[j]);
            A[j]=' ';
}
for( int i=0;i<=20;i++)
    if(A[i]!=' ');
cout<<("A[i]<<\t");
getch();
return 0;
}
 

redhood

کاربر فعال
سلام
میشه ایرادای این برنامه رو اگه میتونید بگید؟
20 عددصحیح بین 10تا100که از بین آنها اعدادی را چاپ کند که تکراری نباشد:
کد:
 using namespace std;
#include<iostream>
#include<conio.h>
int main()
{
int A[20];
for(int i=0;i<=20;i++)
    cin>>A[i];
for(int i=0;i<=20;i++)
{
    for(int j=i+1;j<20,j++)
        if(A[i]=A[j]);
            A[j]=' ';
}
for( int i=0;i<=20;i++)
    if(A[i]!=' ');
cout<<("A[i]<<\t");
getch();
return 0;
}

خانم مهندس توی سطر هایی که if هست نباید " ; " استفاده کنید
اگه با برداشتن اونا درست نشد ساختار کدتون رو میتونیم یکمی بهینه تر و البته درست کنیم ;) اول ایرادهای Syntax رو درست کنید :)
 

Drago

پیشکسوت فعال فناوری اطلاعات
کاربر ممتاز
سلام
میشه ایرادای این برنامه رو اگه میتونید بگید؟
20 عددصحیح بین 10تا100که از بین آنها اعدادی را چاپ کند که تکراری نباشد:
کد:
using namespace std;
#include<iostream>
#include<conio.h>
int main()
{
int A[20];
for(int i=0;i<=20;i++)
    cin>>A[i];
for(int i=0;i<=20;i++)
{
    for(int j=i+1;j<20,j++)
        if(A[i]=A[j]);
            A[j]=' ';
}
for( int i=0;i<=20;i++)
    if(A[i]!=' ');
cout<<("A[i]<<\t");
getch();
return 0;
}
۱. بین ۱ تا ۱۰۰ بودن رو چک نکردی. حتی اگه عدد وارد شده بین ۱۰ تا ۱۰۰ هم نباشه باز قبولش می‌کنی.
۲. آرایه از ۰ (صفر) شروع می‌شه، وقتی که مینویسی کوچکتر یا مساوی باعث میشه که خود عدد هم حساب بشه و حلقه ۲۱ بار اجرا بشه.
۳. عملگر مقایسه توی زبان‌های شبیه به C (مثل ++C و Java و #C) علامت == هست نه = . در واقع علامت = عملگر انتصابه (مثلا مقدار دهی به متغیرها).
۴. یه کم خروجی باعث میشه کاربر بهتر بفهمه داره چه اتفاقی می‌افته.
۵. از همه مهم تر : تو کدت رو کامپایل و اجرا نکردی؟ مثلا توی خطی که j رو معرفی می‌کنی توی مشخص کردن گام‌ به جای سمیکالن، کاما گذاشتی. برنامه هم کلا غلط کار میکرد، ازش خروجی نگرفته بودی؟
۶.نمیتونی کاراکتر رو توی یه متغیر صحیح بریزی...
۷. بعد از if هات سمیکالن نذار! مخصوصا که از براکت هم استفاده نمی‌کنی و بهت خطای کامپایل نمیده. وقتی شرطت رو می‌نویسی و قبل از نوشتن کدی که باید در حالت برقرار بودن شرط اجرا بشه سمیکالن می‌ذاری، شرطت هیچ کاری نمیکنه، فقط چک میشه، کدت هم در هر حالت کار میکنه. بهتره تا یه مدتی حتما براکت ها رو بزاری که اشتباه نکنی.

کد:
using namespace std;
#include<iostream>
//#include<conio.h>
int main()
{
    int A[20];
    for(int i=0;i<20;){
        int a;
        //Some Output to make the program more user friendly
        cout<<"Please insert a number between 10 and 100."<<"("<<20-i<<" more"<<")"<<"\n";
        cin>>a;
        if (a<100 && a>10){ //User input control
            A[i]=a;
            i++; //Progress only when input is valid
            }else{
            cout<<"Your number was not between 10 and 100."<<"\n";
            //No Progress
        }
    }
    
    
    for(int i=0;i<20;i++)
    {
        for(int j=i+1;j<19;j++){
            if(A[i]==A[j]) //Comparison operator is "==" not "="
            A[j]=-1;
        }
    }
    cout<<"View of your unique inputs :"<<"\n";
    for( int i=0;i<20;i++){
        if(A[i]!=-1)
        cout<<A[i]<<"\t";
    }
    cout<<"\n";
    //getch();
    return 0;
}
 
آخرین ویرایش:

خانم مهندس92

عضو جدید
خب حالا بقیه سوالایی که قبلا پرسیدم وقرار شد کدش رو بنویسم واشکالاتم رو بپرسم
1. نمودار هیستوگرام nعدد بین 1تا30:
کد:
 using namespace std;
#include<iostream>
#include<conio.h>
int main()
{
    int n;
    int B[50];
    int b;
    cin>>b;
    for(int i=0;i<n;i++)

    {
        cin>>b;
        B[i]=b;
    }
    char C[n][30];
    for(int i=0;i<n;i++)
    {
    for(int j=0;j<B[i];j++)
        C[i][j]="*";
    }
        for(int i=0;i<n;i++)
        {
            for(int j;j<=30;j++)
                if(B[i][j]="*");

                    cout<<"B[i][j]";
        }

        cout<<'\n';
        getch();
        return 0;


}
 

خانم مهندس92

عضو جدید
2.محاسبه عددpi بااستفاده از فرمول وتقریب اعشار:
کد:
using namespace std;
#include<iostream>
#include<conio.h>
int main()
{
    int n;
float sum=0;
    for(int i=1;i<n;i++)
    {
        sum=sum+((pow(-1,(i+1)+4)/((2*i)-1));// tavan ro nmidonam baraye codnevisi ch jori bayad moshakhas konam!!!
            if(sum<=0.0001)
                cout<<sum;
    }
    getch();
    return 0;
}



}
 
آخرین ویرایش:

خانم مهندس92

عضو جدید
3.برنامه ای بنویسید که یک جمله را نوشته وتعداد حروف آن را چاپ کند
کد:
using namespace std;
#include<iostream>t 
#include<conio.h>
int main()
{
char A[100];
cin>>A[100];
int count=1;
for(int i=0;i<100;i++)
{
    for(int j=i+1;j<100;j++)
    {
        if(A[i]=A[j])
        .
        .
        .
        //az inja nemidonam chi benevisam?!!!
 
آخرین ویرایش:

خانم مهندس92

عضو جدید
برنامه ای که یک کلمه را گرفته وبصورت عکس چاپ کند :

کد:
using namespace std;
#include<iostream>
#include<conio.h>
int main()
{
    char A[50];
    cin>>A[50];
    for(int i=0;i>=0;i--)
    {
        cout<<"put your word";
        if(A[i]!=' ')
            cout<<A[i];
    }
    getch();
return 0;
}

این احتمالا خیلی خیلی اشکال داره چون موقع debugکلا هنگ میکنه وبه قولی کرش!!!!!
 

Drago

پیشکسوت فعال فناوری اطلاعات
کاربر ممتاز
خب حالا بقیه سوالایی که قبلا پرسیدم وقرار شد کدش رو بنویسم واشکالاتم رو بپرسم
1. نمودار هیستوگرام nعدد بین 1تا30:
کد:
 using namespace std;
#include<iostream>
#include<conio.h>
int main()
{
    int n;
    int B[50];
    int b;
    cin>>b;
    for(int i=0;i<n;i++)

    {
        cin>>b;
        B[i]=b;
    }
    char C[n][30];
    for(int i=0;i<n;i++)
    {
    for(int j=0;j<B[i];j++)
        C[i][j]="*";
    }
        for(int i=0;i<n;i++)
        {
            for(int j;j<=30;j++)
                if(B[i][j]="*");

                    cout<<"B[i][j]";
        }

        cout<<'\n';
        getch();
        return 0;


}
خداییش خودت می‌تونی این کد رو بخونی؟
۱.قراره n عدد بگیری، بعد چرا آرایه ۵۰ تاییه؟ n کجا مقدار دهی میشه؟
۲.اون ۴ تا حلقه میخواد چیکار کنه؟
ببین مگه قرار نیست ما n تا عدد بگیریم بعد بگیم مثلا اعداد بین ۱ تا ۵ مثلا هشت تا هست، ۸ تا ستاره چاپ شه، اعداد بین ۶ تا۱۰ چهارتا هست، ۴ تا ستاره چاپ شه و ...
خب، نمیتونیم یه آرایه مثلا ۶ خونه ای داشته باشیم که ایندکسش نشوندهنده‌ی بازه ما باشه؟! عددی هم که توش باشه نشاندهده‌ی تعداد تکرار اون بازه است. یه حلقه هم می‌نویسیم که تک تک آرایه رو بخونه، و به نسبت بازه خروجی چاپ کنه.

کد:
using namespace std;
#include<iostream>
//#include<conio.h>
int main()
{
    int a; // number of inputs
    cout<<"Please enter the number of inputs :";
    cin>>a;
    /*
    * We get 6 ranges
    * 1-5 6-10 11-15 16-20 21-25 26-30
    * Change this by your requirements.
    */
    int hist[6]={0};
    int temp; //temporary for checking input
    cout<<"Enter "<<a<<" numbers between 1 and 30";
    for (int i=0;i<a;){
        cout<<"\n"<<"Enter next number ("<<a-i<<" more) :";
        cin>>temp;
        if(temp<1 || temp>30){
            cout<<"\nYour number was not between 1 and 30.";
            }else{
            i++;
            if(temp>0 && temp <6){
                hist[0]++;
                }else if(temp>5 && temp <11){
                hist[1]++;
                }else if(temp>10 && temp <16){
                hist[2]++;
                }else if(temp>15 && temp <21){
                hist[3]++;
                }else if(temp>20 && temp <26){
                hist[4]++;
                }else if(temp>25 && temp <31){
                hist[5]++;
                }else{ //if you changed the number of ranges, remember to include their controls
                cout<<"unknown input :"<<temp;
            }
        }
    }
    for (int i=0;i<6;i++){
    switch (i){
    case 0: cout<<"\nRange (1-5)   :"; break;
    case 1: cout<<"\nRange (6-10)  :";break;
    case 2: cout<<"\nRange (11-15) :";break;
    case 3: cout<<"\nRange (16-20) :";break;
    case 4: cout<<"\nRange (21-25) :";break;
    case 5: cout<<"\nRange (26-30) :";break;
    } //More ranges , more cases ... 
        for(int j=0;j<hist[i];j++){
            cout<<'*';
        }
        
    }
    cout<<"\n";
    
    return 0;
}
به احتمال زیاد میشه تمیزتر از این هم نوشتش.
2.محاسبه عددpi بااستفاده از فرمول وتقریب اعشار:
کد:
using namespace std;
#include<iostream>
#include<conio.h>
int main()
{
    int n;
float sum=0;
    for(int i=1;i<n;i++)
    {
        sum=sum+((pow(-1,(i+1)+4)/((2*i)-1));// tavan ro nmidonam baraye codnevisi ch jori bayad moshakhas konam!!!
            if(sum<=0.0001)
                cout<<sum;
    }
    getch();
    return 0;
}



}
۱. توان رسانی توی ++C این شکلیه، مثلا میخوایم بگیم ۲ به توان ۳ :
کد:
pow(2,3)
اینجا رو هم ببین، جواب سوالت توشه.
3.برنامه ای بنویسید که یک جمله را نوشته وتعداد حروف آن را چاپ کند
کد:
using namespace std;
#include<iostream>t 
#include<conio.h>
int main()
{
char A[100];
cin>>A[100];
int count=1;
for(int i=0;i<100;i++)
{
    for(int j=i+1;j<100;j++)
    {
        if(A[i]=A[j])
        .
        .
        .
        //az inja nemidonam chi benevisam?!!!
باید چیکار کنیم؟
۱.یه جمله از ورودی بگیریم، پس بهتره یه String بگیریم. چرا؟ چون نمیدونیم اون جمله چند حرف خواهد داشت. string آرایه ای است از کاراکتر که سایزش از پیش تعیین شده نیست.
۲. ما می‌خوایم بدونیم توی این رشته امون مثلا چندتا a هست، چندتا b هست و ... . پس بهتره یه آرایه داشته باشیم که تعداد خونه هاش به اندازه تعداد حروف زبان انگلیسی باشه. مقداری که توی اون خونه ها میشینه هم تکرار اون حرف هست. آرایه رو با ۰ (صفر) مقدار دهی اولیه می‌کنیم.
۳.حالا میایم رشته رو پیمایش می‌کنیم، هر خونه رو بررسی می‌کنیم ببینیم چه حرفی توشه، خونه متناظر با اون حرف رو توی آرایه یکی به مقدارش اضافه می‌کنیم (دقت کن که اگه اسپیس یا غیر از حروف الفبا بود باید ازش بگذری) .
۴. حالا فقط کافیه که آرایه رو پیمایش کنی و مقادیرش رو بنویسی. میتونی از اونایی که صفر هستند هم بگذری و چاپ نکنی.

کدش رو بنویس.

برنامه ای که یک کلمه را گرفته وبصورت عکس چاپ کند :

کد:
using namespace std;
#include<iostream>
#include<conio.h>
int main()
{
    char A[50];
    cin>>A[50];
    for(int i=0;i>=0;i--)
    {
        cout<<"put your word";
        if(A[i]!=' ')
            cout<<A[i];
    }
    getch();
return 0;
}

این احتمالا خیلی خیلی اشکال داره چون موقع debugکلا هنگ میکنه وبه قولی کرش!!!!!
۱. ببین تو یه آرایه ۵۰ خونه ای از نوع کاراکتر تعریف کردی و درسته. اما وقتی می‌خوای ورودی بگیری داری فقط خونه ۵۰ام رو میگیری! باید کل A رو بگیری نه فقط خونه پنجاهم رو. در ضمن باز هم دقت که آرایه ۵۰ خونه ای، ایندکس ۵۰ نداره، آرایه ۵۰ خونه ای تا ایندکس ۴۹ بیشتر نداره و شما نمیتونی بگی مثلا A[50] = ‍1 .
۲.اگه می‌خوای آرایه رو برعکس پیمایش کنی، باید شروع پیمایش رو آخر آرایه در نظر بگیری، پس توی این مثال توی حلقه، i باید مقدار اولیه اش ایندکس آخر آرایه (۴۹) باشه (یا ۵۰ باشه و شرط خروج برابر صفر نداشته باشه).
۳. مقدار null رو با کاراکتر فاصله (Space) اشتباهه نگیر. تو داری میگی اگه اسپیس نبود چاپش کن...اگه خالی باشه (null) که باعث میشه آشغال (garbage) توی خروجی چاپ بشه!
۴. چرا آرایه کاراکتری؟ خب بیا از string استفاده کن که خودش در واقع آرایه کاراکتری با سایز متغیر هست. یه سری توابع مثل length هم داره که کمکت می‌کنه.
کد:
using namespace std;
#include<iostream>
//#include<conio.h>
int main()
{
    string str;
    cout<<"Insert a word to see the reverse!\n";
    cin>>str;
    cout<<"Revrsed word:\n";
    for(int i=str.length();i>=0;i--)
    {
        cout<<str[i];
    }
    cout<<"\n";
    //  getch();
    return 0;
}



یکی هم جواب ما رو هم بده، خیر داره :دی
ما واسه خیرش جواب نمی‌دیم!
اما در مورد سوال شما، من کار کردن با پوینترها رو بلد نیستم، همون موقع هم که یادمون دادن درست یاد نگرفتم، بعدا هم نرفتم یاد بگیرم، الان هم از Java استفاده می‌کنم که خودش پوینتر رو هندل می‌کنه!!
اگه بلد بودم کمکت می‌کردم.
 
آخرین ویرایش:

خانم مهندس92

عضو جدید
بازم سلام
من کد
2.محاسبه عددpi بااستفاده از فرمول وتقریب اعشار:
رو نوشتم کامپایل میکنه بدون ارور ولی کار نمیده!!!!
کد:
using namespace std;
#include<iostream>
#include<conio.h>
int main()
{
    int n;
float sum=0;
for(int i=1;i<n;i++)
    {
        float pow;
        sum=sum+(pow-(-1,i)- 4/(2*i+1));
                cout<<"sum";
    }
    getch();
    return 0;
}

راجع به کد سوال
3.برنامه ای بنویسید که یک جمله را نوشته وتعداد حروف آن را چاپ کند
کد:
using namespace std;
#include<iostream>
#include<conio.h>
int main()
{
    cout << "Enter your string:" << endl;
    char st[100];
    cin.getline( st, 100);
    int len = strlen( st);
    for( int i = len - 1; i >= 0; i--)
    {
        cout << st[i];
    }
    cout << endl;
    system("pause");
    getch();
    return 0;
}


وکد چاپ رشته به صورت عکس هم این کد
کد:
using namespace std; #include<iostream> //#include<conio.h> int main() {     string str;     cout<<"Insert a word to see the reverse!\n";     cin>>str;     cout<<"Revrsed word:\n";     for(int i=str.length();i>=0;i--)     {         cout<<str[i];     }     cout<<"\n";     //  getch();     return 0; }
ارور میده 
باتشکر
 
آخرین ویرایش:

alex_17

عضو جدید
سلام
می خوام ببینم چجوری میشه از یک کلاس یا متود هاش تو یه کلاس دیگه استفاده کرد؟
مثلا من دو تا کلاس دارم که هر دو ID رو به عنوان یه پارامتر دارن
بر اساس IDی که از کلاس دوم دارم میخوام مثلا عدد 5 رو به تعداد اون ID که تو کلاس اولم هست اضافه کنم؟ چجوری میشه؟
 

Drago

پیشکسوت فعال فناوری اطلاعات
کاربر ممتاز
بازم سلام
من کد
2.محاسبه عددpi بااستفاده از فرمول وتقریب اعشار:
رو نوشتم کامپایل میکنه بدون ارور ولی کار نمیده!!!!
کد:
using namespace std;
#include<iostream>
#include<conio.h>
int main()
{
    int n;
float sum=0;
for(int i=1;i<n;i++)
    {
        float pow;
        sum=sum+(pow-(-1,i)- 4/(2*i+1));
                cout<<"sum";
    }
    getch();
    return 0;
}

راجع به کد سوال
3.برنامه ای بنویسید که یک جمله را نوشته وتعداد حروف آن را چاپ کند
کد:
using namespace std;
#include<iostream>
#include<conio.h>
int main()
{
    cout << "Enter your string:" << endl;
    char st[100];
    cin.getline( st, 100);
    int len = strlen( st);
    for( int i = len - 1; i >= 0; i--)
    {
        cout << st[i];
    }
    cout << endl;
    system("pause");
    getch();
    return 0;
}


وکد چاپ رشته به صورت عکس هم این کد
کد:
using namespace std; #include<iostream> //#include<conio.h> int main() {     string str;     cout<<"Insert a word to see the reverse!\n";     cin>>str;     cout<<"Revrsed word:\n";     for(int i=str.length();i>=0;i--)     {         cout<<str[i];     }     cout<<"\n";     //  getch();     return 0; }
ارور میده 
باتشکر
در مورد عدد پی:
۱.نمیبینم که n رو از کاربر گرفته باشید، توی برنامه هم مقدار دهی نشده... انتظار دارید حلقه چجوری کار کنه؟؟؟
۲. sum رو گذاشتید توی دابل کوتیشین، پس خروجی رشته sum خواهد بود نه مقدار توی متغیر sum. وقتی میگم به دستور زبان باید دقت کرد واسه همینه.
۳. فرمولتون اشتباهه، بیشتر دقت کنید.
=====
در مورد تعداد حروف یک جمله :
۱.خانم من دارم میگم استرینگ بگیر، باز آرایه ۱۰۰ تایی کاراکتر میگیری؟!
۲. آرایه ۱۰۰ کاراکتری تعریف کردی بعد حالا میخوای ببینی طولش چقدره؟ خب ۱۰۰ تاس دیگه :|
۳. چرا آرایه داره برعکس پیمایش میشه؟ دلیل خاصی داره؟؟ میخوای جمله رو از آخر به اول بررسی کنی که چی بشه؟
۴. توی خروجی چی چاپ میشه؟ برعکس همون آرایه... این با نشون دادن تعداد حروف یه جمله یه کم فرق نمیکنه؟!
====
در مورد معکوس یه کلمه :
کد درسته و من تست کردم بعد گذاشتم، اما اگه به همین شکلی که اینجا کپی کردید توی فایلتون هم کپی کرده باشید مسلما کار نمیکنه، چون کامنت خطی باعث میشه تا آخر اون خط کامنت بشه.
code.png
====
«ارور میده» عبارت درستی برای به کار بردن نیست. شما حتی اگه از درپیت ترین کامپایلرها هم استفاده کنی، بازم بهت میگه کجا و چه اروری داره میده. تفاوت هست بین کسی که میدونه چه اروری داره میگیره و برای رفعش هم تلاش کرده و موفق نشده، با کسی که میگه کامپیوترم ارور میده.
سلام
می خوام ببینم چجوری میشه از یک کلاس یا متود هاش تو یه کلاس دیگه استفاده کرد؟
مثلا من دو تا کلاس دارم که هر دو ID رو به عنوان یه پارامتر دارن
بر اساس IDی که از کلاس دوم دارم میخوام مثلا عدد 5 رو به تعداد اون ID که تو کلاس اولم هست اضافه کنم؟ چجوری میشه؟
اول از همه کلاس و متودهاش باید پابلیک باشن تا بشه خارج از کلاس ازشون استفاده کرد (راستش تا حالا کلاس پرایوت ندیدم، اما از نظر تئوریک فکر کنم امکانش هست. اما متدهای پرایوت عادیه).
توی چه زبونی می‌خوای؟ ++C ؟ الان اگه بگم با ++C به صورت شی گرا زیاد کار نکردم میگی هرچی بهش میگم میگه من کار نکردم!! اما توی جاوا و #C و اینا با . (نقطه) میشه به خصوصیات کلاس (متغیرها و متدهاش) دسترسی پیدا کرد.
واسه ++C اگه میخوای یه نگاهی اینجا بنداز. اما بهترین راه اینه که یه کتاب خوب در مورد ++C بخونی.
 
آخرین ویرایش:

alex_17

عضو جدید
در مورد عدد پی:
۱.نمیبینم که n رو از کاربر گرفته باشید، توی برنامه هم مقدار دهی نشده... انتظار دارید حلقه چجوری کار کنه؟؟؟
۲. sum رو گذاشتید توی دابل کوتیشین، پس خروجی رشته sum خواهد بود نه مقدار توی متغیر sum. وقتی میگم به دستور زبان باید دقت کرد واسه همینه.
۳. فرمولتون اشتباهه، بیشتر دقت کنید.
=====
در مورد تعداد حروف یک جمله :
۱.خانم من دارم میگم استرینگ بگیر، باز آرایه ۱۰۰ تایی کاراکتر میگیری؟!
۲. آرایه ۱۰۰ کاراکتری تعریف کردی بعد حالا میخوای ببینی طولش چقدره؟ خب ۱۰۰ تاس دیگه :|
۳. چرا آرایه داره برعکس پیمایش میشه؟ دلیل خاصی داره؟؟ میخوای جمله رو از آخر به اول بررسی کنی که چی بشه؟
۴. توی خروجی چی چاپ میشه؟ برعکس همون آرایه... این با نشون دادن تعداد حروف یه جمله یه کم فرق نمیکنه؟!
====
در مورد معکوس یه کلمه :
کد درسته و من تست کردم بعد گذاشتم، اما اگه به همین شکلی که اینجا کپی کردید توی فایلتون هم کپی کرده باشید مسلما کار نمیکنه، چون کامنت خطی باعث میشه تا آخر اون خط کامنت بشه.
مشاهده پیوست 189342
====
«ارور میده» عبارت درستی برای به کار بردن نیست. شما حتی اگه از درپیت ترین کامپایلرها هم استفاده کنی، بازم بهت میگه کجا و چه اروری داره میده. تفاوت هست بین کسی که میدونه چه اروری داره میگیره و برای رفعش هم تلاش کرده و موفق نشده، با کسی که میگه کامپیوترم ارور میده.

اول از همه کلاس و متودهاش باید پابلیک باشن تا بشه خارج از کلاس ازشون استفاده کرد (راستش تا حالا کلاس پرایوت ندیدم، اما از نظر تئوریک فکر کنم امکانش هست. اما متدهای پرایوت عادیه).
توی چه زبونی می‌خوای؟ ++C ؟ الان اگه بگم با ++C به صورت شی گرا زیاد کار نکردم میگی هرچی بهش میگم میگه من کار نکردم!! اما توی جاوا و #C و اینا با . (نقطه) میشه به خصوصیات کلاس (متغیرها و متدهاش) دسترسی پیدا کرد.
واسه ++C اگه میخوای یه نگاهی اینجا بنداز. اما بهترین راه اینه که یه کتاب خوب در مورد ++C بخونی.
زبون c++ پمیخواستم. دمت گرم. رفتم اونجا خیلی مفید واقع نبود. به هر حال ممنون. تونستم این کارو بکنم ولی حالا برنامه رو که ران میکنم ویندوز اتوپد ورکینگ میده!
نمیدونم چرا همه چی درسته. اگه کار با پوینتر رو بلد بودین مطمئنا دیگه حل شده بود قضیه!
کسی دیگه ای به اینجا سر نمیزنه؟ که پوینتر بلد باشه؟
 

alex_17

عضو جدید
آقا این پیغام چی میگه؟باید چیکار کنم؟
"C:\******\Untitled1.cpp expected primary-expression before "int
 

Drago

پیشکسوت فعال فناوری اطلاعات
کاربر ممتاز
کسی دیگه ای به اینجا سر نمیزنه؟ که پوینتر بلد باشه؟
بچه های این تالار زیاد اهل برنامه نویسی نیستن، من خودمم همینجوری بودم.
اگه مشکلت در مورد شبکه یا مسائل مشابه بود بخت بهتری داشتی! از بچه های نرم افزار هم میتونی کمک بگیری.
آقا این پیغام چی میگه؟باید چیکار کنم؟
"C:\******\Untitled1.cpp expected primary-expression before "int
اول از همه که Talk is cheap, show me the code!
کدش کو؟؟
اما چیزی که پیدا کردم اینه که احتمالا یه متدی رو داری فراخوانی می‌کنی اما موقع فراخوانی داری متغیر ورودی رو initialize میکنی.
مثلا :
کد:
//some code
someMethod(int a=1);
//this is WRONG

=================

//some code
int a = 1;
someMethod(a);

//this should work OK
 

Drago

پیشکسوت فعال فناوری اطلاعات
کاربر ممتاز
سلام
كسي اينجا تو زمينه VOIP كار كرده؟
ميتونه كسي كمكم كنه؟!
ممنونم
سوالتو بپرس، چیکار داری کار کرده یانه؟!
تا سوالتو نپرسی هیچکس نمیدونه که میتونه کمکت کنه یا نه.
 

leynaz

عضو جدید
یک کامپیوتر از کار خارج شده داریم با ویندوز xp.حالا میخوایم دوباره ازش استفاده کنیم:redface:
مشکلی که داره اینه که وقتی فلش مموری بهش میزنیم اطلاعات روی فلش رو فقط روی خود فلش باز میکنه.وقتی میریزیم رو کامپیوتر هم باز نمیکنه و حتی پاک نمیشه!
چیکار باید کرد؟trojan remover هم نصبه روکامپیوتر.
 

Drago

پیشکسوت فعال فناوری اطلاعات
کاربر ممتاز
یک کامپیوتر از کار خارج شده داریم با ویندوز xp.حالا میخوایم دوباره ازش استفاده کنیم:redface:
مشکلی که داره اینه که وقتی فلش مموری بهش میزنیم اطلاعات روی فلش رو فقط روی خود فلش باز میکنه.وقتی میریزیم رو کامپیوتر هم باز نمیکنه و حتی پاک نمیشه!
چیکار باید کرد؟trojan remover هم نصبه روکامپیوتر.
بهترین چیز واسه یه کامپیوتر قدیمی یه توزیع لینوکسی با یه دستکتاپ سبکه.
توصیه میکنم یه Lubuntu نصب کنید. (چیز سختی نیست، اگه کمک خواستی حتما بگو)

اما اگه نخوایم صورت مسئله رو پاک کنیم باید ببینیم مشکل سیستم چیه.
اطلاعات رو می‌تونیم از فلش کپی کنیم؟ بعد paste هم میشه؟ می‌بینیمش، فضا اشغال کرده، اما مثلا نمیتونیم اجراش کنیم؟
اطلاعات از روی فلش پاک نمیشه، درسته؟
فلش رو با یه سیستم دیگه تست کردید؟ یه فلش دیگه رو با این سیستم تست کردید؟ نتیجه هردوتا رو بگید اگه ممکنه.
 

E.A.R

عضو جدید
سلام بچه ها
کسی در مورد توزیع های آمار چیزی میدونه.بخصوص توزیع مثلثی؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟
اگه میدونید تا فردا بهم بگین
مرسی:gol:
 

prp-e

متخصص سیستم های Apple
کاربر ممتاز
سلام بچه ها
کسی در مورد توزیع های آمار چیزی میدونه.بخصوص توزیع مثلثی؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟
اگه میدونید تا فردا بهم بگین
مرسی:gol:

خواهشا سوالاتتون رو کامل مطرح کنید. سوالاتی مثل این که «کسی از فلان چیز چیزی میدونی بخصوص بهمان مدلش» جواب خاصی نخواهد داشت یا ممکنه جوابی که میگیرید رو خودتون از قبل (حتی دقیقتر و بیشتر) بدونید.

متشکرم.
 
بالا