Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
KostyaKulakov
Заблокирован
1

выравнивание при печати

15.08.2012, 19:18. Просмотров 451. Ответов 2
Метки нет (Все метки)

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
#include <ctime>
#include <iostream>
#include <Windows.h>
#include <conio.h>
using namespace std;
 
void print (int numbers[], unsigned const int size);
 
int main()
{
    unsigned const int size = 15;
 
    int numbers[size+2];
 
    srand(time(0));
    
    bool result = true;
 
    int Temp=0;
    int Temp1=15;
    int Temp2=0;
 
    int random;
    //generic
 
    for(int i=0; i < size; i++)
    {
        cout << "Please wait: " << size-i << " secund" << endl;
        random = rand()%size+1;
        result = true;
 
        for (int k=0; k < i+1; k++)
        {
            if(numbers[k] == random)
            {
                i--;
                result = false;
                system("cls");
            }
        }
        if(result == true)
        {
        numbers[i] = random;
 
        Sleep(1000);
 
        system("cls");
        }
    }
 
    system("cls");
 
    numbers[size] = '\0';
 
    print (numbers, size);
 
    while(true)
    {
        cout << "Press a key" << endl;
 
        int key = _getch();
    
        if (key == 224)
        {
            int code = _getch();
        
            switch (code)
            {
                case 75:
                    system("cls");
                    cout << "Arrow Left" << endl;
                    Temp = numbers[Temp1-1];
                    numbers[Temp1-1] = '\0';
                    numbers[Temp1] = Temp;
                    Temp1 -= 1;
                    print (numbers, size);
                
                    break;
                case 72:
                    system("cls");
                    cout << "Arrow Up" << endl;
                    Temp = numbers[Temp1-4];
                    numbers[Temp1-4] = '\0';
                    numbers[Temp1] = Temp;
                    Temp1 -= 4;
                    print (numbers, size);
                    break;
                case 77:
                    system("cls");
                    cout << "Arrow Right" << endl;
                    Temp = numbers[Temp1+1];
                    numbers[Temp1+1] = '\0';
                    numbers[Temp1] = Temp;
                    Temp1 += 1;
                    print (numbers, size);
                    break;
                case 80:
                    system("cls");
                    cout << "Arrow Down" << endl;
                    Temp = numbers[Temp1+4];
                    numbers[Temp1+4] = '\0';
                    numbers[Temp1] = Temp;
                    Temp1 += 4;
                    print (numbers, size);
                    break;
                default:
                    cout << "Not an arrow key" << endl;
            }
        }
    }
 
}
 
void print(int numbers[], unsigned const int size)
{
    int shift=0;
 
    for(int i=0; i < size+1; i++)
    {
        cout << "[" << numbers[i] << "]" << ' ';
        shift++;
        
        if(shift == 4)
        {
        cout << endl;
        shift = 0;
        }
    }
}
нужно чтобы функция print выводило всё красиво. а не криво накась незнаю как сделать

Добавлено через 12 минут
всё сделал можно удалять
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.08.2012, 19:18
Ответы с готовыми решениями:

Выравнивание столбцов при выводе матрицы
Помогите пожалуйста, выровнять столбцы в матрице. Что бы цифры были друг под...

Выравнивание компонентов при изменении размеров главного окна
Посоветуйте, как лучше создавать интерфейс пользователя, чтобы при изменении...

Выравнивание при динамическом выделении памяти под массив
Добрый вечер. Для того, чтобы выделить память под массив динамически и...

Сортировка в структуре - зависание при печати
Уважаемые! Помогите! Как доходит до несортированного списка - не печатает а...

Составить программу вычисления и печати таблицы значений функции при заданных значениях параметров
Составить программу вычисления и печати таблицы значений функции при заданных...

2
nexen
15.08.2012, 19:21
  #2

Не по теме:

Люди, пожалуйста, если вы "допираете" до решения своей проблемы, то отпишитесь хотя бы, как вы её решили. Часто бывает такое, что, нахожу тему с "моей" проблемой, а там оказывается, что автор сам решил проблему, но не отписал, как он её решил. Обидно выходит, правда ;<

0
KostyaKulakov
Заблокирован
15.08.2012, 19:22  [ТС] 3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
void print(int numbers[], unsigned const int size)
{
    int shift=0;
 
    for(int i=0; i < size+1; i++)
    {
        if(numbers[i] < 10)
            cout << " " << setw(2) << setfill(' ') << "[ " << numbers[i] << "]";
 
        else
            cout << setw(2) << setfill(' ') << "[" << numbers[i] << "]";
 
        shift++;
        
        if(shift == 4)
        {
        cout << endl;
        shift = 0;
        }
    }
}
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.08.2012, 19:22

Составить программу вычисления и печати таблицы значений функции при заданных значениях параметров
Составить программу вычисления и печати таблицы значений функции при заданных...

Выравнивание
Насколько я понимаю разрядность системы определяет размер машинного слова....

Выравнивание
Почему не происходит выравнивание текста по правому края? int main() { ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru