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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 5.00
takewa
10 / 7 / 1
Регистрация: 15.08.2010
Сообщений: 372
#1

float double int - C++

14.11.2012, 22:07. Просмотров 1135. Ответов 12
Метки нет (Все метки)

Доброй ночи, препод совсем запарил, то ему не так, то ему не эдак.
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
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
// 8.2.cpp: определяет точку входа для консольного приложения.
//
 
#include "stdafx.h"
#include <iostream>
#include <iterator>
#include <algorithm>
#include <cmath>
 
 
template <class T>  T sgl(T matrs[][10], int n, T matr[][10])
{
matrs[0][0] = (
              matr[  0  ][  1  ]
            + matr[  1  ][  0  ]
            + matr[  1  ][  1  ]
         ) / 3;
   matrs[0][n - 1] = (
              matr[  0  ][n - 2]
            + matr[  1  ][n - 1]
            + matr[  1  ][n - 2]
         ) / 3;
   matrs[n - 1][0] = (
              matr[n - 2][  0  ]
            + matr[n - 1][  1  ]
            + matr[n - 2][  1  ]
         ) / 3;
   matrs[n - 1][n - 1] = (
              matr[n - 2][n - 1]
            + matr[n - 1][n - 2]
            + matr[n - 2][n - 2]
         ) /3;
   
   for (int i = 1; i + 1 != n; ++i) {
      matrs[0][i] = (
                 matr[  0  ][i - 1]
               + matr[  0  ][i + 1]
               + matr[  1  ][  i  ]
               + matr[  1  ][i - 1]
               + matr[  1  ][i + 1]
            ) / 5;
      matrs[n - 1][i] = (
                 matr[n - 1][i - 1]
               + matr[n - 1][i + 1]
               + matr[n - 2][  i  ]
               + matr[n - 2][i - 1]
               + matr[n - 2][i + 1]
            ) / 5;
      matrs[i][0] = (
                 matr[i - 1][  0  ]
               + matr[i + 1][  0  ]
               + matr[  i  ][  1  ]
               + matr[i - 1][  1  ]
               + matr[i + 1][  1  ]
            ) / 5;
      matrs[i][n - 1] = (
                 matr[i - 1][n - 1]
               + matr[i + 1][n - 1]
               + matr[  i  ][n - 2]
               + matr[i - 1][n - 2]
               + matr[i + 1][n - 2]
            ) / 5;
      
      for (int j = 1; j + 1 != n; ++j) {
         matrs[i][j] = (
                    matr[i - 1][  j  ]
                  + matr[i - 1][j - 1]
                  + matr[i - 1][j + 1]
                  + matr[  i  ][j - 1]
                  + matr[  i  ][j + 1]
                  + matr[i + 1][  j  ]
                  + matr[i + 1][j - 1]
                  + matr[i + 1][j + 1]
               ) / 8;
      }
   }
return 0;}
 
