نمایش نتایج 1 تا 2 از 2

نام تاپیک: آگاهی و کمک برای همه

  1. #1

    Exclamation آگاهی و کمک برای همه

    کسی میتونه اعداد رو به صورت دستی ندید اعدادی که زیر با قرمز مشخص میکنم ممنون
    برنامه ای بنویسید ماتریس زیر (عکس) را چاپ کرده سپس 3 عدد a , b , c را بگیرد. سپس حلقه ی اول .(a) خانه به صورت ساعتگر بچرخاند . حلقه ی دوم را(b) و خانه پادساعتگر بچرخد و حلقه ی سوم (C) خانه ساعتگر بچرخد.
    به شکل زیر :

    #include <iostream.h>
    #include <conio.h>
    #include <stdio.h>
    #include <dos.h>
    //-------------------------------------
    int MoveMap [6*6];
    int FindMoveMap(int level)
    {
    int row=level, col=level;
    int way[]={ 1, 0, 0, 1, -1, 0, 0, -1};
    int c=0;
    for( int i=0; i<4; i++ )
    for( int j=level; j<(6-level-1); j++ )
    {
    MoveMap[C++‎] = row*6+col;
    col += way[i*2+0];
    row += way[i*2+1];
    }
    return c;
    }
    //-------------------------------------
    void ChnageMatrix (int *movemap, int count, int *matrix)
    {
    int tmp, CurIndex, PrevIndex;
    CurIndex = movemap[count-1];
    tmp = matrix[CurIndex];
    for(int j=count-1; j>0; j-- ){
    CurIndex = movemap[ j ];
    PrevIndex = movemap[ j-1 ];
    matrix [ CurIndex ] = matrix [ PrevIndex ];
    }
    CurIndex = movemap[0];
    matrix [CurIndex] = tmp;
    }
    //-------------------------------------
    void Put2Screen(int x, int y, char *str, int *matrix)
    {
    gotoxy(x, y);
    cout<<str;
    for( int j=0; j<6; j++){
    gotoxy(x, y+j+1);
    for( int i=0; i<6; i++)
    cout<<" "<<matrix[j*6+i];
    }
    }
    //-------------------------------------
    int main()
    {
    int Matrix [6*6] ={
    1, 3, 4, 5, 7, 6,
    3, 1, 2, 5, 1, 9,
    5, 1, 4, 2, 3, 7,
    8, 2, 4, 9, 1, 6,
    2, 9, 3, 5, 7, 9,
    1, 3, 9, 8, 7, 6
    };
    int count, x=10, y=10, RotateCount[3];
    clrscr();
    cout<<"\n tdkhakpur..";
    cout<<"\nenter a >"; cin>>RotateCount[0];
    cout<<"\nenter b >"; cin>>RotateCount[1];
    cout<<"\nenter c >"; cin>>RotateCount[2];
    // put befor changed matrix in screen
    Put2Screen(x, y, "befor change..", Matrix );
    for( int i=0; i<(6/2+6%2); i++ )
    for( int j=0; j<RotateCount[i]; j++ )
    {
    count = FindMoveMap(i) ;
    if( count>0 )
    ChnageMatrix (MoveMap, count, Matrix );
    delay(1000);
    Put2Screen(x+30, y, "changed matrix..", Matrix );
    }
    cout<<"\n";
    return 0;
    }

  2. #2
    کاربر دائمی
    تاریخ عضویت
    مهر 1388
    محل زندگی
    شهرمون
    پست
    171

    نقل قول: آگاهی و کمک برای همه

    سلام چه برنامه باحالي؟
    خصوصا براي من كه تو ارايه ها مشكل دارم
    دوست دارم يادش بگيرم
    كسي ميتونه اين برنامه رو با cبنويسه؟منcppبلد نيستم

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

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