صفحه 1 از 7 123 ... آخرآخر
نمایش نتایج 1 تا 40 از 320

نام تاپیک: مجموعه برنامه های نوشته شده به زبان C و ++C

Hybrid View

پست قبلی پست قبلی   پست بعدی پست بعدی
  1. #1

    مجموعه برنامه های نوشته شده به زبان C و ++C

    کاربران از این به بعد می توانند در این تاپیک سورس کدهای برنامه های خود را قرار دهند تا مجموعه ای مفید از برنامه ها ایجاد شود و همگان بتوانند از آن استفاده کنند.
    سورس کدهای کوچک، کاربردی و متداول (مثلا نحوه ایجاد آرایه n بعدی!) نیز مجاز است.

    لذا قبل از ارسال پستی در این تاپیک رعایت همه قوانین زیر ضروری است، در غیر این صورت هرچند که ارسال شما مفید باشد بدون تذکر پاک می شود:

    1- (مهم) قرار دادن تمرینات و پروژه هایی که بیشتر دانشجویی هستند و معمولا کاربرد دیگری جز دریافت نمره ندارند ممنوع است. (تحت هر عنوانی، حال یادگیری یا آموزش) سایر مواردی که کاربردی هستند یا فقط دانشجویی نیستند و در برنامه های تجاری نیز به کار خواهند آمد مجاز می باشد.

    2- درخواست برنامه در این تاپیک ممنوع است. فقط قرار دادن سورس کد برنامه مجاز است.

    3- برنامه حتما باید شامل سورس کد باشد، فایل اجرایی به تنهایی حذف خواهد شد.
    نکته: در صورتی که کدها کوتاه است به صورت مستقیم قرار دهید، در غیر این صورت به صورت فایل zip

    4- در صورتی که سورس کدی از سایتی کپی می شود کپی رایت باید ذکر شود و حتما مرجع آن نیز ذکر شود.


    5- قرار دادن سورس کدهای تجاری که مالکیت آن برای فرد دیگری هست (طبق قوانین کلی سایت) ممنوع می باشد.

    6- عنوان مناسب و مجزا از سایر توضیحات برای هر برنامه انتخاب کنید تا کاربران به راحتی برنامه مورد نظر خود را بیابند. تا جای ممکن برای عناوین از حالت Bold استفاده کنید.


    موفق باشید
    آخرین ویرایش به وسیله Nima_NF : جمعه 16 اسفند 1387 در 01:41 صبح

  2. #2

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    سلام نیما جان
    عجب تاپیکی زدی واقعا کیف کردم گفتم من شروع کننده باشم تا بقیه دوستان هم بیاند و کدهاشون را بذارند .......
    شاید این کد ها را قبلا گذاشته باشم اما دوست داشتم که تو این تاپیک باشند تا یه مجموعه خوب بشه
    این یه برنامه هست که فلدرهای شما را قفل می کنه!!!!
    در اول این برنامه از شما پسوورد می خواهد که پسورد آن
    Ashiyane.org
    است . ضمنا در قسمت دادن ادرس برای قفل کردن کاراکتر '\' یادتون نره و بعد بگید برنامه ات کار نمی کنه
    ضمنا امکان تغییر پسوورد هم داره و پسوورد به حروف کوچک و بزرگ حساس است و دیگه این که نیاز به .net framework هم داره تا درست اجرا بشه
    برنامه به زبان سی پلاس پلاس است و باید با ویژوال استودیو 2005 کامپایل بشه
    فایل های ضمیمه فایل های ضمیمه

  3. #3

    منوی حساس به جهت های بالا و پایین

    سلام دوستان این برنامه را قبلا گذاشته ام اما حالا ان را با استفاده از تابع gotoxy() بازنویسی کردم تا از delay ان کمتر بشه
    این یه برنامه است که با استفاده از ان می تونید یک منوی که با جهت های بالا و پایین حساس است بسازید.
    توضیحات اضافی را درخود برنامه گذاشتم......
    /* Menu Shower V 1.1
    Compile with visual C++‎ 6
    Programmer:Milad Kakoli(Kitten)
    E-main:hellcrueldictator@yahoo.com
    Weblog:www.kitten.mihanblog.com
    yek code besyar sade baraye nemayesh yek menu sade ke omidvaram
    dafa'at bad betonam ziba tar va karamad taresh konam.
    in code ghabliat shenakht jahhat haye bala va paiine baraye
    moshakhas kardan gozine entekhab shode ra darad va ba zadan enter
    halghe payan yafte gozine entekhab shode moshakhas mishavad
    baraye etela'at bishtar be weblog moraje'e konid.
    */
    #include<iostream.h>
    #include<string.h>
    #include<stdio.h>
    #include<conio.h>
    #include <windows.h>
    int ch; //braye gereftan jahat
    int row=0; //moshakhas kardan satr fa'al
    #define MAX 40 // bishtarin tedad char moton
    char uptext[1][MAX]; // matne balaye menu
    bool chi=true;
    struct Student
    {
    int tedad; // tedad gozinehaye ghabel entekhab
    char moton[5][MAX]; // moton gozinehaye ghabel entekhab
    };Student s;
    /*tabe menu ke moton menu ra print mikonad*/
    int menu() {
    cout<< uptext[0]<<endl;//print matne balaye menu
    for (int i=0 ;i < s.tedad;i++)
    {
    if (i==row) {
    SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HA NDLE), 2);
    }//taghiir rang baraye moshakhas kardan gozine fa'al
    cout<< i+1 <<"-"<<s.moton[i]<<endl;
    if (i==row) {
    SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HA NDLE), 7);
    }//bargardandan rang be halat aval
    }
    return 0;//payan tabe
    }
    int main(){
    s.tedad=5; // moshakhas kardan tedad gozineha
    strcpy(s.moton[0],"Menu Viewer V 1.0");//kopy gozine aval
    strcpy(s.moton[1],"hellcrueldictator@yahoo.com");//kopy gozine 2vom
    strcpy(s.moton[2],"www.kitten.mihanblog.com");//kopy gozine 3vom
    strcpy(s.moton[3],"Kitten");//kopy gozine 4om
    strcpy(s.moton[4],"Movafagh bashid");//kopy gozine 5om
    strcpy(uptext[0],"this is my menu");//kopy matn balaye menu
    while(chi) {
    gotoxy(0,0); // shoro az ebteda
    menu(); // >>ejraye tabe menu
    ch =getch(); //up=72,down=80, enter=13
    switch(ch) {
    case 72://up
    if (row==0) {
    row=s.tedad-1;
    }//bargardandan be paiin
    else {
    row=row-1;
    }//bargardandan be bala
    break;
    case 80://down
    if(row==s.tedad-1) {
    row=0;
    }//bargardandan be bala
    else {
    row=row+1;
    }//bargardandan be paiin
    break;
    case 13://enter
    chi=false;//baraye khoroj az halghe
    break;

    }
    }
    /*baraye anjam karhaye badi
    gozineye entekhab shode tavasot karbar row+1 ast */
    return 0;
    }
    //shabih saz gotoxy
    void gotoxy(int x,int y)
    {
    COORD pos;
    HANDLE hConsole = GetStdHandle ( STD_OUTPUT_HANDLE );
    if (INVALID_HANDLE_VALUE != hConsole)
    {
    pos.X = x;
    pos.Y = y;
    SetConsoleCursorPosition( hConsole, pos );
    }
    }

  4. #4

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    اینم دوتا کد دیگه
    اولی یه متن را اخر هر سطر فایل بازشده اضافه میکنه
    #include "stdafx.h"
    #include<fstream>
    using std::fstream;
    #include<iostream>
    #include<string.h>
    char pass[33];
    int n= 0;
    int m = 0;
    int y =0;
    fstream m2("c:\\2.txt");
    void neveshtan(char pass[32]) {
    m2<<pass<<"matn\n";
    }
    int main() {
    std::cout<<"tedad khotot?\n";
    std::cin>>y;
    fstream m1("c:\\1.txt");
    for (int x = 1; x<=y;x++) {
    m1.getline(pass,32);
    std::cout << pass << "\n";
    neveshtan(pass);
    _strset(pass,NULL);
    }
    return 0;
    }

    و این هم دومی که از فایل 1.txt می خونه و ان سطرهایی که دقیقا مثل هم هستند را پاک میکنه تا متن های اضافی پاک بشه و فایلی که سطر تکراری نداره را به عنوان 2.txt ذخیره می کنه

    #include<iostream>
    using std::cin;
    using std::cout;
    using std::endl;
    #include<fstream>
    using std::fstream;
    #include<string.h>
    int khat;
    char id[33];
    int natije;
    char checkid[33];
    int cmp;
    char getid[33];
    int check(char checkid[33]) {
    fstream m3("c:\\2.txt");
    for (int j = 1; j <=khat;j++) {
    m3.getline(getid,32);
    cmp = strcmp(checkid,getid);
    if (cmp == 0) {
    cout<<checkid<<endl;
    return 0;
    }
    }
    return cmp;
    }
    int main () {
    fstream m2("c:\\2.txt");
    cout<<"tedad khotot?\n";
    cin >> khat;
    fstream m1("c:\\1.txt");
    for (int i = 1; i<=khat;i++) {
    m1.getline(id,32);
    natije = check(id);
    if (natije == 0) {
    continue;
    }
    else {
    m2<<id<<endl;
    }
    }
    return 0;
    }

  5. #5

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    عنوان: گرفتن ping سایت ها تنها با کلیک بر روی یک فایل

    این یک برنامه کوچک هست که در ویندوز پس از کامپایل باید از فایل اجرایی یک shortcut بسازید، سپس با راست کلیک کردن بر روی آن و انتخاب properties به قسمت Targets بروید. در آن مسیر فایل نوشته شده است، حال فقط کافیست آدرس وب سایت مورد نظر یا IP مورد نظر را در ادامه آن مثلا به شکل زیر داخل " " بنویسید. از این به بعد هرگاه بر روی این shortcut کلیک کنید پنجره کنسول باز می شود و سایت را ping می کند:(به تعداد مورد نظر نیز می توانید shortcut بسازید)

    "E:\MyPingApp.exe" "ping www.yahoo.com"
    برنامه در کامپایلرهای قدیمی و یا جدید اما در حالت اسکی:

    #include <stdio.h>
    #include <stdlib.h>
    #include <conio.h>

    int main(int agrc, char *argv[])
    {
    system( argv[1] );

    getch();
    return 0;
    }
    در حالت یونیکد (در کامپایلرهای جدید):

    int _tmain(int argc, _TCHAR* argv[])
    {
    _tsystem( argv[1] );

    _getch();
    return 0;
    }

  6. #6

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    [QUOTE=kitten;689255]اینم دوتا کد دیگه
    اولی یه متن را اخر هر سطر فایل بازشده اضافه میکنه
    #include "stdafx.h"
    #include<fstream>
    using std::fstream;
    #include<iostream>
    #include<string.h>
    char pass[33];
    int n= 0;
    int m = 0;
    int y =0;
    fstream m2("c:\\2.txt");
    void neveshtan(char pass[32]) {
    m2<<pass<<"matn\n";
    }
    int main() {
    std::cout<<"tedad khotot?\n";
    std::cin>>y;
    fstream m1("c:\\1.txt");
    for (int x = 1; x<=y;x++) {
    m1.getline(pass,32);
    std::cout << pass << "\n";
    neveshtan(pass);
    _strset(pass,NULL);
    }
    return 0;
    }


    سلام
    ببخشید من این برنامه رو نوشتم این ارور رو میده :

    Untitled.jpg
    کسی میدونه علت چیه؟ راهنمایی کنید لطفا
    آخرین ویرایش به وسیله darya62 : سه شنبه 25 اسفند 1394 در 07:54 صبح

  7. #7
    کاربر دائمی آواتار #target
    تاریخ عضویت
    دی 1387
    محل زندگی
    استان گلستان
    پست
    589

    Simple Recovery بازگردانی فایل JPG حذف شده

    برنامه دیسک رو بررسی میکنه دنبال هیدر Jpg و انتها اون و کپی اون به فایل جدید

    برنامه کامل نیست و به عنوان نمونه بوده.
    فایل های ضمیمه فایل های ضمیمه

  8. #8
    کاربر دائمی آواتار hossein71
    تاریخ عضویت
    شهریور 1387
    محل زندگی
    خونمون-اتاقم-روبروی مانیتور
    پست
    184

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    اطلاعات عمومی دانشجو

    خصوصیات برنامه:
    1)وارد کردن نمره به تعداد دلخواه
    2)بازه نمرات بین 0 تا 100
    3)مشخص کردن وضعیت نمرات
    4)گرفتن میانگین
    5)مشخص کردن تعداد افراد قبول و مردود شده

    #include <iostream.h>
    #include <conio.h>
    int main()
    {
    float x, counter=1, counterp=0, counterf=0,ave=0,y,m;
    cout<<"How many mark? ";
    cin>>y;
    cout<<"Pass and Fail: ";
    cin>>m;
    cout<<"#########################################";
    cout<<"\n";
    while (counter<=y){
    cout<<"Mark "<<counter<<": ";
    cin>>x ;
    counter=counter+1;
    ave+=x;
    if (x>100){
    cout<<"ERROR:FALSE MARK"<<"\n";
    cout<<"\n";
    cout<<"egain enter the ";
    counter=counter-1;
    }
    else if (x>=m){
    cout<<"Pass"<<"\n"<<"*********************"<<"\n"< <"\n";
    counterp+=1;
    }
    else{
    cout<<"Fail"<<"\n"<<"*********************"<<"\n"< <"\n";
    counterf+=1;
    }
    }

    if (counter=y){
    cout<<"Pass number: "<<counterp<<"\n";
    cout<<"Fail number: "<<counterf<<"\n";
    cout<<"Average: "<<ave/y<<endl;
    }

    getch();
    return 0;
    }
    آخرین ویرایش به وسیله hossein71 : جمعه 10 دی 1389 در 08:26 صبح

  9. #9
    منتظر تایید آدرس ایمیل
    تاریخ عضویت
    دی 1387
    محل زندگی
    Room
    پست
    43

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    من نمونه برنامه که نه! اما با کدها بازی کردم اینحا هم می زارم!! این کد واسه کامپایل با کامپایلر نیست ماله اینکه خودوتون ببینین و خروجی را بدین!! واسه تمرین درک :

    /* Practice-Win32.cpp : Defines the entry point for the console application.
    Coded by ace.coder in Visual(C++‎) Studio 2008 ; { Friday , December 19 , 2008 2:11 AM }
    Example #1 - TOO EASY
    Our Question -> This Program IF IN RUN HAVE A TRUE OUTPUT? , For Everybody Call To Himself ELITE.
    ( WithOut By Compiler , just read/write on paper and Trace )
    Good Luck
    */
    #include "stdafx.h"
    #include <iostream>
    #include <conio.h>
    using namespace std;
    static char Z;
    int main(int argc, char* argv[])
    {

    ;char joomla[20]="AAce.Coder88"
    ;{Z='\0';}char temp[20]="AAce.Coder"
    ;int i=0
    ;int counter=0
    ;joomla[*(temp + *(joomla))]=88
    ;for (;i<20;i++,counter++)
    if ( joomla[i]==*(temp+counter)&&joomla[i]!=Z)
    cout<<joomla[i]<<" : YES"<<endl
    ;{getch();}
    ;return 0
    ;}

  10. #10
    کاربر دائمی
    تاریخ عضویت
    فروردین 1388
    محل زندگی
    ایران سرای من است
    پست
    2,655

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    سلام:
    این الگوریتم کلی و سورس کامل مثلث n عددی:


    #include <iostream.h>
    int cNum (int k)
    {
    int val =1;
    while( k/10 > 0 )
    {
    k /=10;
    val ++;
    }
    return val;
    }
    int cNumCount (int k)
    {
    int val = 0;
    for( int i=k; i>0 && cNum(i)== cNum(k); i--)
    val ++;
    return val;
    }
    int main()
    {
    int n, c, b, j;
    cout<<"\n add ro vared konid >";
    cin>>n;
    c = n*2;
    b = 1;
    for(int i=0;i<n;i++){
    cout<<"\n";
    for(j=0;j<c-i-cNumCount(b)*(cNum(i)-1);j++)
    cout<<" ";
    for( j=1;j<=b;j++)
    cout<<j;
    for( j=1;j<i+cNum(i);j++)
    cout<<j;
    b+=1;
    }
    return 0;
    }


  11. #11

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    سلام . من تازه سی پلاس پلاس رو شروع کردم . یه برنامه نوشتم که تقدیم میکنم . در این برنامه ابتدا تعداد قرنها رو مینویسید ( مثلا 2 ) . بعد برنامه بهتون میگه که مثلا این 2 قرن : چند دهه ، چند سال ، چند ماه ، چند هفته ، چند روز ، چند ساعت ، چند دقیقه و چند ثانیه است . این کدای برنامه
    فایل های ضمیمه فایل های ضمیمه

  12. #12
    کاربر دائمی آواتار majidmir
    تاریخ عضویت
    اردیبهشت 1387
    سن
    34
    پست
    199

    کتابخانه با امکان ورود - ویرایش- حذف -به امانت گرفتن و پس دادن کتاب

    کتابخانه با امکان ورود - ویرایش- حذف -به امانت گرفتن و پس دادن کتاب
    #include<iostream.h>
    #include<conio.h>
    #include<stdio.h>
    #include<string.h>

    //===========================
    //===========================
    class book
    {
    friend class library;

    private:
    char book_name[11];
    char explain[51];
    char aouther[11];
    char part;

    char user[11];
    int reserved;

    book *next;

    public:
    book();
    void edit();
    void reserv();
    void getback();
    }
    //---------------------------
    book::book()
    {
    clrscr();

    cout<<"============ add a new book =================="
    <<"\n\nto insert new book ,enter flow informations:"
    <<"\n\nbook name?";
    gets(book_name);
    book_name[10]=NULL;

    cout<<"\naouther name?";
    gets(aouther);
    aouther[10]=NULL;

    cout<<"\nany explain?";
    gets(explain);
    explain[50]=NULL;

    part=book_name[0];

    reserved=0;

    next=NULL;

    cout<<"\n\ninformathions set!";
    getch();
    }
    //---------------------------
    void book::edit()
    {
    cout<<"error ";
    }
    //---------------------------
    void book::reserv()
    {
    clrscr();
    cout<<"\n=========== reserving book ===================";

    if(reserved==0)
    {
    cout<<"\n\nuser name?";
    gets(user);
    user[11]=NULL;

    reserved=1;
    }

    if(reserved==0)
    {
    cout<<"\n\nsorry! book has been reserved befor"
    <<"by user:";
    puts(user);
    }

    getch();
    }
    //---------------------------
    void book::getback()
    {
    reserved=0;

    cout<<"\n\nbook got bak.";
    getch();
    }
    //===========================
    //===========================
    class library
    {
    public:
    library();
    void run_menu();

    private:
    book *parts[24];
    void insert(book*);
    void find();
    void search();

    }
    //---------------------------
    library::library()
    {
    for(int i=0;i<=23;i++)
    parts[i]=NULL;

    }
    //---------------------------
    void library::run_menu()
    {

    char ch='n';

    while(ch!='4')
    {
    clrscr();

    cout<<"================= LIBRARY =================="
    <<"\n\n1:add a new book."
    <<"\n2:find a book."
    <<"\n3:search a book."
    <<"\n4:exit."
    <<"press numbers:";


    ch=getch();


    if(ch=='1')
    {
    book *n=new book;
    insert(n);
    }
    if(ch=='2')
    {
    find();
    }
    if(ch=='3')
    {
    search();
    }

    }//while
    }
    //---------------------------
    void library::insert(book *s)
    {
    int d=s->part-97;

    if(parts[d]==NULL)
    {
    parts[d]=s;
    }
    else
    {
    book *p=parts[d],*q;
    while(p!=NULL && strcmp(p->book_name,s->book_name)<0)
    {
    q=p;
    p=p->next;
    }
    q->next=s;
    s->next=p;
    }

    }
    //---------------------------
    void library::find()
    {
    clrscr();

    cout<<"=========== edit / delete books ============"
    <<"\nenter exact book name:";
    char name[11];
    gets(name);
    name[11]=NULL;
    int d=name[0]-97;

    book *p=parts[d],*q;
    while(p!=NULL && strcmp(p->book_name,name)!=0)
    {
    q=p;
    p=p->next;
    }
    if(p==NULL)
    {
    cout<<"not found!";
    }
    if(p!=NULL)
    {
    cout<<"\n\ndelete it?('d') or edit?('e')"
    <<" or reserv?('r') or getback?('g') :";
    char ch=getch();
    if(ch=='d')
    {
    q->next=p->next;
    delete p;
    }
    if(ch=='e')
    {
    p->edit();
    }
    if(ch=='r')
    {
    p->reserv();
    }
    if(ch=='g')
    {
    p->getback();
    }
    }
    getch();
    }
    //---------------------------
    void library::search()
    {
    char ch='6';

    while(ch!='4')
    {
    clrscr();
    cout<<"================== SEARCH ===================";
    cout<<"\n\n1:search for name."
    <<"\n2:search for aouther."
    <<"\n3:search for explanations."
    <<"\n4:back to main menu.(press numbers)";

    ch=getch();

    if(ch=='1')
    {
    cout<<"\n\nenter exact name:";
    char name[10];
    gets(name);
    name[11]=NULL;

    int d=name[0]-97;
    book *p=parts[d];
    while(p!=NULL && strcmp(p->book_name,name)!=0)
    {
    p=p->next;
    }
    if(p==NULL)
    {
    cout<<"\nnot founded!";
    }
    else
    {
    cout<<"\n\n";
    cout<<"name:";puts(p->book_name);
    cout<<"aouther:";puts(p->aouther);
    cout<<"explain:";puts(p->explain);
    if(p->reserved==1)
    {
    cout<<"RESERVED by:";
    puts(p->user);
    }
    else
    {
    cout<<"NOT RESERVES";
    }
    }//else
    getch();
    }//1
    if(ch=='2')
    {
    cout<<"\n\nenter exact aouther name:";
    char name[11];
    gets(name);
    name[11]=NULL;
    int f=0;

    for(int i=0;i<=23;i++)
    {
    book *p=parts[i];
    while(p!=NULL)
    {
    if(strcmp(p->aouther,name)==0)
    {
    f++;
    cout<<"\n"<<f<<":";
    cout<<"name:";puts(p->book_name);
    cout<<"aouthor:";puts(p->aouther);
    cout<<"explain:";puts(p->explain);
    if(p->reserved==1)
    {
    cout<<"RESERVED BY";
    puts(p->user);
    }
    else
    {
    cout<<"NOT RESERVED";
    }
    }

    p=p->next;
    }//while
    }
    getch();
    }//2
    if(ch=='3')
    {
    cout<<"\n\nenter key(15char):";
    char name[16];
    gets(name);
    name[15]=NULL;
    int f=0;

    for(int i=0;i<=23;i++)
    {
    book *p=parts[i];
    while(p!=NULL)
    {
    char *tokenptr;
    tokenptr=strtok(p->explain," ");
    while(tokenptr!=NULL)
    {
    if(strcmp(tokenptr,name)==0)
    {
    f++;

    cout<<"\n"<<f<<":";
    cout<<"name:";puts(p->book_name);
    cout<<"aouthor:";puts(p->aouther);
    cout<<"explain:";puts(p->explain);
    if(p->reserved==1)
    {
    cout<<"RESERVED BY";
    puts(p->user);
    }
    else
    {
    cout<<"NOT RESERVED";
    }
    }
    tokenptr=strtok(NULL," ");
    }

    p=p->next;
    }//while
    }//for i
    getch();
    }//3

    }

    }
    //===========================
    //===========================
    int main()
    {
    clrscr();

    library l1;
    l1.run_menu();

    return(0);
    }

  13. #13

    نقل قول: کتابخانه با امکان ورود - ویرایش- حذف -به امانت گرفتن و پس دادن کتاب

    BigNumber
    این کد برای جمع کردن 2 عدد خیلی بزرگ (حداکثر 1000 رقمی) نوشته شده.
    کاری که با ماشین حساب معمولی نمیشه انجام داد.


    #include<iostream>
    #include<string.h>
    using namespace std;

    void read_number(char num1[],char num2[]);
    char* add_number(char num1[],char num2[],char num3[]);

    #define SIZE 1000

    int main(){
    char *num1,*num2,*num3;
    num1=new char[SIZE];
    num2=new char[SIZE];
    num3=new char[SIZE];
    int n;//baraye tedad barhaye anjame amale jam.
    cout<<"Chand bar mikhahid amale jam kardane 2 adad ra anjam dahid?";
    cin>>n;
    for(int i=0;i<n;i++){
    read_number(num1,num2);
    add_number(num1,num2,num3);
    cout<<num3<<endl;
    }
    delete []num1;
    delete []num2;
    delete []num3;
    return 0;
    }
    void read_number(char num1[],char num2[]){
    cout<<"2 adad ra vared konid:";
    cin>>num1>>num2;
    }
    char* add_number(char num1[],char num2[],char num3[]){
    int carry=0;//baraye zakhire kardane raghame naghli.
    int digit;//baraye zakhire kardane yek raghame az reshteye avval va dovvom va majmoo'eshan.
    int len1,len2;//baraye zakhire kardane toole reshteha.
    len1=strlen(num1);
    len2=strlen(num2);
    int max,min;//max baraye zakhire kardane toole reshteye bozorgtar va min baraye reshteye koochakter ast.
    max=len1>len2?len1:len2;
    min=len1<len2?len1:len2;
    int i,j,k=0;//i o j shomarandeye halghe va k baraye ta'yine khaneye morede nazar az string hastand.
    if(len1>=len2){
    for(i=max-1,j=min-1;i>=0;i--){
    if(j>=0){
    digit=(int)(num1[i]-48+num2[j]-48+carry);
    if(digit>9){
    digit-=10;
    carry=1;
    }
    else{//digit<=9
    carry=0;
    }
    num3[k]=digit+48;
    k++;
    }
    else{
    digit=(int)(num1[i]-48+carry);
    if(digit>9){
    digit-=10;
    carry=1;
    }
    else{//digit<=9
    carry=0;
    }
    num3[k]=digit+48;
    k++;
    }
    j--;
    }
    }
    else{//len1<len2
    for(i=max-1,j=min-1;i>=0;i--){
    if(j>=0){
    digit=(int)(num2[i]-48+num1[j]-48+carry);
    if(digit>9){
    digit-=10;
    carry=1;
    }
    else{//digit<=9
    carry=0;
    }
    num3[k]=digit+48;
    k++;
    }
    else{
    digit=(int)(num2[i]-48+carry);
    if(digit>9){
    digit-=10;
    carry=1;
    }
    else{//digit<=9
    carry=0;
    }
    num3[k]=digit+48;
    k++;
    }
    j--;
    }
    }
    if(carry==1){
    num3[k]=1+48;//ya num3[k]=49;
    k++;
    num3[k]=NULL;
    }
    num3[k]=NULL;
    char *komaki=new char[strlen(num3)];
    strcpy(komaki,num3);
    for(i=0,j=strlen(num3)-1;num3[i];i++){
    num3[i]=komaki[j];
    j--;
    }
    return num3;
    }
    char* mul_number(char num1[],char num2[],char num3[]){
    int len1,len2;//baraye zakhire kardane toole 2 reshte.
    int carry=0;//baraye zakhire kardane raghame naghliye hasel az zarbe yek ragham dar adad.
    len1=strlen(num1);
    len2=strlen(num2);
    return num3;
    }

  14. #14
    کاربر دائمی آواتار V0RTEX
    تاریخ عضویت
    آذر 1389
    محل زندگی
    kernel
    پست
    106

    نقل قول: کتابخانه با امکان ورود - ویرایش- حذف -به امانت گرفتن و پس دادن کتاب

    این هم یه کد برای این که وقتی از ()system استفاده می کنید پنجره ای نشون نده
    void ExecuteProcess(string PathToExe,bool hidden) 
    {
    STARTUPINFO si;
    PROCESS_INFORMATION pi;
    ZeroMemory(&si,sizeof(si));
    si.cb = sizeof(si);
    if(hidden)
    {
    si.dwFlags= STARTF_USESHOWWINDOW || STARTF_USESTDHANDLES;
    si.wShowWindow=SW_HIDE;
    }
    ZeroMemory(&pi,sizeof(pi));
    if(!CreateProcess( NULL,(LPSTR)PathToExe.c_str(),NULL,NULL,FALSE,0,NU LL,NULL,&si,&pi))
    {
    cout << "CreateProcess failed:" << GetLastError() << endl;
    return;
    }
    WaitForSingleObject( pi.hProcess, INFINITE );
    CloseHandle( pi.hProcess );
    CloseHandle( pi.hThread );
    }

    void System(string cmd)
    {
    string cm="cmd /c \"" + cmd + "\"";
    ExecuteProcess(cm.c_str(),true);
    }

  15. #15

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    برنامه های زیر را می توانید از آدرس برنامه های ساختمان داده ها دانلود کنید. این برنامه ها همگی به زبان سی پلاس پلاس هستند C++‎
    البته اینها بیشتر جنبه ی آموزشی دارند و برای دانشجویان و راهنمایی در پروژه ها ی درسی مناسب هستند

    • پیاده سازی پشته ی چندگانه(مربوط به ساختمان داده ها)
    • برنامه ی تبدیل میانوند به پسوند(مربوط به ساختمان داده ها)
    • پیاده سازی میانوند به پیشوند(مربوط به ساختمان داده ها)
    • پیاده سازی صف معکوس(مربوط به ساختمان داده ها)
    • پیاده سازی صف ساده(مربوط به ساختمان داده ها)

    تمامی برنامه ها به همراه سورس کد هستند.

  16. #16

    رزرو هتل

    این برنامه تقریبا کار رزرو هتل را به صورت ساده انجام می دهد :
    قبل از ورود به برنامه اطلاعات فایل MyFile.Dat را از مسیر C:\ خوانده و کلیه رکوردهای آنرا در یک لیست پیوندی درج کند. بنابراین در طول برنامه کلیه عملیات مربوط به درج، حذف، بروز رسانی و جستجو فقط بر روی لیست صورت می گیرد.
    پس از ورود به برنامه منوی زیر ظاهر شود:
    1-Set Information
    2-Edit Information
    3-Delete Information
    4-Show Bill
    5-Show All
    6-Backup File
    7-Restore File
    8-Exit
    (Choice 1..8) :
    vبا انتخاب گزینه 1 :
    در ابتدا شماره سوئیت از کاربر دریافت می شود:
    1-Number Suite :
    در صورتی که سوئیت مورد نظر به کسی واگذار نشده باشد اطلاعات زیر دریافت می شود ، در غیر اینصورت به صفحه اصلی بر می گردد.

    1-Name And Family :
    2-Start Date (yymmdd) :
    3-Addres :
    (راهنمایی: برای چک کردن سوئیت، یک فیلد وضعیت سوئیت در نظر گرفته، پس از تحویل سوئیت به مشتری آنرا یک نموده و پس از تحویل سوئیت از مشتری آنرا صفر کنید، بنابراین جستجو بر روی نودهایی صورت می گیرد که فیلد وضعیت آنها صفر است.)
    پس از دریافت اطلاعات فوق به صورت اتوماتیک یک کد پذیرش انحصاری به مشتری داده می شود.
    (راهنمایی: برای بدست آوردن شماره ثبت از این روش استفاده کنید: 1 + کد پذیرش آخرین گره)
    vبا انتخاب گزینه 2:
    Reception Code Is:
    کد پذیرش دریافت شده و اطلاعات دریافت شده در قسمت قبل اصلاح شود.
    vبا انتخاب گزینه 3:
    Recepion Code Is:
    کد پذیرش دریافت شده و گره مربوطه از لیست حذف شود.
    vبا انتخاب گزینه 4:
    در این قسمت با استفاده از روابط بین اشیاء و آدرس دهی، مسئول پذیرش، اطلاعات مشتری(با توجه به کد پذیرش مشتری) و تعداد شبهای اقامت در هتل را به حسابدار ارسال کرده و حسابدار پس از دریافت اطلاعات، صورتحساب مشتری را به مسئول پذیرش بر می گرداند و مسئول پذیرش اطلاعات نهایی را نمایش می دهد.
    (راهنمایی : فرض کنید هزینه هر شب اقامت 110 دلار می باشد.)
    vبا انتخاب گزینه 5:
    کلیه اطلاعات ثبت شده نمایش داده شود.
    vبا انتخاب گزینه 6:
    PlZ Input The Name File For New BackUp (*.*) :
    ابتدا نام و مسیر فایل پشتیبان دریافت شده و سپس کلیه اطلاعات لیست پیوندی، در فایل مورد نظر ذخیره می گردد.
    vبا انتخاب گزینه 7:
    PlZ Input The Name File For Restore (*.*) :
    ابتدا نام و مسیر فایل دریافت شده و کلیه اطلاعات فایل در لیست پیوندی کنونی جایگزین می گردد.
    vبا انتخاب گزینه 8:
    کلیه اطلاعات لیست پیوندی در فایل MyFile.Dat ذخیره شده و از برنامه خارج می گردد.
    همانگونه که متوجه شدید در این برنامه لیست پیوندی دوطرفه، فایل، زمان و کلاسها استفاده شده است
    پروژه ضمیمه شده با VS2008 کامپایل می شود
    به دلیل محدودیت حجم ضمیمه مجبور شدم جای دیگه آپلود کنم

    دانلود سورس کد
    آخرین ویرایش به وسیله razavi_university : یک شنبه 27 شهریور 1390 در 21:59 عصر دلیل: اصلاح لینک
    آن لحظه که تنها اعتبار کسی که مساله ای را مطرح کرده است، شما را در اشتباه بودن ایده هایتان قانع کرد،
    آن لحظه،
    لحظه وداع شما با دنیای خلاقیت و پیشرفت خواهد بود. . .

    برنولی

  17. #17

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    سلام دوستان اینم یه برنامه کوچیک برای لینوکس که با استفاده از اون می تونید فایل grub خودتون را ویرایش کنید
    فایل های ضمیمه فایل های ضمیمه

  18. #18

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    اینم کدی که خیلی ها دنبالش می گردند این کد را که به اول برنامه خودتون اضافه کنید برنامه از قسمت application شما در task manager پاک می شه و به قسمت process ها می ره
    این برنامه را چند بار دیگه تو تاپیک های دیگه ای گذاشته بودم اما گفتم اینجا هم بذارم که دم دست باشه

    //compile with visual C++‎ 6


    #include <stdio.h>
    #include <stdlib.h>
    #include <windows.h>

    void main() {
    HWND hWnd;
    AllocConsole();
    hWnd = FindWindowA("ConsoleWindowClass",NULL);
    ShowWindow(hWnd,0);
    }

  19. #19
    کاربر جدید
    تاریخ عضویت
    آبان 1387
    محل زندگی
    اصفهان
    پست
    11

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    پیاده سازی چندتا از توابع کار با رشته مثل strchr,strcat,...
    فایل های ضمیمه فایل های ضمیمه

  20. #20
    کاربر جدید
    تاریخ عضویت
    آبان 1387
    محل زندگی
    اصفهان
    پست
    11

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    اینم از بقیه اش
    فایل های ضمیمه فایل های ضمیمه

  21. #21

    نقل قول: ضرب ماتریس

    یه ضرب ماتریس 2x3 و 4x3 که نتیجش می شه 2x4 نوشتم که استاتیک هست اگر روش کار کنید به راحتی داینامیک میشه فقط باید قوانین مربوط به ضرب ماتریس ها رو توش رعایت کنید ...
    فایل های ضمیمه فایل های ضمیمه

  22. #22
    کاربر دائمی آواتار khafan_bat
    تاریخ عضویت
    دی 1387
    محل زندگی
    منظومه ی شمسی-کره زمین-قاره ی آسیا-ایران-گیلان-لاهیجان
    سن
    34
    پست
    111

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    با سلام و خسته نباشید. یک برنامه گرافیکی با استفاده از کلاس تحت توربو سی پلاس پلاس





    فایل های ضمیمه فایل های ضمیمه

  23. #23
    کاربر دائمی آواتار khafan_bat
    تاریخ عضویت
    دی 1387
    محل زندگی
    منظومه ی شمسی-کره زمین-قاره ی آسیا-ایران-گیلان-لاهیجان
    سن
    34
    پست
    111

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    این برنامه در کنسول متن تابپ شده ی کاربر (حداکثر در 500 حرف) را به باینری (0 و یک) تبدیل کرده و در یک فایل با نام output ذخیره میکند.

    دوستان این برنامه جزو برنامه های آرشیوی منه که قدیم نوشتم. دیگه خوبی , بدی ببخشید. ممکنه یک کوچولو الگوریتم هایش شلخته باشند. ولی در کل خوب کار میکنند. هدف من فقط نوشتن برنامه ها بود.

    فایل های ضمیمه فایل های ضمیمه
    آخرین ویرایش به وسیله khafan_bat : چهارشنبه 01 مهر 1388 در 07:14 صبح

  24. #24
    کاربر دائمی آواتار khafan_bat
    تاریخ عضویت
    دی 1387
    محل زندگی
    منظومه ی شمسی-کره زمین-قاره ی آسیا-ایران-گیلان-لاهیجان
    سن
    34
    پست
    111

    Smile نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    این یک برنامه تحت توربو که تعداد ستون و تعداد ردیف ها + عرض هر واحد جدول رو وارد میکنید و اون یک جدول براتون رسم میکنه. بعد از دانلود باید آدرس پوشه گرافیک رو در سیستم خودتون به جای آدرس داده شده در برنامه بگدارید و برنامه رو کامپایل کنید.
    فایل های ضمیمه فایل های ضمیمه

  25. #25
    کاربر دائمی آواتار behnam-s
    تاریخ عضویت
    مرداد 1388
    محل زندگی
    CPU
    پست
    207

    برنامه گرافیکی دنیای جدولکها

    سلام
    سورس برنامه دنیای جدولکها
    چون مسئله معروفیه زیاد توضیح نمی دم . برنا مه از یک سری جدولک تشکیل میشه که اندازه فضای اونها و تعدادشونو کاربر تعیین می کنه. اونها در 4 جهت حرکت می کنند. عمر دارن. در برخورد با دیواره با احتمالی می میرند. ممکنه دچار جهش شده و در میانه عمر تغییر کنند و اگه دایره زرد رنگ در مرکز اونها باشه امکان تولید مثل داره.
    JADVLAK2.zip
    آخرین ویرایش به وسیله behnam-s : سه شنبه 17 شهریور 1388 در 15:55 عصر

  26. #26
    کاربر دائمی آواتار alihassanabadi
    تاریخ عضویت
    بهمن 1386
    محل زندگی
    Tehran
    پست
    372

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    برنامه زیر کد مربوط به اجرای یک پیانوی کامپیوتری را نشان میدهد. در این برنامه به جای تابع getch() از پورت 60h برای بدست آوردن یک کلید استفاده شده است.
    برای افزایش سرعت وهمچنین به منظور کاهش محاسبات از آرایه دو بعدی
    notes[7][12] استغاده شده است.

    دست هایی که کمک میکنند مقدس تر از لب هایی هستند که دعا میکنند.کورش کبیر
    فایل های ضمیمه فایل های ضمیمه

  27. #27

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    1.برنامه جمع و ضرب و تفریق دو ماتریس 3*3
    2.برنامه رسم یک شکل سه بعدی زیبا
    3.فایل mouse.h برای کار با موس(این فایلو به راحتی نمیتونین پیدا کنید.استادمون برامون فرستاد)
    4.نمونه برنامه کار با موس.(فایل mouse.h رو تو شاخه include باید کپی کنید)این برنامه شبیه برنامه paint میمونه
    فایل های ضمیمه فایل های ضمیمه
    آخرین ویرایش به وسیله masoudlotfi : چهارشنبه 27 آبان 1388 در 12:54 عصر

  28. #28
    کاربر دائمی آواتار khafan_bat
    تاریخ عضویت
    دی 1387
    محل زندگی
    منظومه ی شمسی-کره زمین-قاره ی آسیا-ایران-گیلان-لاهیجان
    سن
    34
    پست
    111

    تشکر

    ممنون دوست عزیز ولی ایکاش مینوشتی که اون کتابخونه ای که استاد شما بهتون داده رو طرف با اسمبلی در کامپایلر C نوشته چون ممکنه خیلی از افراد تازه کار تو این قسمت بیان و از این برنامه ها استفاده کنند و با برخورد با اون کد ها یه کوچولو گیج بشن.! بنابر این هر برنامه ای که میاری فقط یه توضیح یه خطی هم براش بزار . با این حال باز ممنون ! احساس می کنم این این تاپیک یکی از بهترین تاپیک ها داره میشه !

    (لطفا برای حفظ نظم تاپیک به این نوشته ی من پاسخ ندهید و به آپلود برنامه های خود ادامه دهید.)


    آخرین ویرایش به وسیله khafan_bat : چهارشنبه 27 آبان 1388 در 19:10 عصر

  29. #29

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    سلام دوستان
    امروز یه سایت انگلیسی زبان پیدا کردم که نمونه کد های C++‎,c,java,asp,... رو به صورت رایگان در اختیارتون قرار میده.
    البته خوب نیست این کد ها رو کپی کنید و به عنوان پروژه تحویل بدید دانشگاه ، بلکه اونا رو خوب نگاه کنید و سعی کنید از اونا ایده بگیرید.
    این سایت زمینه هر برنامه نوشته شده رو هم مشخص کرده مثلا گرافیک ، الگوریتم ، بازی ، کار با فایل ، محاسباتی و ...

    اینم آدرسش :

    www.happycodings.com

  30. #30

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    1.برنامه ای که با استفاده از منوی انتخاب رنگ تم طرح کشیده شده را عوض می کند و مانند پنجره های ویندوز با زدن دکمه ضربدر قرمز بالای سمت راست از برنامه خارج می شود.
    2.برنامه ای که در هرلحضه موقعیت مکان نما رو چاپ میکنه.برای درک بهتر خود برنامه رو امتحان کنید.
    3.برای اجرای این دو برنامه به فایل mouse.h نیاز دارید که باید اونو تو شاخه include سیستم خود کپی کنید.
    این فایل تو پست های قبلیم هست.
    فایل های ضمیمه فایل های ضمیمه

  31. #31
    کاربر دائمی آواتار khafan_bat
    تاریخ عضویت
    دی 1387
    محل زندگی
    منظومه ی شمسی-کره زمین-قاره ی آسیا-ایران-گیلان-لاهیجان
    سن
    34
    پست
    111

    فیبوناچی - الگوریتم سوم

    خوب من در این تاپیک دو تا الگوریتم برای فیبوناچی گذاشتم . الگوریتم سوم برای این مسئله یه الگوریتم حرفه ای تر هستش و مشکلات الگوریتم دوم (به روش بازگشتی) رو پوشش میده.

    در روش بازگشتی اگه دقت کرده باشید یه سری جمله ها چند بار حساب میشدند و این سرعت محاسبه رو میاره پایین. اما در این روش که از آرایه های پویا استفاده شده جمله ها تو خونه های آرایه ذخیره و هر بار که لازم شد خونده میشن. !

    این برنامه اول کاربر عدد n رو وارد میکنه بعد یه آرایه ی پویا به طول n ساخته میشه و بعدش n رو چاپ میکنه.

    فایل های ضمیمه فایل های ضمیمه
    آخرین ویرایش به وسیله khafan_bat : سه شنبه 03 آذر 1388 در 13:24 عصر

  32. #32

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    سلام
    این برنامه سرعت و زاویه از کاربر میگیره و در حین حرکت پرتابه شکل اون رو هم رسم میکنه
    فایل های ضمیمه فایل های ضمیمه

  33. #33

    Cool نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    اینم یه برنامه آموزشی توپ که یه ساعته و کلی نکته آموزشی توش هست . ازجمله گرافیک.
    نظر دادن یادتون نره
    موفق باشین
    فایل های ضمیمه فایل های ضمیمه
    • نوع فایل: rar Time.rar‏ (105.0 کیلوبایت, 1099 دیدار)

  34. #34
    کاربر جدید آواتار aminipour
    تاریخ عضویت
    آبان 1387
    محل زندگی
    مشهد
    پست
    9

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    سلام تبریک میگم به بچه های این تاپیک در حد خودش خوبه.
    تا حالا فکر کردین چه جوری میشه بدون حقه تکرار این کاراکترها رو چاپ کرد.
    *
    **
    ***
    ****
    *****
    ******
    *******
    ******
    *****
    ****
    ***
    **
    *
    که تعداد بیشترین ستاره(که در خط میانیه)همون مقدار n است که از کاربر میگیره.
    اول یکم فکر کنید.....
    .
    .
    .
    اینم کدش که با C نوشتم:


    #include<conio.h>
    #include<stdio.h>
    void star(unsigned char);
    void newline1(unsigned char);
    void newline2(unsigned char,unsigned char);
    void main()
    {
    unsigned char n;
    clrscr();
    printf("Enter your number:");
    scanf("%d",&n);
    newline1(n);
    newline2(1,n-1);
    getch();
    }//end main--------------------------------------------------------------------
    void newline1(unsigned char n)
    {
    if(n>1)
    newline1(n-1);
    star(n);
    printf("\n");
    }
    void newline2(unsigned char i,unsigned char n)
    {
    if(i<n)
    newline2(i+1,n);
    star(i);
    printf("\n");
    }
    void star(unsigned char n)
    {
    if(n>1)
    star(n-1);
    printf("*");
    }
    آخرین ویرایش به وسیله Nima_NF : پنج شنبه 05 آذر 1388 در 15:56 عصر

  35. #35

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    برنامه ای که بروش بازگشتی عددی از مبنای 10 رو به هر مبنای تبدیل میکنه :


    #include <iostream>
    #include <conio>
    void Base(int n,int x){
    if(n<x)
    cout<<n;
    else{
    Base(n/x,x);
    cout<<n%x;
    }
    }
    //=====================
    int main(){
    int x,n;
    cout<<"Enter a number in decimal :\n";
    cin>>n;
    cout<<"Enter base :\n";
    cin>>x;
    cout<<"------------------------\n";
    Base(n,x);
    getch();
    }






  36. #36

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    برنامه پیدا کردن فاکتوریل یک عدد بروش برنامه نویسی پویا


    #include <iostream>
    #include <conio>
    int main(){
    int n;
    cout<<"Enter a number :\n";
    cin>>n;
    int *a = new int[n+1];
    a[0] = 1;
    for(int i=1;i<=n;i++)
    a[i] = i*a[i-1];
    for(int i=0;i<=n;i++)
    cout<<i<<"! = "<<a[i]<<endl;
    getch();
    }







  37. #37

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    برنامه که بروش بازگشتی تعداد صفرهای سمت راست فاکتوریل یک عدد رو محاسبه میکنه :

    (سوال مسابقات ACM )

    مثلا 1000 فاکتوریل به چند صفر ختم میشود :


    #include <iostream>
    #include <conio>
    #include <math>
    int Fact_zero_count(int n){
    if(n==0)
    return 0;
    else
    return floor(n/5)+Fact_zero_count(n/5);
    }
    //===========================
    int main(){
    int n;
    cout<<"Enter a number :\n";
    cin>>n;
    cout<<n<<"! has "<<Fact_zero_count(n)<<" zero at end . \n";
    getch();
    }






  38. #38
    کاربر دائمی آواتار mahdi87_gh
    تاریخ عضویت
    فروردین 1388
    محل زندگی
    قزوین
    پست
    448

    نمایش روزها بصورت تقویمی

    سلام
    برنامه ای که نوشتم یه تقویم هستش که هم واسه تاریخ شمسی کار میکنه و هم واسه میلادی.
    هم میتونه یک ماه رو کامل نشون بده و هم می تونه nامین هفته سال رو نمایش بده.
    در ضمن همین برنامه چندین تابغ وجود داره:
    تبدیل تاریخ میلادی به شمسی
    تبدیل تاریخ شمسی به میلادی
    پیدا کردن اینکه یه تاریخ مشخص چند شتبه است؟
    امبدوارم برای دوستان مفید واقع شه
    فایل های ضمیمه فایل های ضمیمه

  39. #39
    کاربر دائمی
    تاریخ عضویت
    بهمن 1385
    محل زندگی
    هه‌ورامان
    پست
    220

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    اینم یه برنامه نسبتا خوب در مورد کار با اصول شئ گرایی در ++C هست.
    این برنامه مربوط به پیاده سازی نظریه مجموعه ها به زبان ++C هست که امروز با همکاری دوست خوبم mortezamsp تکمیلش کردیم.
    در این برنامه از سازنده،سازنده کپی،سرباگذاری عملگرهای << و >> و + و - و =+ و = و ^ ،تعریف توابع خارج از کلاس و بعضی موارد دیگر استفاده شده.
    تنها مشکلی که این برنامه می تونه داشته باشه اینه که با حافظه پویا پیاده سازی نشده،من چون فعلا وقت ندارم از دوستان می خوام که این کار رو انجام بدن و اگه کسی انجام نداد خودم یه چند روزه دیگه انجامش میدم.
    امیدوارم مفید واقع بشه.



    #include<iostream.h>
    #include<conio.h>
    #define maxsize 20
    //=================================================
    class Intset
    {
    private:
    int ma[maxsize],topindex;
    public:
    Intset();
    void insert(int);
    Intset operator+=(Intset);
    Intset operator-=(Intset);
    int found(int);
    void print(ostream & o);
    Intset operator+(Intset);
    Intset operator^(Intset);
    Intset operator-(Intset);
    int get(int);
    int card();
    void makeempty();
    friend ostream & operator << (ostream & ,Intset);
    };
    //=================================================
    Intset :: Intset()
    {
    topindex=-1;
    }
    void Intset :: insert(int x)
    {
    if(topindex==maxsize-1)
    cout<<"\n=======\ninsert error : stack is full !\n=======\n";
    else{
    if(!found(x))
    ma[++topindex]=x;

    }
    }

    ostream & operator <<(ostream & o ,Intset a)
    {
    a.print(o);
    return o;
    }
    Intset Intset :: operator+=(Intset b)
    {
    for(int i=0;i<=b.card()-1;i++)
    insert(b.get(i));
    return *this ;
    }
    Intset Intset :: operator-=(Intset b)
    {
    Intset rezualt ;
    for( int i=0 ; i<=topindex ;i++ )
    rezualt.insert( get(i) ) ;
    makeempty() ;
    for( i=0 ;i<=rezualt.topindex ;i++ )
    if( !b.found( rezualt.get(i) ) )
    insert( rezualt.get(i) ) ;
    return rezualt ;
    }

    void Intset :: print(ostream & o)
    {
    if(topindex==-1)
    o<<"Empty";
    else
    {
    o<<"{";
    for(int i=0;i<=topindex;i++)
    o<<ma[i]<<",";
    o<<"}";
    }
    }
    Intset Intset :: operator+(Intset b)
    {
    Intset c;
    for(int i=0;i<=card()-1;i++)
    c.insert(get(i));
    for(i=0;i<=b.card()-1;i++)
    c.insert(b.get(i));
    return c;
    }
    Intset Intset :: operator^(Intset b)
    {
    Intset c;
    for(int i=0;i<=card()-1;i++)
    for(int j=0;j<=b.card()-1;j++)
    if(found(get(i)&&b.found(get(i)) ) )
    c.insert(get(i));
    return c;
    }
    Intset Intset :: operator-(Intset b)
    {
    Intset c;
    for(int i=0;i<=card()-1;i++)
    if(!b.found(get(i)) )
    c.insert(get(i));
    return c;
    }
    int Intset :: get(int i)
    {
    return ma[i];
    }
    int Intset :: card()
    {
    return topindex+1;
    }
    void Intset :: makeempty()
    {
    topindex=-1;
    }
    int Intset :: found(int x)
    {
    int i=( i<topindex? i : topindex );
    for( i=0 ; i<=topindex ;i++ )
    if(ma[i]==x)
    return 1 ;
    return 0 ;
    }


    //=================================================
    int main()
    {
    clrscr();
    Intset a,b1;

    int b;
    cout<<"\n=======Get a{} ";
    for(int i=1;i<=5;i++)
    {
    cout<<"\nEnter number a{"<<i<<"} :";
    cin>>b;
    a.insert(b);
    }
    cout<<"\na{} :"<<a<<endl;

    cout<<"\n=======Get b1{} :";
    for( i=1;i<=3;i++)
    {
    cout<<"\nEnter number b1{"<<i<<"} :";
    cin>>b;
    b1.insert(b);
    }
    cout<<"\nb1{} :"<<b1<<endl;
    Intset c;
    cout<<"\n=======\nnew intset c :"<<c<<endl<<"press any key";
    getch();
    c=b1;
    cout<<"\n=======\nc=b1 ==>c :"<<c<<endl<<"press any key";
    getch();
    c+=a;
    cout<<"\n=======\nc+=a ==>c :"<<c<<endl<<"press any key";
    getch();
    c-=a;
    cout<<"\n=======\nc-=a ==>c :"<<c<<endl<<"press any key";
    getch();
    c=a+b1;
    cout<<"\n=======\nc=a+b1 ==>c :"<<c<<endl<<"press any key";
    getch();

    c=a-b1;
    cout<<"\n=======\nc=a-b1 ==>c :"<<c<<endl<<"press any key";
    getch();

    c=a^b1;
    cout<<"\n=======\nc=a^b1 ==>c :"<<c<<endl<<"press any key";
    getch();


    return 0 ;
    }
    آخرین ویرایش به وسیله qanewaisi : سه شنبه 08 دی 1388 در 22:46 عصر

  40. #40

    نقل قول: مجموعه برنامه های نوشته شده به زبان C و ++C

    تو این برنامه سعی کردم یه چیزی شبیه paint ویندوز بنویسم.
    امکانات اون نداره ولی فک کنم ارزش دیدن داشته باشه

    فایل mouse.h رو در فلدر include ذخیره کنید و project07 رو در bin.
    فایل های ضمیمه فایل های ضمیمه

صفحه 1 از 7 123 ... آخرآخر

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •