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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 54, средняя оценка - 4.76
Дарья Дмитренко
0 / 0 / 0
Регистрация: 10.02.2011
Сообщений: 44
#1

Как ограничить число знаков после запятой? - C++

14.04.2011, 21:00. Просмотров 8367. Ответов 3
Метки нет (Все метки)

надо ограничить число знаков до 4-х после запятой. В x[i]. вот программа, а вівод x[i] конечно в конце:

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
#include <iostream.h>
#include <conio.h>
#include <stdlib.h>
 
void main()
{
     int colPos, rowPos;
     int i, j, k, razm;
     double max;
     double temp;
     int m_nCols;
     int m_nRows;
     double** array;
     double*  parray;
     unsigned int* ListVar;
     double* x;
     cout<<"введите количество уравнений:\n";
     cin>>razm;
     cout<<"введите расширенную матрицу:\n";
 
     m_nRows=razm;
     m_nCols=m_nRows+1;
     parray=new double[m_nRows*m_nCols];
     array=new double*[m_nRows];
     for (i=0; i<m_nRows; i++)
     {
          *(array+i)=parray+i*m_nCols;
     }
 
     ListVar=new unsigned int[m_nCols-1];
     for (j=0; j<m_nCols-1; j++)
          ListVar[j]=j+1;
 
     x=new double[razm];
 
     for (i=0; i<m_nRows-1; i++)
          x[i]=i+1;
 
     for (i=0; i<razm; i++)
          for (j=0;j<(razm+1); j++)
                cin>>array[i][j];
     for (k=0; k<m_nRows-1; k++)
     {
          colPos=rowPos=k;
          max=array[k][k];
          for (i=k; i<m_nRows; i++)
                for (j=k+1; j<m_nCols-1; j++)
                     if (abs(array[i][j])>max)
                     {
                          max=array[i][j];
                          rowPos=i;
                          colPos=j;
                     }
 
          for (i=0; i<m_nRows; i++)
          {
                temp=array[i][k];
                array[i][k]=array[i][colPos];
                array[i][colPos]=temp;
          }
 
          for (j=0; j<m_nCols; j++)
          {
                temp=array[k][j];
                array[k][j]=array[rowPos][j];
                array[rowPos][j]=temp;
          }
 
          temp=ListVar[k];
          ListVar[k]=ListVar[colPos];
          ListVar[colPos]=temp;
 
 
          for (j=m_nCols-1; j>=0; j--)
          {
                array[k][j]/=array[k][k];
 
          }
          for (j=0; j<m_nCols; j++)
                array[k][j];
          for (i=k+1; i<m_nRows; i++)
                for (j=m_nCols-1; j>=0; j--)
                     array[i][j]-=array[k][j]*array[i][k];
 
             }
 
     double s=0;
     x[m_nRows-1]=array[m_nRows-1][m_nCols-1]/array[m_nRows-1][m_nCols-2];
     for (i=m_nRows-2; i>=0; i--)
     {
          s=0;
          for (k=i+1; k<m_nRows; k++)
                s+=array[i][k]*x[k];
                x[i]=array[i][m_nCols-1]-s;
     }
     cout<<"\nрешение системы:\n";
     for (i=0; i<m_nRows; i++)
          cout<<"X"<<ListVar[i]<<"="<<x[i]<<endl;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.04.2011, 21:00     Как ограничить число знаков после запятой?
Посмотрите здесь:

Как правильно ограничить число знаков после запятой при выводе массива - C++
Доброго времени суток. Проблема в следующем - считается обратная матрица, при выводе необходимо ограничить число символов после...

Как округлить в С++ вещественное число до 2 знаков после запятой? - C++
Ну собсно вопрос в теме. заранее спасибо))

Число знаков после запятой - C++
Никогда не задумывался, но можно-ли ограничить число знаков во флоате, не для вывода, а для рассчетов?

Дано вещественное число, проверить является ли это число симметричным относительно положения точки до двух знаков после запятой. - C++
Только начинаю программировать на с/с++ и столкнулась с логическими выражениями, простейшие задачи могу решить а в эту никак не могу...

Как вывести double до 2 знаков после запятой? - C++
Нужно вывести число до 2 знаков после запятой. Попробовал так: 1) round(a*100)/100; 2) out.precision(2); out&lt;&lt;a; Мне...

Как отображать у double больше знаков после запятой? - C++
Что-то забыл как это сделать :(

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Manjak
269 / 175 / 7
Регистрация: 12.03.2010
Сообщений: 494
14.04.2011, 22:20     Как ограничить число знаков после запятой? #2
C++
1
2
3
    double a = 0.1234567890;
 
    cout << fixed << setprecision(4) << a << endl;
Байт
Эксперт C
15841 / 10168 / 1522
Регистрация: 24.12.2010
Сообщений: 19,171
15.04.2011, 09:56     Как ограничить число знаков после запятой? #3
Или
C
1
printf("X[%d]=%10.4f\n", ListVar[i], x[i]);
Но это уже будет чистый Си
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.04.2011, 10:00     Как ограничить число знаков после запятой?
Еще ссылки по теме:

Как в языке С++ вывести значение изменения с точностью k знаков после запятой? - C++
Как в языке С + + вывести значение изменения с точностью k знаков после запятой?

Вывести n знаков после запятой - C++
Всем привет, не знаю как через cout вывести 8 знаков после запятой. Заранее спасибо

Вывод n знаков после запятой - C++
Как это сделать?

Количество знаков после запятой - C++
После запятой нужно всешжа показывать определенные число знаков, например шесть: 263.000000 Иными словами, даже если там нули ...

Количество знаков после запятой - C++
#include &lt;iostream&gt; #include &lt;iomanip&gt; using namespace std; int main() { float g = 10.53446; printf(&quot;%.4f\n&quot;, g); ...

Фиксирование количества знаков после запятой - C++
Здравствуйте! Мне надо, что функция &quot;q&quot; выводила в консоль число с фиксированной запятой, с количеством знаков после запятой, равным 4. Как...


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

Или воспользуйтесь поиском по форуму:
kravam
быдлокодер
1693 / 880 / 44
Регистрация: 04.06.2008
Сообщений: 5,438
15.04.2011, 10:00     Как ограничить число знаков после запятой? #4
C++
1
2
3
4
5
6
#include <stdio.h>
int main(){
     double a = 0.1234567890;
    printf ("%.4f", a);
    getchar();
}
Давай уж учиться начинай, что ли.
Yandex
Объявления
15.04.2011, 10:00     Как ограничить число знаков после запятой?
Ответ Создать тему
Опции темы

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