template <class T>  T summ_up(T matrix[][10], std::size_t n) {
   double accumulator = 0.;
   
   for (std::size_t i = 1; i != n; ++i) {
      for (std::size_t j = 0; j != i; ++j) {
         accumulator += std::abs(matrix[i][j]);
      }
   }
   
   return accumulator;
}
 
 
int main() {
    std::cout<<"Work with float\n\n\t\t\tVvedite razmernost` matricu  "<< std::endl;
   double array[10][10] = {
     {-3.2  ,-2.3  , 0,  -4.3 ,  0 ,  0,  -1.3 , -1.3  -2.3  , 0.2 },
        {-4.3 , -4.3,  -3.3 , -2.3,  -3.3,  -3.3,  -4.3 , -2.3, -2.3,  -3.3 },
        {-3.3 ,  0,  -2.3 , -1.3 , -2.3 , -2.3 , -3.3 , -3.3 , -1.3 , -4.3 },
        {-2.12 , -3.12,  -3.12,  -1.12 ,  0 , -2.12,  -2.12 ,  0 , -4.12  , 0 },
        {-1.12,  -3.12,  -2.12,  -1.12 ,-1.12 ,  0,  -3.12,  -3.12 , -1.12,  -1.12 },
        {-2.23 ,  0.23  ,-2.23 , -2.23  -2.23,   0,  -1.23,  -3.23,   0 , -1.23  },
        {-3.23,  -4.23 , -4.23,  -2.23 , -1.23 , -3.23 , -4.23 , -2.23,   0,  -1.23 },
        {-3.2 , -4.4 , -4.7,   0,  -4.22,  -4.32,  -3.12,  -3.657,  -1.654,  -1.324},
        {0 , -1.232,   0.232  , 0.765 , -3.123,  -4.123 , -3.444,  -3.33,  -3.876,  -1.12},
        {0.65 ,  0,  -3.65,  -1.222 , -2.12 , -1.22,  -1.65 , -2.6,   0  ,-3.22}
   };
   double matrs[10][10];
   
   sgl(array, 10, matr);
   
   for (int i = 0; i != 10; ++i) {
      std::copy(&matrs[i][0], &matrs[i][0] + 10, std::ostream_iterator<double>(std::cout << std::fixed, "\t"));
      std::cout << std::endl;
   }
   
   std::cout <<"summa modulei sglajennoi matrici: "<< summ_up(matrs, 10) << std::endl;
   system("pause");
    system("cls");
    system("color 3");
    std::cout<<"Work with float\n\n\t\t\tVvedite razmernost` matricu  "<< std::endl;
    int array2[10][10] = {
     {-3  ,-2  , 0,  -4 ,  0 ,  0,  -1 , -1,  -2  , 0 },
        {-4 , -4,  -3 , -2,  -3,  -3,  -4 , -2 , -2,  -3 },
        {-3 ,  0,  -2 , -1 , -2 , -2 , -3 , -3 , -1 , -4 },
        {-2 , -3,  -3,  -1 ,  0 , -2,  -2 ,  0 , -4  , 0 },
        {-1,  -3,  -2,  -1 ,-1 ,  0,  -3,  -3 , -1,  -1 },
        {-2 ,  0  ,-2 , -2,  -2,   0,  -1,  -3,   0 , -1  },
        {-3,  -4 , -4,  -2 , -1 , -3 , -4 , -2,   0,  -1 },
        {-3 , -4 , -4,   0,  -4,  -4,  -3,  -3,  -1,  -1},
        {0 , -1,   0  , 0 , -3,  -4 , -3,  -3,  -3,  -1},
        {0 ,  0,  -3  -1 , -2 , -1,  -1 , -2,   0  ,-3}
   };
   int matrs[10][10];
   
   sgl(array2, 10, matr);
   
   for (int i = 0; i != 10; ++i) {
      std::copy(&matrs[i][0], &matrs[i][0] + 10, std::ostream_iterator<double>(std::cout << std::fixed, "\t"));
      std::cout << std::endl;
   }
   system("pause");
    system("cls");
    system("color 5");
    std::cout<<"Work with float\n\n\t\t\tVvedite razmernost` matricu  "<< std::endl;
    float array3[10][10] = {
{-3.2  ,-2.3  , 0,  -4.3 ,  0 ,  0,  -1.3 , -1.3  -2.3  , 0.2 },
        {-4.3 , -4.3,  -3.3 , -2.3,  -3.3,  -3.3,  -4.3 , -2.3, -2.3,  -3.3 },
        {-3.3 ,  0,  -2.3 , -1.3 , -2.3 , -2.3 , -3.3 , -3.3 , -1.3 , -4.3 },
        {-2.12 , -3.12,  -3.12,  -1.12 ,  0 , -2.12,  -2.12 ,  0 , -4.12  , 0 },
        {-1.12,  -3.12,  -2.12,  -1.12 ,-1.12 ,  0,  -3.12,  -3.12 , -1.12,  -1.12 },
        {-2.23 ,  0.23  ,-2.23 , -2.23  -2.23,   0,  -1.23,  -3.23,   0 , -1.23  },
        {-3.23,  -4.23 , -4.23,  -2.23 , -1.23 , -3.23 , -4.23 , -2.23,   0,  -1.23 },
        {-3.2 , -4.4 , -4.7,   0,  -4.22,  -4.32,  -3.12,  -3.657,  -1.654,  -1.324},
        {0 , -1.232,   0.232  , 0.765 , -3.123,  -4.123 , -3.444,  -3.33,  -3.876,  -1.12},
        {0.65 ,  0,  -3.65,  -1.222 , -2.12 , -1.22,  -1.65 , -2.6,   0  ,-3.22}
   };
   int matrs[10][10];
   
   sgl(array3, 10, matr);
   
   for (int i = 0; i != 10; ++i) {
      std::copy(&matrs[i][0], &matrs[i][0] + 10, std::ostream_iterator<double>(std::cout << std::fixed, "\t"));
      std::cout << std::endl;
   }
 
 
}
Нужно сделать так чтобы, программа работа с типами данных float, double и int. Я вроде бы все правильно по примеру оформил, но не пойму что не так.Выручите плиз.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.11.2012, 22:07
Здравствуйте! Я подобрал для вас темы с ответами на вопрос float double int (C++):

