صفحه 4 از 8 اولاول ... 23456 ... آخرآخر
نمایش نتایج 121 تا 160 از 320

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

  1. #121

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

    سلام دوستان
    یكی از اساتید عزیز یه برنامه در خواست كرده بود كه بنویسیم ، گفته بود كه یه برنامه دیكشنری بنویسید. من هم نوشتم گفتم حالا كه نوشتم بیام بفرستم كه دیگران هم استفاده كنیم.
    این برنامه از طریق Ado db و با یك دیتابیس access كار می كنه
    اسمش هم گذاشتم Kudos كه یعنی جلال!!!!
    (نگید چرا این قدر علامت تعجب گذاشتم، انهایی كه باید بفهمند می فهمند)
    این فایل باینری : http://kitten2.persiangig.com/Kudos%20Dic-Bin.rar
    و اینم سورس كد به علاوه فایل باینری :
    http://kitten2.persiangig.com/Kudos%20Dic.rar
    این برنامه با ویژوال سی پلاس پلاس 2005 است.
    برای اطلاعات بیشتر به وبلاگ من سر بزنید.

  2. #122

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

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

  3. #123
    کاربر جدید آواتار ashkan_d13
    تاریخ عضویت
    فروردین 1389
    محل زندگی
    کرمانشاه
    سن
    35
    پست
    15
    یه بازی 5 مرحله ای!
    فقط با استفاده از کدهای اسکی
    net, console application. //
    فایل های ضمیمه فایل های ضمیمه
    آخرین ویرایش به وسیله ashkan_d13 : سه شنبه 15 تیر 1389 در 18:18 عصر

  4. #124
    کاربر جدید آواتار ashkan_d13
    تاریخ عضویت
    فروردین 1389
    محل زندگی
    کرمانشاه
    سن
    35
    پست
    15

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

    بازی snake
    عکس های ضمیمه عکس های ضمیمه
    فایل های ضمیمه فایل های ضمیمه
    آخرین ویرایش به وسیله ashkan_d13 : چهارشنبه 20 مرداد 1389 در 09:20 صبح دلیل: افزودن ورژن دوم D:

  5. #125

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

    سلام،
    یک کد برای ترتیب نزولی بر اساس معدل دانشجو

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    <div style="text-align: left;">#include <stdio.h>
    #include <conio.h>
    #include <string.h>
    #define N 4
    main()
     {
        int ave[N],i,j,t;
       char name[N][20],str[20];
       for(i=0;i<N;i++)
       {
           printf("Enter Name[%d]: ",i+1);
          scanf("%s",name[i]);
          printf("Enter Average[%d]: ",i+1);
          scanf("%d",&ave[i]);
       }
       for(j=N;j>0;j--)
       for(i=0;i<j-1;i++)
       {
       if(ave[i]<ave[i+1])
           {
            t=ave[i];
            ave[i]=ave[i+1];
            ave[i+1]=t;
          strcpy(str,name[i]);
          strcpy(name[i],name[i+1]);
          strcpy(name[i+1],str);
          }
       }
       printf("\nSorted name acording to ave:\n");
       for(i=0;i<N;i++)
       {
           printf("%s has average %d \n",name[i],ave[i] );
          }
       getch();
    </div> }

  6. #126

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

    برنامه ی شاگرد اول
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    <div style="text-align: left;">#include <stdio.h>
    #include <conio.h>
     #define N 4
     main()
     {
        int ave[N],i,saveNo=0,max;
       char name[N][20];
       for(i=0;i<N;i++)
       {
           printf("Enter Name[%d]: ",i+1);
          scanf("%s",name[i]);
          printf("Enter Average[%d]: ",i+1);
          scanf("%d",&ave[i]);
       }
       max=ave[0];
       saveNo=0;
       for(i=0;i<N;i++)   {
       if(ave[i]> max)       {
          saveNo=i;
          max=ave[i];
          }
       }
       printf("Best Student=%s with Average=%d",name[saveNo],ave[saveNo]);
       getch(); }
    </div>


  7. #127

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

    یک کد برای برنامه
    همیشه آشنا
    phone book
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    <div style="text-align: right;">
    </div><div style="text-align: left;">#include <stdio.h>
    #include <conio.h>
    #include <string.h>
    FILE *fptr;
    struct info
    {char name[20];
    char number[15];
    }user;
    void meno();
    void gereftan_etelaat();
    void namayesh();
    void jostojou();
    /**************************************************  ***************************/
    int main()
    {
    fptr=fopen("phonbook.txt","a+");
    meno();
    fclose(fptr);
    return 0;
    }
    /**************************************************  ***************************/
    void meno()
    {int c;
    clrscr();
    printf("1- gereftan_etelaat\n2- namayesh\n3- jostojou\n4- khorouj\n");
    printf("\nPlease enter your choice's number:");
    scanf("%d",&c);
    switch(c)
    {
    case 1 :gereftan_etelaat();break;
    case 2 :namayesh(); break;
    case 3 :jostojou();break;
    case 4 :break;/*exit*/ }
    }
    /**************************************************  ***************************/
    void gereftan_etelaat()
    {clrscr();
    textcolor(11);
    cprintf("Please enter the name:");
    scanf("%s",user.name);
    textcolor(11);
    cprintf("Please enter the number:");
    scanf("%s",user.number);
    fprintf(fptr,"%s : %s\n",user.name,user.number);
    clrscr();
    textcolor(10);
    cprintf("The info has been saved.");
    printf("\n");
    textcolor(15);
    cprintf("If you want to go back to the menu press enter.");
    if(getch()=='\r')
    meno();
    }
    /**************************************************  ***************************/
    void namayesh()
    {char c;
    clrscr();
    rewind(fptr);
    while(1)
    {c = fgetc(fptr);
    if(c!=EOF)
    printf("%c",c);
    else break;}
    printf("\n\n\n");
    textcolor(10);
    cprintf("If you want to go back to the menu press enter.");
    if(getch()=='\r')
    meno();
    }
    /**************************************************  ***************************/
    void jostojou()
    {char s[15],m[15],v[15];
    clrscr();
    printf("Please enter the name or number for starting to search:\n");
    scanf("%s",v);
    rewind(fptr);
    while(fscanf(fptr,"%s%s%s",s,m,m)!= EOF)
    if(strcmpi(s,v)==0||strcmpi(m,v)==0)
    {clrscr();
    printf("%s:%s",s,m);}
    printf("\n\n\n");
    textcolor(14);
    cprintf("If you want to go back to the menu press enter.");
    if(getch()=='\r')
    meno();
    }
    /**************************************************  ***************************/
    </div>



  8. #128

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

    این برنامه یه کتابخونه س که اطلاعات کتاب ها به صورت باینری در فایل نوشته میشه. شامل یه منو برای اضافه کردن ، حذف ، ویرایش ، امانت گرفتن و برگشت دادن کتابه. از بارگذاری عملگرها هم استفاده شده.
    فایل های ضمیمه فایل های ضمیمه

  9. #129
    کاربر جدید
    تاریخ عضویت
    تیر 1389
    محل زندگی
    ایران => قزوین
    پست
    14

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

    این هم اولین برنامه درست و حسابی من(یه برنامه دیگه هم دارم که یه عدد میگیره میگه اوله یا مرکب .یکی هم ناقصه که بین دو تا عدد اعداد اول رو پیدا میکنه.بخواید اینا رو هم میذارم)
    (پیدا کردم جفت اعداد صلح آمیز و اعداد کامل)(en.wikipedia.org/wiki/amicable_pairs)

    فایل main.cpp

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    #include <conio.h>
    #include <iostream>
    #include <math.h>
    #include <stdlib.h>
    #include "conticker.h"
    #include "conticker.cpp"
    using namespace std;
    int main(){
        char c='y';
        do{
            int start,end;
            int ai=0,pi=0;
            bool checked=true;
            cout<<"----------------------------------------\n";
            cout<<"Enter a number to begin with  : ";
            cin>>start;
            cout<<"Enter a number to finish with : ";
            cin>>end;
             cout<<"----------------------------------------\n";
            if(start>=end){
                cout<<"The beginning number must be smaller than the ending one.\n";
                continue;}
            else{
       system("cls");
       cout<<"Searching from "<<start<<" to "<<end<<".\n\n";
       if(start==1) start=2;
             long double a[500][2],p[500];
             a[0][0]=0;
             p[0]=0;
             ConTicker::start();
      for (size_t i = 0; i < 200; ++i) {
                    for(int i=start;i<=end;++i){
                        int sum1=1,sum2=1;
                        for(int j=(int)sqrt(i);j>1;--j){
          if(i%j==0){
           sum1+=j;
           sum1+=i/j;
          }
         }
                        for(int j=(int)sqrt(sum1);j>1;--j){
          if(sum1%j==0){
           sum2+=j;
           sum2+=sum1/j;
          }
         }
                        if(sum2==i){
                            if(sum1==i){
                                for(int j=0;p[j]!=0;++j){
                                    if(p[j]==i){
                                        checked=false;
                                        break;}}
                                if(checked){
                                    p[pi]=i;
                                    ++pi;
                                    p[pi]=0;
                                    cout<<"\rI found a perfect number :  "<<i<<"\nPlease wait";}
                                    checked=true;}
                            else{
                                if(sum1<i){
                                    for(int j=0;a[j][0]!=0;++j){
                                        if(a[j][0]==sum1){
                                            checked=false;
                                            break;}}
                                    if(checked){
                                        a[ai][0]=sum1;
                                        a[ai][1]=i;
                                        ++ai;
                                        a[ai][0]=0;
                                        cout<<"\rI found an amicable pair : ("<<sum1<<","<<i<<")\nPlease wait";}
                                        checked=true;}
                                else if(sum1>i ){
                                    for(int j=0;a[j][0]!=0;++j){
                                        if(a[j][0]==i){
                                            checked=false;
                                            break;}}
                                    if(checked){
                                        a[ai][0]=i;
                                        a[ai][1]=sum1;
                                        ++ai;
                                        a[ai][0]=0;
                                        cout<<"\rI found an amicable pair : ("<<i<<","<<sum1<<")\nPlease wait";}
                                        checked=true;}}}
                                        ConTicker::tick();}}
                ConTicker::stop();
                cout<<"\n----------------------------------------\n";
                cout<<"Do you want to continue(y/n)?";
                cin>>c;}}
        while(c=='y');
        return 0;
    }


    فایل conticker.h

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    class ConTicker
    {
    public:
        ConTicker() {}
        static void start();
        static void tick();
        static void stop();
    private:
        static time_t  t;
        static size_t  i;
        static const char* c;
    };


    فایل conticker.cpp


    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    #include <windows.h>
    #include <time.h>
      
    time_t ConTicker::t = 0;
    size_t ConTicker::i = 0;
    void ConTicker::start()
    {
        time(&ConTicker::t);
        i = 0;
    }
    void ConTicker::tick()
    {
        if (ConTicker::t) {
            time_t t;
            time(&t);
            if (0.01 < difftime(t,ConTicker::t)) {
                ConTicker::t = t;
                ConTicker::i = ((ConTicker::i+1)&3);
                if(ConTicker::i!=0){
                    _putch('.');
                }
                else{
                    _cputs("\r              \rPlease wait");
                }
            }
        }
    }
    void ConTicker::stop()
    {
        ConTicker::i = 0;
        ConTicker::t = 0;
        _cputs("\rDone!                 \r\n");
     cout<<"\a";
    }

    این یارو conticker چیز جالب و به درد بخوریه البته کار من نیست من فقط از یه بک اسلش چرخون به please wait و سه تا نقطه تغییرش دادم.
    این برنامه رو تازه کارا حتما بخونن
    امیدوارم خوشتون بیاد
    آخرین ویرایش به وسیله Shyan Javani : یک شنبه 27 تیر 1389 در 01:36 صبح

  10. #130
    کاربر جدید آواتار fmostafa
    تاریخ عضویت
    فروردین 1388
    محل زندگی
    Borazjan
    پست
    2

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

    سلام
    برنامه تبدیل عبارت میانوندی (Infix) به پسوندی (Postfix)
    فایل های ضمیمه فایل های ضمیمه

  11. #131
    کاربر جدید آواتار ashkan_d13
    تاریخ عضویت
    فروردین 1389
    محل زندگی
    کرمانشاه
    سن
    35
    پست
    15

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

    کلاس Huge Integers و محاسبه ی فاکتوریل اعداد بزرگ
    فایل های ضمیمه فایل های ضمیمه

  12. #132

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

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

  13. #133

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

    رسم دو لوزی در کنار هم :


    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    #include <iostream>
    #include <conio>
    void fasele(int n){
    for(int i=1;i<=n;i++)
    cout<<" ";
    return;
    }
    //---------------------
    int main(){
    int n;
    cout<<"Enter n\n";
    cin>>n;
    int a=n,b=n-1,c=n-1;
    for(int i=1;i<=2*n-1;i+=2){
    fasele(a);
     for(int j=1;j<=i;j++)
     cout<<"*";
     fasele(b);
     fasele(c);
     for(int k=1;k<=i;k++){
     
     cout<<"*";}
     cout<<endl;
     a--;
     b--;
     c--;
     }
    int d=2,e=1,f=1;
    for(int i=2*n-3;i>=1;i-=2){
     fasele(d);
     for(int j=1;j<=i;j++)
     cout<<"*";
     fasele(e);
     fasele(f);
     for(int k=1;k<=i;k++)
     cout<<"*";
     cout<<endl;
     e++;
     f++;
     d++;
     }
    cout<<"---------------------------------------------------\n\n";
    cout<<" Designer : Salar Ashgi\n";
     getch();
     }
    عکس های ضمیمه عکس های ضمیمه






  14. #134

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

    محاسبات منطقی رو داده های دودویی : (OR,AND , XOR) با برنامه نویسی شی گراء

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    #include <iostream>
    #include <conio>
    #include <string>
    class logic{
    private:
    char a[200],b[200];
    public:
    logic(char [],char []);
    void OR();
    void AND();
    void XOR();
    };
    logic::logic(char r[],char t[]){
    int x1=strlen(r),x2=strlen(t);
    for(int i=0;i<x1;i++)
    a[i]=r[i];
    for(int j=0;j<x2;j++)
    b[j]=t[j];
    }
    void logic::OR(){
    int f=strlen(a);
    char c[200];
    for(int i=0;i<f;i++){
    if(a[i]=='1' && b[i]=='1')
    c[i]='1';
    else if(a[i]=='0' && b[i]=='0')
    c[i]='0';
    else if(a[i]=='1' && b[i]=='0')
    c[i]='1';
    else if(a[i]=='0' && b[i]=='1')
    c[i]='1';}
    for(int j=0;j<f;j++)
    cout<<c[j];
    }
    void logic::AND(){
    int f=strlen(a);
    char c[200];
    for(int i=0;i<f;i++){
    if(a[i]=='0' && b[i]=='0')
    c[i]='0';
    else if(a[i]=='1' && b[i]=='1')
    c[i]='1';
    else if(a[i]=='1' && b[i]=='0')
    c[i]='0';
    else if(a[i]=='0' && b[i]=='1')
    c[i]='0';}
    for(int j=0;j<f;j++)
    cout<<c[j];
    }
    void logic::XOR(){
    int f=strlen(a);
    char c[200];
    for(int i=0;i<f;i++){
    if(a[i]=='0' && b[i]=='0')
    c[i]='0';
    else if(a[i]=='1' && b[i]=='1')
    c[i]='0';
    else if(a[i]=='0' && b[i]=='1')
    c[i]='1';
    else if(a[i]=='1' && b[i]=='0')
    c[i]='1';}
    for(int j=0;j<f;j++)
    cout<<c[j];
    }
     
    int main(){
    char a[200],b[200];
    cout<<"Enter Two Bit Strings\n";
    cin.getline(a,200);
    cin.getline(b,200);
    cout<<"_________________________________\n";
    logic f(a,b);
    cout<<"OR: ";
    f.OR();
    cout<<endl;
    cout<<"AND: ";
    f.AND();
    cout<<endl;
    cout<<"XOR: ";
    f.XOR();
    getch();
    }






  15. #135

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

    پیدا کردن ورژن سیستم عامل :

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    #include <windows.h>
    #include <iostream>
    #include <dos.h>
    #include <string.h>
    #include <conio>
    int main(void)
     
    {
    OSVERSIONINFO osver;
    osver.dwOSVersionInfoSize = sizeof(osver);
    if (GetVersionEx(&osver))
     
    {
    if (osver.dwPlatformId == VER_PLATFORM_WIN32s)
    cout <<"Win32 ";
    else if (osver.dwPlatformId == VER_PLATFORM_WIN32_WINDOWS)
     
    {
    if (osver.dwMinorVersion == 0 && (strchr(osver.szCSDVersion,'B') == NULL)
    && (strchr(osver.szCSDVersion,'C') == NULL))
    cout <<"Windows 95 ";
    else if (osver.dwMinorVersion == 0 && (strchr(osver.szCSDVersion,'B') != NULL))
    cout <<"Windows 95 OSR 2 ";
    else if (osver.dwMinorVersion == 0 && (strchr(osver.szCSDVersion,'C') != NULL))
    cout <<"Windows 95 OSR 2.5 ";
    else if (osver.dwMinorVersion == 10 && (strchr(osver.szCSDVersion,'A') == NULL))
    cout <<"Windows 98 ";
    else if (osver.dwMinorVersion == 10 && (strchr(osver.szCSDVersion,'A') != NULL))
    cout <<"Windows 98 Second Edition ";
    else if (osver.dwMinorVersion == 90)
    cout <<"Windows Millenium Edition ";
    else
    cout<<"Unknown Windows ";
    }
    else if (osver.dwPlatformId == VER_PLATFORM_WIN32_NT)
    cout <<"Windows NT ";
    cout <<osver.dwMajorVersion<<"."<<osver.dwMinorVersion<  <"."
    <<(osver.dwBuildNumber & 0xffff)<<osver.szCSDVersion<<endl;
    }
    else
     
     
    {
    cout <<"Cannot gain version information."<<endl;
    }
    system("pause");
    getch();
    }


    منبع : http://www.cplusplus.happycodings.co...ts/code19.html






  16. #136

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

    پیدا کردن ورژن سیستم عامل بصورت خیلی ساده تر و کاربردی تر (توسط خودم) :

    1
    2
    3
    4
    5
    6
    7
    8
    #include <iostream>
    #include <conio>
    #include <stdlib>
    int main(){
    system("ver");
    getch();
    }






  17. #137

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

    نقل قول نوشته شده توسط clifford مشاهده تاپیک
    سلام
    کسی برنامه ضرب دو عدد صحیح خیلی بزرگ رو کامل داره؟(هر زبانی می تونه باشه)
    سلام دوست عزیز به این تاپیک مراجعه کن:

    http://www.barnamenevis.org/sh...d.php?t=112354

    https://barnamenevis.org/showth...B2%D8%B1%DA%AF

    https://barnamenevis.org/showth...B2%D8%B1%DA%AF

    موفق باشید

  18. #138

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

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

  19. #139

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

    این هم بازی معروف Chinese Checker که برای درک آرایه ها بسیار مفیده...
    فایل های ضمیمه فایل های ضمیمه

  20. #140

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

    سلام . یه برنامه که هر کاراکتر رو به صورت star رسم میکنه اسمشو گذاشتم startext
    فقط حروفات انگلیسی .



    دانلود

  21. #141

    Cool سورس کد load کردن فایل BMP در ++C

    این سورس کد از سایت GPwiki برداشت شده و آن را در اینجا گذاشتم تا همه برنامه نویسان ++C از آن استفاده کنند.

    این سورس کد فایل های 8 بیت و 24 بیت RGB با پسوند bmp را در ++C بار گذاری می کند.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
    247
    248
    249
    250
    251
    252
    253
    254
    255
    256
    257
    258
    259
    260
    261
    262
    263
    264
    265
    266
    267
    268
    269
    270
    271
    272
    273
    274
    275
    276
    277
    278
    279
    280
    281
    282
    283
    284
    285
    286
    287
    288
    289
    290
    291
    292
    293
    294
    295
    296
    297
    298
    299
    300
    301
    302
    303
    304
    305
    306
    307
    308
    309
    310
    311
    312
    313
    314
    315
    316
    317
    318
    319
    320
    321
    322
    323
    324
    325
    326
    327
    328
    329
    330
    331
    332
    333
    334
    335
    336
    337
    338
    339
    340
    341
    342
    343
    344
    345
    346
    347
    348
    349
    350
    351
    352
    353
    354
    355
    356
    357
    358
    359
    360
    361
    362
    363
    364
    365
    366
    367
    368
    369
    370
    371
    372
    373
    374
    375
    376
    377
    378
    379
    380
    381
    382
    383
    384
    385
    386
    387
    388
    389
    390
    391
    392
    393
    394
    395
    396
    // BMP Loader - Codehead 08/11/04
    //
    #include <iostream>
    #include <fstream>
    #include <memory.h>
      
    #define IMG_OK              0x1
    #define IMG_ERR_NO_FILE     0x2
    #define IMG_ERR_MEM_FAIL    0x4
    #define IMG_ERR_BAD_FORMAT  0x8
    #define IMG_ERR_UNSUPPORTED 0x40
      
    class BMPImg
     {
      public:
       BMPImg();
       ~BMPImg();
       int Load(char* szFilename);
       int GetBPP();
       int GetWidth();
       int GetHeight();
       unsigned char* GetImg();       // Return a pointer to image data
       unsigned char* GetPalette();   // Return a pointer to VGA palette
      
      private:
       unsigned int iWidth,iHeight,iEnc;
       short int iBPP,iPlanes;
       int iImgOffset,iDataSize;
       unsigned char *pImage, *pPalette, *pData;
        
       // Internal workers
       int GetFile(char* szFilename);
       int ReadBmpHeader();
       int LoadBmpRaw();
       int LoadBmpRLE8();
       int LoadBmpPalette();
       void FlipImg(); // Inverts image data, BMP is stored in reverse scanline order
     };
      
      
    BMPImg::BMPImg()
     {
      pImage=pPalette=pData=NULL;
      iWidth=iHeight=iBPP=iPlanes=iEnc=0;
     }
      
      
    BMPImg::~BMPImg()
     {
      if(pImage)
       {
        delete [] pImage;
        pImage=NULL;
       }
      
      if(pPalette)
       {
        delete [] pPalette;
        pPalette=NULL;
       }
      
      if(pData)
       {
        delete [] pData;
        pData=NULL;
       }
     }
      
      
    int BMPImg::Load(char* szFilename)
     {
      int iRet;
      
      // Clear out any existing image and palette
       if(pImage)
        {
         delete [] pImage;
         pImage=NULL;
        }
      
       if(pPalette)
        {
         delete [] pPalette;
         pPalette=NULL;
        }
      
      // Get the file into memory
      iRet=GetFile(szFilename);
      
       if(iRet!=IMG_OK)
        return iRet;
      
      // Process the header
      iRet=ReadBmpHeader();
      
       if(iRet!=IMG_OK)
        return iRet;
      
       if(iBPP<8) // We'll only bother with 8 bit and above
        return IMG_ERR_UNSUPPORTED;
      
      // Get the image data
       switch(iEnc)
        {
         case 0: // Uncompressed
           iRet=LoadBmpRaw(); // 8 / 24 Bit. (24 bit is in BGR order)
          break;
      
         case 1: // RLE 8 (Indexed 256 colour only)
           iRet=LoadBmpRLE8();
          break;
      
         case 2: // RLE 4 (16 Colour indexed, Outdated, not covered here)
          return IMG_ERR_UNSUPPORTED;
      
         case 3: // Bitfields (16/32 bit only, Rare, not covered here)
          return IMG_ERR_UNSUPPORTED;
      
         default:
          return IMG_ERR_UNSUPPORTED;
        }
      
       if(iRet!=IMG_OK)
        return iRet;
      
      // Flip image to correct scanline reversal
      FlipImg();
      
      // Load palette if present
      iRet=LoadBmpPalette();
      
       if(iRet!=IMG_OK)
        return iRet;
      
      // Free the file data
      delete [] pData;
      pData=NULL;
      
      return IMG_OK;
     }
      
      
    int BMPImg::GetFile(char* szFilename)
     {
      using namespace std;
      ifstream fIn;
      unsigned long ulSize;
      
      // Open the specified file
      fIn.open(szFilename,ios::binary);
         
       if(fIn==NULL)
        return IMG_ERR_NO_FILE;
      
      // Get file size
      fIn.seekg(0,ios_base::end);
      ulSize=fIn.tellg();
      fIn.seekg(0,ios_base::beg);
      
      // Allocate some space
      // Check and clear pDat, just in case
       if(pData)
        {
         delete [] pData;
         pData=NULL;
        }
      
      pData=new unsigned char[ulSize];
      
       if(pData==NULL)
        {
         fIn.close();
         return IMG_ERR_MEM_FAIL;
        }
      
      // Read the file into memory
      fIn.read((char*)pData,ulSize);
      
      fIn.close();
      
      return IMG_OK;
     }
      
      
    int BMPImg::ReadBmpHeader()
     {
      int iInfo;
      
       if(pData==NULL)
        return IMG_ERR_NO_FILE;
      
       if(pData[0x0]!='B' || pData[0x1]!='M') // BMP ID Bytes, should be 'BM'
        return IMG_ERR_BAD_FORMAT;
      
      memcpy(&iImgOffset,&pData[0xA],4);   // Offset to image data
        
      memcpy(&iInfo,&pData[0xE],4);        // Info header size, should be 0x28
       if(iInfo!=0x28)
        return IMG_ERR_BAD_FORMAT;
      
      memcpy(&iWidth,&pData[0x12],4);   // Image width
      memcpy(&iHeight,&pData[0x16],4);  // Image height
      memcpy(&iPlanes,&pData[0x1A],2);  // Colour planes
      memcpy(&iBPP,&pData[0x1C],2);     // BPP
      memcpy(&iEnc,&pData[0x1E],4);     // Encoding
      
      iDataSize=(iWidth*iHeight*(iBPP/8)); // Calculate Image Data size
      
      return IMG_OK;
     }
      
      
    int BMPImg::LoadBmpRaw()
     {
       if(pImage)
        {
         delete [] pImage;
         pImage=NULL;
        }
      
      // Allocate space for the image data
      pImage=new unsigned char[iDataSize];
      
       if(pImage==NULL)
        return IMG_ERR_MEM_FAIL;
      
      memcpy(pImage,&pData[iImgOffset],iDataSize);
      
      return IMG_OK;
     }
      
      
    int BMPImg::LoadBmpRLE8()
     {
      unsigned char bOpCode,bVal;
      unsigned char *pSrc;
      int iDcode=1,iCount,iPos,iIndex;
      
      // Allocate space for the image 
       if(pImage)
        delete [] pImage;
      
      pImage=new unsigned char[iDataSize];
      
       if(pImage==NULL)
        return IMG_ERR_MEM_FAIL;
      
      // Get the start of the RLE data
      pSrc=&pData[iImgOffset];
      
      iPos=0;
      iIndex=0;
      
       while(iDcode)
        {
          // Stay on even bytes
          while(iPos%2)
           {
            iPos++;
           }
      
         bOpCode=pSrc[iPos];
         bVal=pSrc[iPos+1];
         iPos+=2;
      
          if(bOpCode>0) // Run mode, Repeat 'bVal' 'OpCode' times
           {
             for(iCount=0;iCount!=bOpCode;iCount++)
              {
               pImage[iIndex]=bVal;
               ++iIndex;
              }
           }
          else // Absolute Mode (Opcode=0), various options
           {
             switch(bVal)
              {
               case 0:  // EOL, no action
                break;
      
               case 1:  // EOF, STOP!
                 iDcode=0;
                break;
      
               case 2:  // Reposition, Never used
                break;
      
               default: // Copy the next 'bVal' bytes directly to the image
                 for(iCount=bVal;iCount!=0;iCount--)
                  {
                   pImage[iIndex]=pSrc[iPos];
                   ++iIndex;
                   ++iPos;
                  }
                break;
              }
      
        }
          if(iIndex>iDataSize) // Stop if image size exceeded.
           iDcode=0;
        }
       
      return IMG_OK;
     }
      
      
    int BMPImg::LoadBmpPalette()
     {
      int iIndex;
      unsigned char *pPalPos, *pDatPos;
       
       if(pPalette)
        {
         delete [] pPalette;
         pPalette=NULL;
        }
      
       if(iBPP>8) // NULL Palette for RGB images
        return IMG_OK;
      
      // Create space for palette
      pPalette=new unsigned char[768];
      
       if(pPalette==NULL)
        return IMG_ERR_MEM_FAIL;
      
      // Set starting position for pointers
      pPalPos=pPalette;
      pDatPos=&pData[0x36];
      
      // Get colour values, skip redundant 4th value
       for(iIndex=0;iIndex!=256;++iIndex)
        {
         pPalPos[0]=pDatPos[2]; // Red
         pPalPos[1]=pDatPos[1]; // Green
         pPalPos[2]=pDatPos[0]; // Blue
      
         pPalPos+=3;
         pDatPos+=4;
        }
      
      return IMG_OK;
     }
      
      
    void BMPImg::FlipImg(void)
     {
      unsigned char bTemp;
      unsigned char *pLine1, *pLine2;
      int iLineLen,iIndex;
      
      iLineLen=iWidth*(iBPP/8);
      pLine1=pImage;
      pLine2=&pImage[iLineLen * (iHeight - 1)];
      
       for( ;pLine1<pLine2;pLine2-=(iLineLen*2))
        {
         for(iIndex=0;iIndex!=iLineLen;pLine1++,pLine2++,iI  ndex++)
          {
           bTemp=*pLine1;
           *pLine1=*pLine2;
           *pLine2=bTemp;      
          }
        }
      
     }
      
      
    int BMPImg::GetBPP()
     {
      return iBPP;
     }
      
      
    int BMPImg::GetWidth()
     {
      return iWidth;
     }
      
      
    int BMPImg::GetHeight()
     {
      return iHeight;
     }
      
      
    unsigned char* BMPImg::GetImg()
     {
      return pImage;
     }
      
      
    unsigned char* BMPImg::GetPalette()
     {
      return pPalette;
     }

  22. #142

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

    این برنامه دانشجویی هست اما برای آموزش کلاس ها و ارث بری و وکتور بسیار مفیده...
    اگر دوستان می بینند خلاف مقررات هست حذفش کنم...
    این برنامه قابلیت اضافه/ویرایش/حذف 100 دانشجو و استاد به همراه گزارش گیری کامل و جستجو داره...
    امیدوارم مفید باشه
    فایل های ضمیمه فایل های ضمیمه

  23. #143
    کاربر جدید آواتار ashkan_d13
    تاریخ عضویت
    فروردین 1389
    محل زندگی
    کرمانشاه
    سن
    35
    پست
    15
    برنامه‌ی n وزیر
    عکس های ضمیمه عکس های ضمیمه
    فایل های ضمیمه فایل های ضمیمه

  24. #144

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

    یه بازی ساده که با فریمورک Qt نوشته شده که تحت سی++ هست:
    کد منبع: http://www.4shared.com/file/12187321...annon-src.html
    کامپایل شده برای ویندوز: http://www.4shared.com/file/12187258...annon-bin.html

    بازیش یه بازی گرافیک دو بعدی هست. یک توپ که از پشت یه مانع شلیک میکنه و گلوله هاش باید به هدفها اثبات کنن. حرکت گلوله ها از نوع بالستیکی هست.
    البته بازیش تمامش از خودم نیست و مثال و تمرین خودآموز Qt بوده، ولی بهش امکانات و تزیینات متعددی اضافه کردم که در قسمت about لیست کردم.

  25. #145
    کاربر دائمی آواتار هم دانشگاهی
    تاریخ عضویت
    شهریور 1389
    محل زندگی
    بیرجند
    پست
    326

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

    سلام دوستان!

    من کد بازی Minesweeper رو نوشتم ( نوشته بودم ) البته میدونم یکم دیر شد
    ولی باز هم به هر حال میزارمش تا همه استفاده کنند!

    البته ناگفته نماند در یک قسمت از کدم از کد ashkan_d13 استفاده کردم!

    Enjoy it NOW
    فایل های ضمیمه فایل های ضمیمه

  26. #146

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

    یک مثال خیلی ساده از کار با API ها :

    1
    2
    3
    4
    5
    #include <windows.h>
    void main(){
    MessageBox(0,"Hello From API","C++‎ API",MB_OK | MB_ICONINFORMATION);
    }


    متاسفانه منبع و مرجع کاملی از لیست API ها وجود ندارد و اکثر برنامه نویسان در اثر تجربه به آنها
    آگاهی پیدا کرده اند .

    ویکی API






  27. #147
    کاربر دائمی آواتار voiceoffox
    تاریخ عضویت
    مهر 1389
    محل زندگی
    مشهد
    پست
    122

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

    این برنامه سن شما رو بر حسب سال و ماه می گیره و میگه چند ثانیه یا چند دقیقه یا چند ساعت یا چند روز یا چند هفته یا چند ماه یا چند ساله !
    البته برنامه ی ساده ایه و در شان شما نیست ولی خوب جالبه و استفاده ازش خالی از لطف نیست !
    فایل های ضمیمه فایل های ضمیمه
    آخرین ویرایش به وسیله voiceoffox : چهارشنبه 19 آبان 1389 در 21:38 عصر

  28. #148
    کاربر دائمی آواتار voiceoffox
    تاریخ عضویت
    مهر 1389
    محل زندگی
    مشهد
    پست
    122

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

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

  29. #149
    کاربر دائمی آواتار voiceoffox
    تاریخ عضویت
    مهر 1389
    محل زندگی
    مشهد
    پست
    122

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

    و این هم بهتون نمی گم چی می کشه !
    فقط بدونین که یک شکل جالب و توپ می کشه !!
    فایل های ضمیمه فایل های ضمیمه

  30. #150
    کاربر دائمی آواتار voiceoffox
    تاریخ عضویت
    مهر 1389
    محل زندگی
    مشهد
    پست
    122

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

    مثل اینکه دیگه کسی نمیخواد برنامه بذاره !
    پس برنامه بعدی رو هم من می ذارم !
    این برنامه یه جورایی همه کارس ! براتون 5 تا کار مختلف انجام میده و خلاصه خیلی جالبه ! نیاز به محیط گرافیکی هم نداره !
    هر تیکه ای ش رو از یجا آوردم و از کد های دوستان هم استفاده کردم اما خودم هم خیلی روش زحمت کشیدم !
    تا بعد خداحافظ !
    فایل های ضمیمه فایل های ضمیمه
    آخرین ویرایش به وسیله voiceoffox : جمعه 21 آبان 1389 در 17:32 عصر دلیل: وجود یک اشکال کوچک در برنامه

  31. #151

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

    برنامه زیر از تابع مستند نشدهی NtQueryInformationProcess استفاده می کنه و نکات جالبی توش هستش خوندنش رو به همه توصیه می کنم
    چون خط به خطش نکته داره
    ورودی: PID یه پروسس هستش

    خروجی : command line همون پروسس


    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    #include <windows.h>
    #include <stdio.h>
     
    typedef NTSTATUS (NTAPI *_NtQueryInformationProcess)(
        HANDLE ProcessHandle,
        DWORD ProcessInformationClass,
        PVOID ProcessInformation,
        DWORD ProcessInformationLength,
        PDWORD ReturnLength
        );
     
    typedef struct _UNICODE_STRING
    {
        USHORT Length;
        USHORT MaximumLength;
        PWSTR Buffer;
    } UNICODE_STRING, *PUNICODE_STRING;
     
    typedef struct _PROCESS_BASIC_INFORMATION
    {
        LONG ExitStatus;
        PVOID PebBaseAddress;
        ULONG_PTR AffinityMask;
        LONG BasePriority;
        ULONG_PTR UniqueProcessId;
        ULONG_PTR ParentProcessId;
    } PROCESS_BASIC_INFORMATION, *PPROCESS_BASIC_INFORMATION;
     
    PVOID GetPebAddress(HANDLE ProcessHandle)
    {
        _NtQueryInformationProcess NtQueryInformationProcess =
            (_NtQueryInformationProcess)GetProcAddress(
            GetModuleHandleA("ntdll.dll"), "NtQueryInformationProcess");
        PROCESS_BASIC_INFORMATION pbi;
     
        NtQueryInformationProcess(ProcessHandle, 0, &pbi, sizeof(pbi), NULL);
     
        return pbi.PebBaseAddress;
    }
     
    int wmain(int argc, WCHAR *argv[])
    {
        int pid;
        HANDLE processHandle;
        PVOID pebAddress;
        PVOID rtlUserProcParamsAddress;
        UNICODE_STRING commandLine;
        WCHAR *commandLineContents;
     
        if (argc < 2)
        {
            printf("Usage: getprocesscommandline [pid]\n");
            return 1;
        }
     
        pid = _wtoi(argv[1]);
     
        if ((processHandle = OpenProcess(
            PROCESS_QUERY_INFORMATION | /* required for NtQueryInformationProcess */
            PROCESS_VM_READ, /* required for ReadProcessMemory */
            FALSE, pid)) == 0)
        {
            printf("Could not open process!\n");
            return GetLastError();
        }
     
        pebAddress = GetPebAddress(processHandle);
     
        /* get the address of ProcessParameters */
        if (!ReadProcessMemory(processHandle, (PCHAR)pebAddress + 0x10,
            &rtlUserProcParamsAddress, sizeof(PVOID), NULL))
        {
            printf("Could not read the address of ProcessParameters!\n");
            return GetLastError();
        }
     
        /* read the CommandLine UNICODE_STRING structure */
        if (!ReadProcessMemory(processHandle, (PCHAR)rtlUserProcParamsAddress + 0x40,
            &commandLine, sizeof(commandLine), NULL))
        {
            printf("Could not read CommandLine!\n");
            return GetLastError();
        }
     
        /* allocate memory to hold the command line */
        commandLineContents = (WCHAR *)malloc(commandLine.Length);
     
        /* read the command line */
        if (!ReadProcessMemory(processHandle, commandLine.Buffer,
            commandLineContents, commandLine.Length, NULL))
        {
            printf("Could not read the command line string!\n");
            return GetLastError();
        }
     
        /* print it */
        /* the length specifier is in characters, but commandLine.Length is in bytes */
        /* a WCHAR is 2 bytes */
        printf("%.*S\n", commandLine.Length / 2, commandLineContents);
        CloseHandle(processHandle);
        free(commandLineContents);
     
        return 0;
    }
    Kernel Mode Developer
    RootKitSMM@Yahoo.com

  32. #152
    کاربر دائمی آواتار voiceoffox
    تاریخ عضویت
    مهر 1389
    محل زندگی
    مشهد
    پست
    122

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

    اسم این برنامه رو گذاشتم MessageMaster !

    این برنامه می تونه به طور کامل استفاده از تابع MessageBox رو به کسایی که اونو یاد ندارن آموزش بده ولی حتی کسایی که یاد دارن هم دانلود کنن و ازش استفاده کنن ! خیلی با حاله ! با هاش می شه هر پیغامی رو که فکر می کنی بسازی !

    به نظر خورم ارزش دانلودو داره !

    هرچند خیلی پیچیده نیست ولی ایده خوبییه ! امیدوارم خوشتون بیاد !

    خداحافظتا بعد !
    فایل های ضمیمه فایل های ضمیمه

  33. #153
    کاربر جدید
    تاریخ عضویت
    اردیبهشت 1387
    محل زندگی
    mazandaran_sari
    پست
    3

    Smile كد برنامه بازي به زبان سي پلاس

    كد برنامه بازي به زبان سي پلاس پلاس
    اين برنامه بازي تانك مي باشد كه با كليد جهت نما سمت راست و چپ براي رفتن به سمت راست صفحه و سمت چپ صفحه مي باشد و همين طور كليد space كه براي تير زدن به سمت بالا مي باشد، اميدوارم كه خوشتان بيايد

    لطفا نظر بدهيد

    با تشكر
    فایل های ضمیمه فایل های ضمیمه

  34. #154
    کاربر دائمی آواتار ژوپیتر
    تاریخ عضویت
    آبان 1389
    محل زندگی
    منظومه شمسی
    پست
    120

    Red face تشخیص Memory Leakage

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

  35. #155
    کاربر تازه وارد آواتار yaseriran
    تاریخ عضویت
    خرداد 1387
    محل زندگی
    زمین
    سن
    39
    پست
    92

    نقل قول: تشخیص Memory Leakage

    درود!

    برنامه ای که ماتریس مجاورت گراف را می سازد.
    توضیح:
    نخست طول آرایه تک بعدی را می دهیم. بعد سطر و ستون ماتریس را می دهیم.
    اعداد(0 یا 1) بالا مثلثی را وارد و بعد برنامه ماتریس مجاورت را می دهد.

    می دونم که خوب توضیح ندادم. ولی برنامه رو اجرا کنید متوجه می شوید...

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    #include <iostream.h>
    #include <conio.h>
    int main(){
    int i,j,k,ar[10],arr[5][5],num,a,b,c;
     
             cout<<"please enter columns number for A matrix[]=";
             cin>>a;
     
              cout<<"please enter columns and rows number for B matrix[][]=";
               cin>>b;
               c=b;
     
     
     
        for(i=1;i<=a;i++)
        {
        cout<<"enter matA["<<i<<"]=";
        cin>>num;
        ar[i]=num;
         }
     
              k=1;
             for(i=1;i<=b;i++)
     
               for(j=1;j<=c;j++)
               {
               if (i==j)
               arr[i][j]=0;
     
                else if(i<j)
               arr[i][j]=arr[j][i]=ar[k++];
     
               }
                 cout<<endl;
               for(i=1;i<=b;i++)
               cout<<"\t"<<"matB["<<i<<"]";
     
     
               for(i=1;i<=b;i++){
                cout<<endl<<"matB["<<i<<"]";
               for(j=1;j<=c;j++)
               cout<<"\t"<<arr[i][j];
               }
     
    getch();
    return 0;
    }



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

  36. #156

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

    یک ماشین حساب ساده که دو عدد صحیح و یک کاراکتر را میگیرد و اگر + بود مجموع ، اگر - تفاضل ، اگر * حاصل ضرب ، اگر / حاصل تقسیم و اگر % بود باقیمانده تقسیم را چاپ میکند .
    ( با استفاده از دستورالعمل switch )
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    #include<iostream.h>
    #include<conio.h>
      int main()
      {
      int d,a;
      float s;
      char ch;
      cout<<"please enter two integer numbers and one operator:";
      cin>>d>>a>>ch;
      switch(ch)
      {
    case '+': s=d+a; break;
    case '-': s=d-a; break;
    case '*': s=d*a; break;
    case '/': s=d/a; break;
    case '%': s=d%a; break;
        }
        cout<<"\n s="<<s;
        getch();
        clrscr();
        return 0 ;
        }

  37. #157
    عددی از ورودی گرفته و با استفاده از یک حلقه while مجموع مربعات اعداد متوالی تا ان عدد را پیدا کند :

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    #include<iostream.h>
    main()
    {
     int s=1,n,sum=0;
     cout<<"please enter a number:";
     cin>>n;
     while(s<=n)
        {
         sum+=s*s;
         s++;
        }
     cout<<"sum="<<sum;
     return 0;
     }
    آخرین ویرایش به وسیله melina_007 : دوشنبه 29 آذر 1389 در 14:48 عصر

  38. #158
    برنامه اجرای بازی سنگ کاغذ قیچی

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    #include<iostream.h>
    #include<conio.h>
    main()
    {
    enum play{s,k,g};
    play p1=s,p2=k,p3=g;
    char f1,f2;
    int m1,m2;
    cout<<"\n please enter S for sang and K for kaghaz and G for gheychi";
    cout<<"\n PLAYER 01:please enter S or K or G:";
    cin>>f1;
    if(f1=='s'||f1=='S')m1=0;
    else if(f1=='k'||f1=='K')m1=1;
    else if(f1=='g'||f1=='G')m1=2;
    cout<<"\n PLAYER 02:please enter S or K or G:";
    cin>>f2;
    if(f1==f2)cout<<"\n error:please try again";
    if(f1=='s'||f2=='S')m2=0;
    else if(f2=='k'||f2=='K')m2=1;
    else if(f2=='g'||f2=='G')m2=2;
    if((m1==p2)&&(m2==p1)) cout<<"\n barande: PLAYER01";
    if((m1==p1)&&(m2==p3)) cout<<"\n barande: PLAYER01";
    if((m1==p3)&&(m2==p2)) cout<<"\n barande: PLAYER01";
    if((m1==p1)&&(m2==p2)) cout<<"\n barande: PLAYER02";
    if((m1==p3)&&(m2==p1)) cout<<"\n barande: PLAYER02";
    if((m1==p2)&&(m2==p3)) cout<<"\n barande: PLAYER02";
    getch();
    clrscr();
    return 0;
    }

  39. #159
    برنامه اجرای بازی سنگ کاغذ قیچی با استفاده از دستور switch !

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    #include<iostream.h>
    #include<conio.h>
    main()
    {
    enum play{s,k,g};
    play p1=s,p2=k,p3=g;
    char f1,f2;
    int m1,m2;
    cout<<"\n please enter S for sang and K for kaghaz and G for gheychi";
    cout<<"\n PLAYER01:please enter S or K or G:";
    cin>>f1;
    switch(f1)
    {
     case's':m1=0;break;
     case'k':m1=1;break;
     case'g':m1=2;break;
    }
    cout<<"\n PLAYER02:please enter S or K or G:";
    cin>>f2;
    if(f1==f2)cout<<"\n error:please try again";
    switch(f2)
     {
      case's':m2=0;break;
      case'k':m2=1;break;
      case'g':m2=2;break;
     }
    if((m1==p2)&&(m2==p1))cout<<"\n barande: PLAYER01";
    if((m1==p1)&&(m2==p3))cout<<"\n barande: PLAYER01";
    if((m1==p3)&&(m2==p2))cout<<"\n barande: PLAYER01";
    if((m1==p1)&&(m2==p2))cout<<"\n barande: PLAYER02";
    if((m1==p3)&&(m2==p1))cout<<"\n barande: PLAYER02";
    if((m1==p2)&&(m2==p3))cout<<"\n barande: PLAYER02";
    getch();
    clrscr();
    return 0;
    }

  40. #160

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

    سلام دوستان منم یه ماشین حساب نوشتم که عبارات ریاضی رو میگیره بدون فاصله و اونا رو بر اساس اولویت عملگر محاسبه و در خروجی مینویسه : (فعلا فقط عملگرهای +و*و/و- و اعداد صحیح میخوام گسترشش بدم تا بتونه sin, cos, log رو هم محاسبه کنه اگه میشه راهنمایی کنید ) توان(^) هم اضافه شد ، پرانتز گذاری رو هم میفهمه :
    ورودی :
    1
    10-9^2*2-81-10
    خروجی :
    1
    -243
    برنامه :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
    247
    248
    249
    250
    251
    252
    253
    254
    255
    256
    257
    258
    259
    260
    261
    262
    263
    264
    265
    266
    267
    268
    269
    270
    // stake solution.cpp : Defines the entry point for the console application.
    //
     
    #include "stdafx.h"
    #include "iostream"
    #include "conio.h"
    using namespace std;
     
    struct node
    {
        char info;
        node *left;
        node *right;
    };
     
    node *getnode()
    {
        node* q;
        q= new struct node;
        return q;
    }
     
    void push(node * &top,char item)
    {
        node *p;
        p=getnode();
        p->info=item;
        p->left=top;
        top->right=p;
        top=p;
        top->right =NULL;
    }
     
    int power(int a1,int a2)
    {
        int x=a1;
        for(int i=1;i<a2;i++)
            a1=a1*x;
        return a1;
    }
    char pop(node * &top)
    {
        char x;
        if(top->left!=NULL)
        {
        node *p;
        p=getnode();
        x =top->info;
        p=top;
        top=top->left;
        delete(p);
        return x;
        }
        else
            return '#';
    }
     
    int _tmain(int argc, _TCHAR* argv[])
    {
        char n1ch[100];
        char n2ch[100];
        char n3ch[100];
        int n3[10];
        for(int u=0;u<10;u++)
            n3[u]=0;
        node *top;
        top=getnode();
        top->left=NULL;
        int i=0,k=0;
        int a1=1,a2=1;
        char ch;
        cout<<"\nplease enter equation : ";
        cin.getline(n1ch,98);
        while(n1ch[i]!=NULL)
        i++;
        int s=0;
        int t=-1;
        int r=-1;
        int y=0;
        int ss=0;
        bool zz=false;
        for(int g=0;g<=i;g++)
        {
            if(n1ch[g]=='(')
                ss++;
            if(n1ch[g]==')')
                ss--;
            if(ss<0)
            {
                zz=true;
                break;
            }
        }
        for(int q=0;q<i;q++)
        {
            if(int(n1ch[q])>=48 && int(n1ch[q])<=57)
            {
                t++;
                r++;
                if(n3[s]!=0)
                    n3[s]=n3[s]*10+(int(n1ch[q])-48);
                else
                    n3[s]=int(n1ch[q])-48;
            }
            else if(n1ch[q]=='(' || n1ch[q]==')')
                y++;
            else
            {
                if(s>1)
                    r=r+s-1;
                n1ch[s+t-r+y]='p';
                t++;
                s++;
                r=0;
            }
        }
        if(s>1)
            r=r+s-1;
        int v=0;
        n1ch[s+t-r+y]='p';
     
        for(int g=0;g<i;g++)
            if(!(int(n1ch[g])>=48 && int(n1ch[g])<=57))
            {
                n3ch[v]=n1ch[g];
                v++;
            }
        while(true)
        {
        if(s==0)
        {
            cout<<"hade aghal 2 adad va 1 amalgar vared konid!";
            break;
        }
        else if(zz==true||ss!=0)
        {
            cout<<"prantez gozari dorost nist ";
            break;
        }
        else
        {
        for(int j=0;j<i;j++)
        {
            if(n3ch[j]=='(')
                push(top,n3ch[j]);
            else if(n3ch[j]=='p')
            {
                n2ch[k]=n3ch[j];
                k++;
            }
            else if(n3ch[j]=='+' || n3ch[j]=='-' || n3ch[j]=='/' || n3ch[j]=='*'|| n3ch[j]=='^')
            {
                while((n3ch[j]=='*' || n3ch[j]=='/') && (top->info=='*' || top->info=='/' || top->info=='^' ))
                {
                n2ch[k]=pop(top);
                k++;
                }
                while((n3ch[j]=='^') && (top->info=='^'))
                {
                n2ch[k]=pop(top);
                k++;
                }
                while((n3ch[j]=='+' || n3ch[j]=='-') && (top->info=='*' || top->info=='/' || top->info=='^' || top->info=='+' || top->info=='-'))
                {
                n2ch[k]=pop(top);
                k++;
                }
                push(top,n3ch[j]);
            }
            else if(n3ch[j]==')')
            {
                while(top->info!='(')
                {
                n2ch[k]=pop(top);
                k++;
                }
                pop(top);
            }   
        }
        while(top->left!=NULL)
        {
            n2ch[k]=pop(top);
            k++;
        }
        //for(int f=0;f<k;f++)
        //    cout<<n2ch[f];
        for(int d=0;d<k;d++)
        {
            if(n2ch[d]=='(')
            {
                for(int f=d;f<k-1;f++)
                    n2ch[f]=n2ch[f+1];
                k--;
            }
        }
        cout<<"\n";
        //for(int f=0;f<k;f++)
        //    cout<<n2ch[f];
        int a=0;
        int h=0;
        while(n2ch[k-1]!='n')
        {
            int z=0;
            int p=0;
            a=0;
            int n4[10];
            while(true)
            {
                if(n2ch[a]=='+' || n2ch[a]=='*' || n2ch[a]=='^' || n2ch[a]=='/' || n2ch[a]=='-')
                    break;
                a++;
            }
            for(h=0;h<a;h++)
            {
                if(n2ch[h]=='p')
                {
                    p=h;
                    z++;
                }
            }
            a1=n3[z-2];
            a2=n3[z-1];
            switch(n2ch[a])
            {
            case '+':n3[z-2]=a1+a2;
                n2ch[p]='0';
                n2ch[a]='n';
                for(int d=z;d<=s;d++)
                    n3[d-1]=n3[d];
                s--;
                break;
            case '-':n3[z-2]=a1-a2;
                n2ch[p]='0';
                n2ch[a]='n';
                for(int d=z;d<=s;d++)
                    n3[d-1]=n3[d];
                s--;
                break;
            case '*':n3[z-2]=a1*a2;
                n2ch[p]='0';
                n2ch[a]='n';
                for(int d=z;d<=s;d++)
                    n3[d-1]=n3[d];
                s--;
                break;
            case '/':n3[z-2]=a1/a2;
                n2ch[p]='0';
                n2ch[a]='n';
                for(int d=z;d<=s;d++)
                    n3[d-1]=n3[d];
                s--;
                break;
            case '^':n3[z-2]=power(a1,a2);
                n2ch[p]='0';
                n2ch[a]='n';
                for(int d=z;d<=s;d++)
                    n3[d-1]=n3[d];
                s--;
                break;
            }
        }
        }
        cout<<"\nAnswer is : ";
        cout<<n3[0];
        break;
        }
        getch();
        return 0;
    }
    آخرین ویرایش به وسیله Arcsinos : دوشنبه 06 دی 1389 در 22:46 عصر

صفحه 4 از 8 اولاول ... 23456 ... آخرآخر

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

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

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