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

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

Войти
Регистрация
Восстановить пароль
 
Avicii
2 / 2 / 0
Регистрация: 01.12.2012
Сообщений: 123
#1

Массив объектов - C++

24.02.2013, 15:47. Просмотров 330. Ответов 6
Метки нет (Все метки)

Здравствуйте,помогите починить программу,не знаю в чем причина,мб недопонимаю.... Задание: Элементы масива которые больше 10 заменить на 1, остальные округлить до ближайшего целого.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <cmath>
using namespace std;
class top {int a;
           public:
           void vin (int n)
           {a=n;}
           int fal()
           {return if(abs(a)>10) {a=1};  //где-то тут ошибка
            if (abs(a)<=10) {a=round (a)};}
                     }
 
int main()
{top M[16]; int i;
cout<<"Vvedite massiv M[16]: ";
for (i=0;i<16;i++)
cin>>M[16];
for (i=0;i<16;i++) M[i].vin(i);
for (i=0;i<16;i++) cout<<M[i].fal()<<" ";
return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.02.2013, 15:47
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Массив объектов (C++):

Написать класс Матрица. Массив объектов класса Массив - C++
Написать класс Матрица (в данном случае матрица – массив объектов класса Массив из предыдущего задания). В классе реализовать следующие...

Массив объектов - C++
Можно так написать? class A {бла-бла-бла} void main() { int x=3; A *arr = new A; }

Массив объектов - C++
Доброго времени суток... Подскажите пожалуйста у меня есть следующий код: class vertex{ public: float x; float y; ...

Массив объектов - C++
Создать массив объектов разного типа невозможно. Но, наверное, можно создать массив объектов, поле которых, будет содержать указатель на...

массив объектов - C++
добрый вечер всем. Возникла такая проблема - необходимо создать массив деков символов. Я хочу создать пустой объект - нулевого размера. а...

массив объектов - C++
Почему у меня так много объектов? Должно быть два, а конструктор вызывается n*n раз. Почему? #include &lt;iostream&gt; using namespace...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BumerangSP
4286 / 1408 / 121
Регистрация: 16.12.2010
Сообщений: 2,941
Записей в блоге: 3
24.02.2013, 16:10 #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
#include <iostream>
#include <cmath>
using namespace std;
class top 
{
public:
        double a;
           double fal(top& a)
           {
                  if(a.a>10) 
                  {
                     return (a.a=1);
               }
              if (a.a<=10) 
                  {
                      return (a.a=round (a.a));
               }
             }
};
 
int main()
{
     top M[16]; int i;
    cout<<"Vvedite massiv M[16]: ";
    for (i=0;i<16;i++)
       cin>>M[i].a;
     for (i=0;i<16;i++) 
       cout<<M[i].fal(M[i])<<" ";
     return 0;
}
Совсем неясно, что Вы тут сделать пытались. Например, функцией vin.
Kuzia domovenok
1891 / 1746 / 118
Регистрация: 25.03.2012
Сообщений: 5,925
Записей в блоге: 1
24.02.2013, 16:30 #3
Цитата Сообщение от BumerangSP Посмотреть сообщение
Совсем неясно, что Вы тут сделать пытались. Например, функцией vin.
ну это как раз-таки ясно. Он не хотел делать public int a, вместо это использовать void top::vin (int n)
Если не трогать класс,
можно было б изменить часть функции мэйн как:
C++
1
2
3
4
5
int val;
for (i=0;i<16;i++){
  cin>>val;
  M[i].vin(val);
}
BumerangSP
4286 / 1408 / 121
Регистрация: 16.12.2010
Сообщений: 2,941
Записей в блоге: 3
24.02.2013, 17:25 #4
Kuzia domovenok, сумбурно как-то. Можно подумать, что в vin он хочет заменить все введенные числа.
Avicii
2 / 2 / 0
Регистрация: 01.12.2012
Сообщений: 123
04.03.2013, 15:17  [ТС] #5
Цитата Сообщение от BumerangSP Посмотреть сообщение
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
#include <iostream>
#include <cmath>
using namespace std;
class top 
{
public:
        double a;
           double fal(top& a)
           {
                  if(a.a>10) 
                  {
                     return (a.a=1);
               }
              if (a.a<=10) 
                  {
                      return (a.a=round (a.a));
               }
             }
};
 
int main()
{
     top M[16]; int i;
    cout<<"Vvedite massiv M[16]: ";
    for (i=0;i<16;i++)
       cin>>M[i].a;
     for (i=0;i<16;i++) 
       cout<<M[i].fal(M[i])<<" ";
     return 0;
}
Совсем неясно, что Вы тут сделать пытались. Например, функцией vin.
C++
1
2
3
4
5
void vin (int n)
           {a=n;}
           int fal()
           {return if(abs(a)>10) {a=1};  
            if (abs(a)<=10) {a=round (a)};}
Я делал сразу после лекции,нам обьяснили что функцией
C++
1
2
void vin (int n)
           {a=n;}
заносится переменная для присванивания с которой в дальнешем работает функция в классе
C++
1
2
3
int fal()
           {return if(abs(a)>10) {a=1};  
            if (abs(a)<=10) {a=round (a)};}
Avicii
2 / 2 / 0
Регистрация: 01.12.2012
Сообщений: 123
22.03.2013, 21:52  [ТС] #6
Благодарю,немного переделал программу, т.к переменная "а" должна по заданию находится в привате. Впорос появился,как сделать безопасный массив с контролем границ?
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
#include <iostream>
#include <cmath>
using namespace std;
class samp {double a;
            public:
            double put_a (double n)
            {a=n;}
            double get_a()
             {if(a>10)
                {return (a=1);}
                  if (a<=10)
                   {return (a=round(a));}
             }
            };
int main()
{samp M[10];
double B[10];
int i;
cout<<"Vvedite massiv M[10]: ";
for (i=0;i<10;i++)
cin>>B[i];
for (i=0;i<10;i++)
M[i].put_a(B[i]);
for (i=0;i<10;i++)
cout<<M[i].get_a()<<" ";
return 0;
}
Kastaneda
22.03.2013, 21:57     Массив объектов
  #7

Не по теме:

Очень плохо, что в ВУЗах не учат форматировать код, очень...

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.03.2013, 21:57
Привет! Вот еще темы с ответами:

С++ массив объектов - C++
Люди начался новый учебный год опять обращаюсь за помощью File Имя файла.размер. количество обращений. создать массив объектов.ввывести. ...

Массив объектов - C++
При решении задачи необходимо, без использования STL, описать класс, который используется для представления элементов а) массива с...

Массив объектов - C++
Всем привет. Даны три класса. Мне нужно создать массив, в который я смогу добавить обьекты классов-потомков. Я представляю сбе это как то...

Массив объектов - C++
Задумка: Сделать некую подобию базы данных, список из &quot;объектов&quot;. К объектам привязаны соответствующие данные разных типов (int, char и...


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

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

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