Преобразовать 2 числа int в 1 число float(double) | double int1.int2 - C++
Всем привет. Изучая азы C++, столкнулся с такой проблемой. Есть два значения типа int, их необходимо преобразовать в одно значение типа...

LONG VS DOUBLE / INT VS FLOAT - C++
Всем доброго времени суток! Объясните пожалуйста почему при следующем коде #include &lt;iostream&gt; using namespace std; int main() ...

ОШИБКА [Error] cannot convert 'int*' to 'float*' for argument '1' to 'void Syma(float*,int*,int) - C++
Какая то проблема с указателями,незнаю,не хочет щитать суму парних чисел в второй подпрограме.Извиниет за ошибки.Не владею руским.Помогите...

Как мне программу с int переделать в Float i double? - C++
как мне програму с int переделать в Float i double??? #include &lt;iostream&gt; using namespace std; int main() { cout...

Как преобразовать все int,float,double в строки LPWSTR, LPCTSTR - C++
Столкнулся с проблемой не как не переведу в нормальный вид вот код #include &lt;iostream&gt; #include &lt;Windows.h&gt; #include...

Размер для данных (int, char, long, double, short, unsigned, float) - C++
Напишите программу, которая будет определять размер для данных (int, char, long, double, short, unsigned, float) и выводить информацию (о...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
takewa
10 / 7 / 1
Регистрация: 15.08.2010
Сообщений: 372
16.11.2012, 22:23  [ТС] #2
Up, там если каждый вызов рассматривать отдельно, то они работают, как мне тогда 3 объеденить?
Gepar
1175 / 531 / 20
Регистрация: 01.07.2009
Сообщений: 3,517
16.11.2012, 23:41 #3
Цитата Сообщение от takewa Посмотреть сообщение
{
{-3.2 ,-2.3 , 0, -4.3 , 0 , 0, -1.3 , -1.3 -2.3 , 0.2 },
{-4.3 , -4.3, -3.3 , -2.3, -3.3, -3.3, -4.3 , -2.3, -2.3, -3.3 },
{-3.3 , 0, -2.3 , -1.3 , -2.3 , -2.3 , -3.3 , -3.3 , -1.3 , -4.3 },
{-2.12 , -3.12, -3.12, -1.12 , 0 , -2.12, -2.12 , 0 , -4.12 , 0 },
{-1.12, -3.12, -2.12, -1.12 ,-1.12 , 0, -3.12, -3.12 , -1.12, -1.12 },
{-2.23 , 0.23 ,-2.23 , -2.23 -2.23, 0, -1.23, -3.23, 0 , -1.23 },
{-3.23, -4.23 , -4.23, -2.23 , -1.23 , -3.23 , -4.23 , -2.23, 0, -1.23 },
{-3.2 , -4.4 , -4.7, 0, -4.22, -4.32, -3.12, -3.657, -1.654, -1.324},
{0 , -1.232, 0.232 , 0.765 , -3.123, -4.123 , -3.444, -3.33, -3.876, -1.12},
{0.65 , 0, -3.65, -1.222 , -2.12 , -1.22, -1.65 , -2.6, 0 ,-3.22}
};
Цитата Сообщение от takewa Посмотреть сообщение
{
{-3 ,-2 , 0, -4 , 0 , 0, -1 , -1, -2 , 0 },
{-4 , -4, -3 , -2, -3, -3, -4 , -2 , -2, -3 },
{-3 , 0, -2 , -1 , -2 , -2 , -3 , -3 , -1 , -4 },
{-2 , -3, -3, -1 , 0 , -2, -2 , 0 , -4 , 0 },
{-1, -3, -2, -1 ,-1 , 0, -3, -3 , -1, -1 },
{-2 , 0 ,-2 , -2, -2, 0, -1, -3, 0 , -1 },
{-3, -4 , -4, -2 , -1 , -3 , -4 , -2, 0, -1 },
{-3 , -4 , -4, 0, -4, -4, -3, -3, -1, -1},
{0 , -1, 0 , 0 , -3, -4 , -3, -3, -3, -1},
{0 , 0, -3 -1 , -2 , -1, -1 , -2, 0 ,-3}
};
Вы о заполнении случайными цифрами не думали?


Цитата Сообщение от takewa Посмотреть сообщение
matrs[0][0] = (
matr[ 0 ][ 1 ]
+ matr[ 1 ][ 0 ]
+ matr[ 1 ][ 1 ]
) / 3;
Вообще не понял, что вы пытаетесь сделать в этой сотне строк с непонятными махинациями?
takewa
10 / 7 / 1
Регистрация: 15.08.2010
Сообщений: 372
17.11.2012, 00:09  [ТС] #4
Цитата Сообщение от Gepar Посмотреть сообщение
Вы о заполнении случайными цифрами не думали?



Вообще не понял, что вы пытаетесь сделать в этой сотне строк с непонятными махинациями?
\
Я не знаю почему, но рандомом он не хочет, прбовал ругается на INT, программу писал не я, а gray_fox .
Gepar
1175 / 531 / 20
Регистрация: 01.07.2009
Сообщений: 3,517
17.11.2012, 00:18 #5
Цитата Сообщение от takewa Посмотреть сообщение
программу писал не я, а gray_fox .

Не по теме:

мопед не мой, я просто разместил объяву


Цитата Сообщение от takewa Посмотреть сообщение
но рандомом он не хочет
Ну что значит не хочет, прочитайте ошибку и попытайтесь её исправить.
Ну и что этот ваш мопед делать то хоть должен?
takewa
10 / 7 / 1
Регистрация: 15.08.2010
Сообщений: 372
17.11.2012, 00:28  [ТС] #6
Цитата Сообщение от Gepar Посмотреть сообщение

Не по теме:

мопед не мой, я просто разместил объяву



Ну что значит не хочет, прочитайте ошибку и попытайтесь её исправить.
Ну и что этот ваш мопед делать то хоть должен?
Я сделал программу, но при оформлении ее в функцию, она не хотела работать не знаю почему, может потому что я краб. Мой "мопед" работает правильно,

Не по теме:

но учитель, если отложит методичку будет нулем полным, но ей же мало, мало того что она олень, дак еще и права качает.

Программа должна работать, с INT, Double и Float... не знаю зачем ей это. На данный момент у меня нет компилятора, нахожусь дома, качать ОЧЕНЬ долго.
Croessmah
Модератор
Эксперт CЭксперт С++
13147 / 7410 / 830
Регистрация: 27.09.2012
Сообщений: 18,243
Записей в блоге: 3
Завершенные тесты: 1
17.11.2012, 00:32 #7
Цитата Сообщение от takewa Посмотреть сообщение
качать ОЧЕНЬ долго.
почему?




Кликните здесь для просмотра всего текста
P.S. Есть еще онлайн компиляторы =)
takewa
10 / 7 / 1
Регистрация: 15.08.2010
Сообщений: 372
17.11.2012, 00:34  [ТС] #8
Цитата Сообщение от Croessmah Посмотреть сообщение
почему?


