Форум программистов, компьютерный форум CyberForum.ru

Консольное приложение на С++ - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ сессия! (пару примитивных программ) http://www.cyberforum.ru/cpp-beginners/thread416083.html
Дорогие друзья, у меня сейчас завал в универе и не могу сделать пару задач по с++, помогите решить, буду очень благодарен а может и отблагодарю. спасибо кто поможет! Массивы: Вывести на экран все числа заданной последовательности, индексы которых есть числа Фибоначчи. Определить в заданной последовательности целых чисел количество чисел Фибоначчи. Вывести на экран все элементы,...
C++ условия с++ помогите составить правильное условие не проходимости стены змейкой if(next.X < 3 || next.Y < 3 || next.X > 75 || next.Y > 23) return STENA; //ДЕФ СТЕНЫ if(next.X > 3 , next.X < 18 && next.Y == 9) //Aa return STENA; if(next.X > 15 , next.X < 25 && next.Y == 13) //Bc return STENA; if(next.X > 35 , next.X < 50 && next.Y == 13) //Bd http://www.cyberforum.ru/cpp-beginners/thread416076.html
C++ Наследование классов
Собирал программу по частям, подскажите как исправить ошибки. #include <iostream> #include <conio.h> class Vehicle // класс Автомобиль { public: Vehicle(int mass, int speed):Mass(mass), Speed(speed) //поля Масса и Скорость
Вычислить значение выражения C++
Как составить такую функцию?
C++ Подскажите в чем ошибка http://www.cyberforum.ru/cpp-beginners/thread416061.html
Вывести массив из 20 элементов целого типа. Определить каких элементов больше четных или нечетных { int n=0, m=0, A, i; // m-÷åòíûå, n-íå÷åòíûå; for(i=0; i<20; i++) { A=StrToInt(Memo1->Lines->Strings); if(A%2==0) m++; else n++;}
C++ Быстрая сортировка четных по номеру элементов Помогите пожалуйста, никак с кусортом разобраться не могу... Выбором и пузырьковая работают, а вот быстрая не хочет. Нужно отсортировать по убыванию четные по номеру элементы k-ой строки. #include<stdio.h> #include<stdlib.h> #include<math.h> #include<conio.h> int so=0,sp=0; void main(){ clrscr(); подробнее

Показать сообщение отдельно
challengerr
43 / 36 / 2
Регистрация: 30.07.2008
Сообщений: 136
24.12.2011, 06:58     Консольное приложение на С++
Добавить функцию очистки консоли:

C++
1
2
3
4
5
6
7
8
void Clear(HANDLE hConsole){
COORD console_size = GetLargestConsoleWindowSize(hConsole);
int i,j;
for (i=0;i<console_size.X;i++)
for(j=0;j<console_size.Y;j++)
{GotoXY(hConsole,i,j);printf(" ");}
GotoXY(hConsole,0,0);
}
Содержимое функции main обернуть в другую функцию, например так

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
int main(){
hConsole = GetStdHandle(STD_OUTPUT_HANDLE); //получаем дескриптор консоли Clear(hConsole);
new_main(hConsole);
return 0;}
void new_main(HANDLE hConsole){ 
intro();
    int key = 0, count = 0;
        bool Pause=false;
        Game g;
        skorostGame(g);
        STENA_2();
        srand(time(0));
        bool pause = false;
        while(key != 27)
        {
                while(!kbhit()) //ждет пока нажмем
                {
                        if(Pause==true)
                        {
                                Sleep(1); 
                                continue;
                        }
                        
                        switch (Move(g))//движение
                        {
                                
                        case PLUS:
                                ++count;
                                g.pause-=1;
                                SetColor(LightBlue , Black);
                                GotoXY(30,0);cout <<  "Status:" << endl ;
                                GotoXY(20,1); cout << "Gold:" <<count << endl;
                                GotoXY(30,1); cout << "Speed:" <<g.pause<< endl;
                        
                                if (count == 150) //максимальное кол-во набраных очков
                                {
                    SetColor(White , Black);
                    GotoXY(40,30); cout << "You win!!!" << endl; //Вы выиграли
                                        _getch();
                                        return(0);
                                }
                                break;
                                
                        case STENA:
                                
                        case KONEC:
                                GotoXY(40,11); printf("You lose!"); //Вы проиграли, ХА ХА ХА
                                _getch();
                                break;
                        }
                        
                        Sleep(g.pause); //Задержка
                }
        key = _getch();   // кнопки на клаве
                
        if(key=='P'||key=='p')
                        Pause=!Pause;
                        else if(key=='S'||key=='s')
                        AgeStart();
                else if(key=='L'||key=='l')
                        Level();
                else if(key==0||key==224)
                {
                        key=_getch();
                        
                        if(key == 72 && g.nap != DOWN) //72 типа номер кнопки на клаве
                        {
                                g.nap = UP;
                                g.dx = 0;
                                g.dy = -1;
                        }
                        else if(key == 80 && g.nap != UP)
                        {
                                g.nap = DOWN;
                                g.dx = 0;
                                g.dy = 1;
                        }
                        else if(key == 75 && g.nap != RIGHT)
                        {
                                g.nap = LEFT;
                                g.dx = -1;
                                g.dy = 0;
                        }
                        else if(key == 77 && g.nap != LEFT)
                        {
                                g.nap = RIGHT;
                                g.dx = 1;
                                g.dy = 0;
                        }
                }
        }
}

и вызвать заново эту функцию-обертку new_main при конце игры, выполнив предварительно очистку экрана функцией Clear и установку начальных значений данных
 
Текущее время: 03:01. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru