Даю 20 баллов!!!Помогите составить программу ** языке С++:1. Описать структуру с именем...

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

Даю 20 баллов!!!Помогите составить программу на языке С++:1. Описать структуру с именем COMPUTER, которая содержит следующие поля:- Procesor - процессор компьютера;- Ram - объем оперативной памяти;- HDD - структура содержащая поля (Namt- производитель, V_Ram - объем,V- скорость вращения диска)- Monitor - диагональ монитора- Keyboard -тип клавиатуры;- Mouse - тип мыши.2. Написать программу, которая использует данную структуру и выполняетследующие действия:- вводит с клавиатуры массив данных CLASS, состоящий из Nпеременных типа COMPUTER;- упорядочивает записи по росту поля V_ram;- выводит на экран всех компьютеры с введенным процессором ..


Информатика (14 баллов) | 45 просмотров
Дан 1 ответ
0 голосов

#include

#include

#include

#include

#include

using namespace std;

struct COMPUTER

{

string Procesor;

long int Ram;

struct HDD  

{

 string Namt;

 long int V_Ram;

 long int V;

}hd;

string Monitor;

string Keyboard;

string Mouse;

void print()

{

 cout

}

};

int main()

{

setlocale(LC_ALL, "ru");

int k = 1;

int tk;

cout

cin >> tk;

COMPUTER* pc = new COMPUTER[tk];

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

{

 cout

 cout

 cin >> pc[i].Procesor;

 cout

 cin >> pc[i].Ram;

 cout

 cin >> pc[i].hd.Namt;

 cout

 cin >> pc[i].hd.V_Ram;

 cout

 cin >> pc[i].hd.V;

 cout

 cin >> pc[i].Monitor;

 cout

 cin >> pc[i].Keyboard;

 cout

 cin >> pc[i].Mouse;

 system("cls");

}

int tab = 0;

bool bMENU = true;

char ch_key;

while (bMENU)

{

 if (tab == 0)

 {

 cout

 cout

 cout

 switch ((ch_key = _getch()))

 {

 case '1':

   tab = 1;

   break;

 case '2':

   tab = 2;

   break;

 case 27:

   bMENU = false;

   cout

   break;

 default:

   cout

   break;

 }

 }

 if (tab == 1)

 {

 system("cls");

 string proc;

 cout

 cin >> proc;

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

 {

   if (pc[i].Procesor == proc)

   {

   pc[i].print();

   }

 }

 cout

 cout

 switch ((ch_key = _getch()))

 {

 case '0':

   tab = 0;

   break;

 case 27:

   bMENU = false;

   cout

   break;

 default:

   cout

   break;

 }

 system("cls");

 }

 if (tab == 2)

 {

 struct COMPUTER tmp;

 system("cls");

 for (int i = 0; i < tk; i++) {

   for (int j = i + 1; j < tk; j++) {

   if (pc[i].hd.V_Ram > pc[j].hd.V_Ram) {

     tmp = pc[j - 1];

     pc[j - 1] = pc[j];

     pc[j] = tmp; ;

   }

   }

 }

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

 {

   pc[i].print();

 }

 cout

 cout

 switch ((ch_key = _getch()))

 {

 case '0':

   tab = 0;

   break;

 case 27:

   bMENU = false;

   cout

   break;

 default:

   cout

   break;

 }

 system("cls");

 }

}

system("pause");

return 0;

}

(288 баллов)
0

спасибо большое. всё работает