Не по теме:

скорость менее 1мб/сек



Кликните здесь для просмотра всего текста
P.S. Есть еще онлайн компиляторы =)
Сыслочку можно?
Croessmah
Модератор
Эксперт CЭксперт С++
13147 / 7410 / 830
Регистрация: 27.09.2012
Сообщений: 18,243
Записей в блоге: 3
Завершенные тесты: 1
17.11.2012, 00:37 #9
Цитата Сообщение от takewa Посмотреть сообщение
Сыслочку можно?
Например:
codepad.org

Добавлено через 1 минуту
Цитата Сообщение от takewa Посмотреть сообщение
скорость менее 1мб/сек
И долго качать 50 Мб?
Я раньше с GPRS скачивал больше.
takewa
10 / 7 / 1
Регистрация: 15.08.2010
Сообщений: 372
17.11.2012, 00:55  [ТС] #10
Добавлено через 1 минуту

И долго качать 50 Мб?
Я раньше с GPRS скачивал больше.
я знаю тока с++ 2006 500мб

Добавлено через 9 минут
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
int main() {
    double **matr = new double *[5];
   for(double i = 0; i < 4; ++i)
{
   for(double j = 0; j < 4; ++j)
   { 
       matr[4][4] = rand() % 10;
   double matrs[4][4];
   
   sgl(matrs, 4, matr);
   
   for (int i = 0; i != 4; ++i) {
      std::copy(&matrs[i][0], &matrs[i][0] + 4, std::ostream_iterator<double>(std::cout << std::fixed, "\t"));
      std::cout << std::endl;
   }
   
   std::cout << summ_up(matrs, 4) << std::endl;
return 0;}
Вот допустим делаю ввод рандомо тока тепреь ругается на sgl(matrs, 4, matr); именно на matr.
Croessmah
Модератор
Эксперт CЭксперт С++
13147 / 7410 / 830
Регистрация: 27.09.2012
Сообщений: 18,243
Записей в блоге: 3
Завершенные тесты: 1
17.11.2012, 00:56 #11
Есть и другие среды. Можете вообще поставить MinGW(GCC)
takewa
10 / 7 / 1
Регистрация: 15.08.2010
Сообщений: 372
17.11.2012, 01:13  [ТС] #12
Цитата Сообщение от Croessmah Посмотреть сообщение
Есть и другие среды. Можете вообще поставить MinGW(GCC)
я нашел установочник 2010 (экспресс). Писал через него, дак что есть у кого какие идеи? как расписать в 3 вида?
takewa
10 / 7 / 1
Регистрация: 15.08.2010
Сообщений: 372
21.11.2012, 17:43  [ТС] #13
Ап, поможет кто? почему программа не хочет работать с int, double и float сразу?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.11.2012, 17:43
Привет! Вот еще темы с ответами:

Создать динамический массив, любого простого типа (например: int, long, float, double) - C++
1. Создать проект, который содержит консольную программу Win32. 2. Создать динамический массив, любого простого типа (например: int,...

Напишите программу, которая будет определять размер для данных (int, char, long, double, short, unsigned, float) и выводить информацию - C++
1. Какие типы данных лучше всего использовать для хранения следующих значений: а) возраст человека в текущем году; б) вес человека в...

Используя перегрузки, написать функцию для выполнения действий, для следующих типов данных: float, int, double - C++
Используя перегрузки, написать функцию для выполнения действий, для следующих типов данных float, int, double, long: приведение типов.

Функции float average(int arrray[],int from,int to) - C++
Напишите код функции float average(int arrray,int from,int to). Возвращаемым значением функции должно быть среднее значение элементов...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
21.11.2012, 17:43
Ответ Создать тему
Опции темы

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