0 / 0 / 0
Регистрация: 16.04.2017
Сообщений: 22
1

Написать программу в C++. Структуры

16.04.2017, 10:44. Показов 1245. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте, я написала часть кода, а именно 1 задание, не могли бы вы помочь со 2,3.
условие 1:Описать структуру с именем CHESSPEICE, содержащую следующие поля:

COST – "стоимость" фигур в пешках;
POSITION – номер клетки, в которой находится фигура;
COLOR – цвет фигуры;
NAME – название фигуры.

Написать программу, выполняющую следующие действия:

ввод с клавиатуры данных в массив CHESSBOARD, состоящий из 32 элементов типа CHESSPEICE; (ввести не менее 10 фигур с соблюдением правил игры в шахматы)
вывод на экран информации о всех фигурах указанного пользователем цвета;
вывод на экран информации о фигуре, расположенной в указанной пользователем клетке. Если в указанной клетке доски фигуры нет, то выводится информация о фигуре из ближайшей занятой клетки.

2.Создать структуру CHESS_DIGIT, в которой количество полей и их значение совпадает со структурой из первого задания, но все поля являются числовыми. Создать объединение, которое обеспечивало бы работу с обеими структурами.

3.Создайте класс с таким же полями, что и структура из первого задания. Класс должен содержать:

пустой конструктор, деструктор (с очисткой памяти) и конструктор с полным заполнением полей
простые методы доступа к свойствам (set-методы и get-методы)
метод вывода полной информации о рейсе и методы с кодом обработки условий отбора из предыдущего задания.
Класс должен быть разработан с соблюдением ВСЕХ принципов объектно-ориентированного программирования!!!

Код 1 задания:
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
#include<stdio.h> 
#include<locale> 
#include<conio.h> 
#include<string.h> 
#include <iostream> 
#define SIZE 4 
using namespace std; 
struct CHESSPEICE 
{ 
char col[20]; 
float cost; 
int pos; 
char name[30]; 
}; 
int main() 
{ 
setlocale(LC_ALL, "Russian"); 
CHESSPEICE CHESSBOARD[2]; 
int i, k = 0, j; 
char color[10]; 
int position; 
int min=1000; 
for (i = 0; i < 2; i++) 
{ 
printf("vvedite cvet "); 
cin»CHESSBOARD[i].col; 
printf("vvedite cenu "); 
cin»CHESSBOARD[i].cost; 
printf("vvedite pos "); 
cin»CHESSBOARD[i].pos; 
printf("vvedite name "); 
cin»CHESSBOARD[i].name; 
cout«"----------------------------------------"«endl; 
} 
for (i = 0; i < 2 - 1; i++)//сортировка пузырьком по возрастанию 
{ 
for (j = i + 1; j<2; j++) 
{ 
if (CHESSBOARD[i].pos>CHESSBOARD[j].pos) 
{ 
swap(CHESSBOARD[i].pos, CHESSBOARD[j].pos); 
swap(CHESSBOARD[i].col, CHESSBOARD[j].col); 
swap(CHESSBOARD[i].cost, CHESSBOARD[j].cost); 
swap(CHESSBOARD[i].name, CHESSBOARD[j].name); 
}//обмен переменных через своп 
} 
} 
for (i = 0; i < 2; i++) 
{ 
printf("%s, %.2f, %i, %s\n", CHESSBOARD[i].col, CHESSBOARD[i].cost, CHESSBOARD[i].pos, CHESSBOARD[i].name); 
} 
printf("vvedite cvet\n"); 
scanf("%s", &color); 
for (i = 0; i < 2; i++) 
{ 
if (strcmp(CHESSBOARD[i].col, color) == 0)//сравнить с введенным 
{ 
printf("%f, %i, %s \n", CHESSBOARD[i].cost, CHESSBOARD[i].pos, CHESSBOARD[i].name); 
k++; 
} 
} 
printf("vvedite pos\n"); 
scanf("%i", &position); 
for (i = 0; i < 2; i++) 
{ 
if (CHESSBOARD[i].pos== position)//сравнить с введенным 
{ 
printf("%s, %f, %s \n", CHESSBOARD[i].name, CHESSBOARD[i].cost, CHESSBOARD[i].col); 
k++; 
} 
else {if (position-CHESSBOARD[i].pos<min) min=CHESSBOARD[i].pos;} 
for (i = 0; i < 2; i++) 
{ 
if (CHESSBOARD[i].pos== min)//сравнить с введенным 
{ 
printf("%f, %s, %s \n", CHESSBOARD[i].cost,CHESSBOARD[i].col, CHESSBOARD[i].name); 
k++; 
}; 
}; 
}; 
return 0; 
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.04.2017, 10:44
Ответы с готовыми решениями:

Написать программу за выводом инфо по номеру телефону (структуры)
Уважаемые форумчани задача следующая. Создать список, в котором хранится информация об абонентах...

Нужно написать программу (структуры) на С++ в MS Visual Studio 2008
1. Описать структуру с именем WORKER , содержащую следующие поля: фамилия и инициалы работника;...

Написать программу с использованием структуры, состоящей из переменных, определяющих объект
«Студент»: фамилия, имя, год рождения, номер группы, оценки по каждому экзамену. Объявить массив...

Написать программу, в которой будут объявлены структуры Points и Line
1. Написать программу, в которой будут объявлены структуры Points и Line, создан динамический...

0
16.04.2017, 10:44
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.04.2017, 10:44
Помогаю со студенческими работами здесь

Написать программу удаления информации о сотруднике с указанным возрастом с массивом структуры
Написать программу удаления информации о сотруднике с указанным возрастом с массивом структуры

Написать программу, работающую со спортивным клубом, состоящим из команд, выполненных в виде структуры
Задача: Описать структуру с именем Team, содержащую следующие поля: игроки команды (массив из 11...

Динамические структуры данных (Написать программу, которая моделирует процесс прибытия и отъезда машин)
Привет всем! Помогите пожалуйста написать программу на С++, очень прошу Вас. Гаражная стоянка...

Структуры Си. Написать программу ввода координат двух точек и вычисления расстояния между ними
Представить координаты точек в трёхмерном пространстве в виде структуры, состоящей из трёх...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru