Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Задачи по C/С++

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

Открыть новую тему     Написать ответ в эту тему

last_wish

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Код:
#include <iostream.h>
#include <conio.h>
#include <windows.h>
#define ESC 0x1b  
#define TAB 0x09
 
int nums[3][3]={0}, opred=0;
 
void drawmatrix(int mx,int my)
{
    system("cls");
    HANDLE hnd = GetStdHandle(STD_OUTPUT_HANDLE);
    COORD ps;
    int i,j;
    ps.X=0;
    for(i=0;i<5;i++)
    {
        ps.Y=i;
        SetConsoleCursorPosition(hnd,ps);
        cout << "|" << flush;
    }
    ps.X=6;
    for(i=0;i<5;i++)
    {
        ps.Y=i;
        SetConsoleCursorPosition(hnd,ps);
        cout << "|" << flush;
    }
    for(i=0;i<3;i++)
        for(j=0;j<3;j++)
        {
            ps.X=i*2+1;
            ps.Y=j*2;
            SetConsoleCursorPosition(hnd,ps);
            cout << nums[i][j] << flush;
        }  
    ps.X=8; ps.Y=2;
    SetConsoleCursorPosition(hnd,ps);
    opred=nums[0][0]*(nums[1][1]*nums[2][2]-nums[1][2]*nums[2][1])
         -nums[0][1]*(nums[0][1]*nums[2][2]-nums[0][2]*nums[2][1])
         +nums[0][2]*(nums[0][1]*nums[1][2]-nums[0][2]*nums[1][1]);
    cout << "= " << opred << flush;
    //
    ps.X=(mx-1)*2+1;
    ps.Y=(my-1)*2;
    SetConsoleCursorPosition(hnd,ps);  
}
 
int main()
{
    COORD pos;
    char ch;
    int x=1,y=1;
    drawmatrix(x,y);
    do
    {
        ch=getch();
        if(ch==TAB)
        {
            if(x<3)
                x++;
            else if(y<3)
            {
                x=1; y++;
            }
            else
            {
                x=1; y=1;
            }
        }
        if(ch>='0' && ch<='9')
        {
            nums[x-1][y-1]=(int)(ch-'0');
        }
        drawmatrix(x,y);            
    }while(ch!=ESC);
     
    return 0;
}

Всего записей: 109 | Зарегистр. 26-10-2006 | Отправлено: 18:46 16-02-2007 | Исправлено: last_wish, 19:02 16-02-2007
Открыть новую тему     Написать ответ в эту тему

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Задачи по C/С++


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru