Помогите закончить программу с++! Не получается написать программу. Задание...

0 голосов
66 просмотров

Помогите закончить программу с++! Не получается написать программу. Задание такое--->Создать комбинированный (структурный) тип для списка CD-дисков (название альбома, исполнитель, год выпуска, длительность, стоимость). Описать функцию нахождения общей длительности всех музыки на всех дисках в коллекции. Пользователь задает два комбинированных массива по N элементов в каждом.(для двух коллекций). Применить функцию два раза для заданных двух коллекций. . (Так же будет уместно описать процедуру ввода комбинированного массива и процедуру вывода.) с++ код(не знаю правильно или нет)#include #include using namespace std;struct sddisc {string name; //название альбомаfloat singer; //исполнительfloat time; //год выпускаfloat duration; //длительностьfloat cost; //стоимость};int ssddisc(sddisc x[], int n) { //ф-ия находения сам. длительности всех музыкиint num = 0; //номер музыкиfloat min = x[0].duration;for (int i = 1; i < n; i++) {if (x[i].duration > min) //(???)min = x[i].duration; num = i;}return(num);}int main(void) {int n, m;cout << "vvedite ko-vo el.v 1massive" << endl;cin >> n;cout << "vvedite ko-vo el.v 2massive" << endl;cin >> m;sddisc* r = new sddisc[n];sddisc* f = new sddisc[m];}


Информатика (48 баллов) | 66 просмотров
0

не, ну singer'а запихнуть во float это мощно

0

спасибо, но здесь CD a1[n],a2[n];---программа выдает ошибку

0

аа всё исправила ошибку))))

Дан 1 ответ
0 голосов

#include

#include

#include

using namespace std;

struct CD{

   string name;

   string singer;

   int year;

   int duration;

   double cost;

};

signed main() {

   int ans1 = 0,ans2 = 0;

   int n;

   cin >> n;

   CD a1[n],a2[n];

   for(int i = 0; i < n; i++)

       cin >> a1[i].name >> a1[i].singer >> a1[i].year >> a1[i].duration >> a1[i].duration;

   for(int i = 0; i < n; i++)

       cin >> a2[i].name >> a2[i].singer >> a2[i].year >> a2[i].duration >> a2[i].duration;

   for(auto i: a1)

       ans1 += i.duration;

   for(auto i: a2)

       ans2 += i.duration;

   cout << "1 collection durates: " << ans1 << "\n";</strong>

   cout << "2 collection durates: " << ans2 << "\n";</strong>

   cout << "both collections durate: " << ans1 + ans2 << "\n";</strong>

}

(688 баллов)