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

Задача по программированию - C++

Восстановить пароль Регистрация
 
Skies
0 / 0 / 0
Регистрация: 30.06.2012
Сообщений: 23
12.09.2012, 11:19     Задача по программированию #1
Друзья, помогите с задачей по программированию.
Дан массив t из 10 элементов, в каждом находится структура x в которой соответственно находится еще один массив из 5ти чисел. с клавиатуры вводится массив a для каждой структуры массива t, надо записать сумму элементов a для каждой структуры в выделенную через указатель p память.

C++
1
2
3
4
5
6
7
8
struct x{
int a[5];
int *p
};
 
void main()
{  x t[10]
.....}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Elboy
131 / 112 / 4
Регистрация: 01.09.2012
Сообщений: 288
12.09.2012, 11:43     Задача по программированию #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
#include <stdio.h>
#include <malloc.h>
#include <stdlib.h>
 
struct x{
   int a[5];
   int *p;
};
 
int main (){
   int i, j, s;
   struct x t[10];
   
   for (i=0; i<10; i++){
      s = 0;
      printf ("Input t[%d]:\n", i);
      for (j=0; j<5; j++){    
         scanf ("%d", &t[i].a[j]);    
         s += t[i].a[j];         
      }
      t[i].p = (int *) malloc (sizeof (int *));
      *t[i].p = s;
   }
   
   for (i=0; i<10; i++){
      for (j=0; j<5; j++)
         printf ("%3d", t[i].a[j]);
      printf ("= %d\n", *t[i].p);
   }
   return 0;
}
Andsteadur
152 / 136 / 3
Регистрация: 23.05.2009
Сообщений: 275
12.09.2012, 11:56     Задача по программированию #3
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
#include <iostream>
#include <limits>
#include <iomanip>
 
struct x{
    int a[5];
    int *p;
    x():p(new int){};
    ~x(){delete p;};
};
 
std::istream& operator>>(std::istream& is, x& inpValue)
{
    *inpValue.p = 0;
    for(size_t i = 0; i < 5; ++i)
    {
        is>>inpValue.a[i];
        *inpValue.p += inpValue.a[i];
    }
    return is;
}
 
std::ostream& operator<<(std::ostream& os, x& outpVal)
{
    os<<"[ ";
    for(size_t i = 0; i < 5; ++i)
    {
        if (i)
            os<<",";
        os<<std::setw(5)<<outpVal.a[i];
    }
    os<<" ] sum = "<<*outpVal.p;
    return os;
}
 
int main()
{
    const size_t szArr = 3;
    x t[szArr];
    for(size_t i = 0; i < szArr; ++i)
    {
        std::cout<<"Enter data for struct #"<<i<<'\n';
        std::cin>>t[i];
        if (std::cin.fail())
        {
            std::cout<<"Wrong input format!\n";
            std::cin.clear();
            std::cin.ignore(std::numeric_limits<std::streamsize>::max(),'\n');
            --i;
        }
    }
    std::cout<<"Result of input:\n";
    for(size_t i = 0; i < szArr; ++i)
    {
        std::cout<<"struct #"<<i<<": "<<t[i]<<'\n';
    }
    system("pause");
    return 0;
}
zitxbit
Master C/C++
 Аватар для zitxbit
86 / 738 / 75
Регистрация: 11.04.2012
Сообщений: 971
12.09.2012, 12:14     Задача по программированию #4
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
#include <stdio.h>
#include <conio.h>
#include <iostream>
 
typedef struct x
{
    int a[5];
    int *p;
} X;
 
using namespace std;
 
int main()
{   
    X t[10];
 
    for (int i = 0; i < 10; i++)
    {
        cout << "Enter numbers for t[" << i << "] structure" << endl << endl;
        for (int j = 0; j < 5; j++)
        {
            cout << "A[" << j << "] = ";
            cin>>t[i].a[j];
        }
 
        int q = 0; t[i].p = new int; *t[i].p = 0;
        while (q < 5) *t[i].p+=t[i].a[q++];
 
        cout << endl;
    }
 
    cout << endl;
 
    for (int n1 = 0; n1 < 10; n1++)
    {
        for (int n2 = 0; n2 < 5; n2++)
            cout << t[n1].a[n2] << " ";
        cout << "\t sum = " << *t[n1].p << endl;
    }
 
    _getch();
}
Миниатюры
Задача по программированию  
Yandex
Объявления
12.09.2012, 12:14     Задача по программированию
Ответ Создать тему
Опции темы

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