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

Как добавить нули - C++

Восстановить пароль Регистрация
 
Jurlique
0 / 0 / 0
Регистрация: 13.11.2013
Сообщений: 46
11.12.2013, 02:09     Как добавить нули #1
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
#include <iostream>
#include<iomanip>
 
using namespace std;
 
template <class SORT> void myclass(SORT **a, const int n, int count);
 
int main()
 
{
 
    //Задаем размерность квадратной матрицы
 
    int n, i, j;
    cin >> n;
 
 
    //Вводим массивы
 
    ////////////////////////////////////mas1
 
    int **mas1 = new int *[n];
    for (i = 0; i < n; i++)
        mas1[i] = new int[n];
 
    for (i = 0; i < n; i++)
        for (j = 0; j < n; j++)
            cin >> mas1[i][j];
 
    //Число на которое осуществляется сдвиг элементов mas1
 
    int k1;
    cin >> k1;
    myclass(mas1, n, k1);
 
    ////////////////////////////////////mas2
 
    float **mas2 = new float *[n];
    for (i = 0; i < n; i++)
        mas2[i] = new float[n];
 
    for (i = 0; i < n; i++)
        for (j = 0; j < n; j++)
            cin >> mas2[i][j];
 
    //Число на которое осуществляется сдвиг элементов mas2
 
    int k2;
    cin >> k2;
    myclass(mas2, n, k2);
 
    ////////////////////////////////////mas3
 
    double **mas3 = new double *[n];
    for (i = 0; i < n; i++)
        mas3[i] = new double[n];
 
    for (i = 0; i < n; i++)
        for (j = 0; j < n; j++)
            cin >> mas3[i][j];
 
    //Число на которое осуществляется сдвиг элементов mas3
 
    int k3;
    cin >> k3;
    myclass(mas3, n, k3);
 
 
    /////////////////Выводим матрицу
 
    ////////////////////////////////////mas1
 
    for (i = 0; i < n; i++){
 
        for (int j = 0; j < n; j++)
            cout << mas1[i][j] << " ";
        cout << '\n';
 
    }
 
    ////////////////////////////////////mas2
 
    for (i = 0; i < n; i++){
 
        for (int j = 0; j < n; j++)
            cout << setprecision(3) << mas2[i][j] << " ";
        cout << '\n';
 
    }
 
    ////////////////////////////////////mas3    
 
    for (i = 0; i < n; i++){
 
        for (int j = 0; j < n; j++)
            cout << setprecision(5) << mas3[i][j] << " ";
        cout << '\n';
 
    }
 
    return 0;
 
}
 
 
template <class SORT> void myclass(SORT** a, const int n, int count)
 
{
 
    int i, j, g;
    SORT temp1, temp2, temp3;
    for (i = 0; i < n / 2; i++){
 
        for (int x = count; x > 0; x--){
 
            for (j = i, temp1 = a[i][j]; j < n - 1 - i; j++){
 
                temp2 = a[i][j + 1];
                a[i][j + 1] = temp1;
                temp1 = temp2;
 
            }
 
            for (g = i + 1; g < n - i; g++){
 
                temp3 = temp1;
                temp1 = a[g][j];
                a[g][j] = temp3;
 
            }
 
            for (j--, g--; j >= i; j--){
 
                temp3 = temp1;
                temp1 = a[g][j];
                a[g][j] = temp3;
 
            }
 
            for (j++, g--; g >= i; g--){
 
                temp3 = temp1;
                temp1 = a[g][j];
                a[g][j] = temp3;
 
            }
        }
    }
}

Входные данные:
5
2 -6 1 7 -7
9 8 6 0 9
-6 0 0 -4 0
3 5 -7 4 2
1 -2 3 4 1
3
1.849 -3 0.01 2 0
-0.05 9 2 -1.555 -0.3
0 0 0 10 0
1 -3.33 -5 0 0
2 9.1 55 4.2344 17.0002
1
0.1234 7.602 8.54 5.5555 8
0 0 1.99 2 3.909
-0.02207 0 -1 0 10
-0.55555 0 1 1 3.33
-1 0 -5 0 0
0

Мои выходные данные:
3 -6 9 2 -6
1 -7 5 0 1
-2 4 0 8 7
3 -4 0 6 -7
4 1 2 0 9
-0.05 1.849 -3 0.01 2
0 0 9 2 0
1 -3.33 0 -1.555 -0.3
2 -5 0 10 0
9.1 55 4.234 17 0
0.1234 7.602 8.54 5.556 8
0 0 1.99 2 3.909
-0.02207 0 -1 0 10
-0.5555 0 1 1 3.33
-1 0 -5 0 0

Верный результат:
3 -6 9 2 -6
1 -7 5 0 1
-2 4 0 8 7
3 -4 0 6 -7
4 1 2 0 9
-0.05 1.85 -3.00 0.01 2.00
0.00 0.00 9.00 2.00 0.00
1.00 -3.33 0.00 -1.55 -0.30
2.00 -5.00 0.00 10.00 0.00
9.10 55.00 4.23 17.00 0.00
0.1234 7.6020 8.5400 5.5555 8.0000
0.0000 0.0000 1.9900 2.0000 3.9090
-0.0221 0.0000 -1.0000 0.0000 10.0000
-0.5555 0.0000 1.0000 1.0000 3.3300
-1.0000 0.0000 -5.0000 0.0000 0.0000

Как добавить эти нули, после запятой?

Я пробовал через "setprecision" но это не помогло.

Добавлено через 14 минут
А все разобрался надо было написать так
C++
1
2
cout << fixed << setprecision(2) << mas2[i][j] << " ";
            cout << fixed << setprecision(4) << mas3[i][j] << " ";
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.12.2013, 02:09     Как добавить нули
Посмотрите здесь:

C++ [C++]Как проверить что в квадратной матрице все нули кроме главной диагонали...
C++ как убрать нули с вещественого числа
C++ Как вывести после запятой 3 символа включая нули
Как удалить лидирующие нули? C++
C++ как переделать массив что бы не было его остановки и как добавить индекс
Как убрать из одномерного массива нули, и всё последующие за нулями цифры сдвинуть? C++
Как преобразовать файл в биты (в нули и единицы), чтобы потом можно было его зашифровать в код Грея? C++
C++ Как вывести матрицу в которой наибольшее число строк, содержащих одни нули?

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 17:31. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru