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

Не знаю как переделать лабу, есть пример - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Разделить массив по 3 элемента http://www.cyberforum.ru/cpp-beginners/thread310376.html
Помогите решить задачу по одномерным массивам. Дан массив из 18 елементов. Нужно разделить этот массив по 3 елемента. Из каждых 3-х елементов массива вычислить среднее арифметическое. И эти средние арифметические занести в другой массив и вывести. Заранне спасибо.
C++ взаимодействие нескольких процессов в среде Windows У меня есть готовая рабочая программа состоящая из двух файлов: процесс(сервер) и процесс(клиент). Она отлично работает. Проблема заключается в том, что препод не принимает её т.к. ему уже сдавали такую работу. Помогите её переделать))) :gsmile: Задание: Реализовать два процесса, один из которых дожидается нажатия клавиши (или кнопки на окне) и сообщает об этом другому процессу с помощью... http://www.cyberforum.ru/cpp-beginners/thread310358.html
Работа с классами C++
помогите пожалуйста, срочно нужно решить задачу в С++ 1. Определить класс с именем ZNAK, содержащий следующие поля: • фамилия, имя; • знак Зодиака; • день рождения (массив из трех чисел). 2. Написать программу, выполняющую следующие действия: • ввод с клавиатуры данных в массив, состоящий из восьми объектов типа ZNAK; записи должны быть упорядочены по датам дней рождения; • вывод на...
C++ программа работает неправильно
Дана символьная матрица размера 13 на 18. Найти: номер первой по порядку строки, содержащий наибольшее число цифр; #include <iostream> #include <cstdlib> #include <conio.h> using namespace std; int main() { char matrix;
C++ Построение http://www.cyberforum.ru/cpp-beginners/thread310329.html
Здравствуйте вот нужно отредактировать программу т.к как не работает. Заранее спасибо все что не делал не могу понять , она не работает . построения графика функции f(x)=(sin(x/2)*х при x= #include<stdio.h>
C++ Матрицы Нужно ввести елементы матрицы с левого верхнего угла по диагонали в право в гору подробнее

Показать сообщение отдельно
zesen
122 / 85 / 1
Регистрация: 17.10.2010
Сообщений: 432
13.11.2013, 00:31  [ТС]     Не знаю как переделать лабу, есть пример
Gangsterus, нашел!

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
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
//---------------------------------------------------------------------------
 
#pragma hdrstop
#include <iostream.h>
#include <conio.h >
#include <vcl.h>
 
//---------------------------------------------------------------------------
 
#pragma argsused
// инифиализация класса country
class country
{
 public:
    char* name; // Имя
           char* form_of_government; // Форма правления
    float area ; // Площадь
 // Конструктор класса country без параметров
    country()
    {
        name = new char[15];    // выделение памяти для названия страны
        strcpy(name,"default"); // копирование названия поумолчанию в выделенную память
        form_of_government = new char[10];    // выделение памяти для формы правления в стране
        strcpy(form_of_government,"undefined"); // копирование имени поумолчанию в выделенную память
        area =0; // присваивание свойству area 0
        // вывод сообщение о создании нового экземпляра класса  country
        cout<<"Created country object"<<" "<<this<<" name: "<<name<<"\n\r";
    }
// Конструктор класса country с параметрами
// входные параметры:
// nm - Имя
// fog – Форма правления
// ar - Площадь
    country(char* nm, char* fog,float ar)
    {
        name = new char[StrLen(nm)]; // выделение памяти для названия страны
        strcpy(name,nm); // копирование имени в выделенную память
        form_of_government = new char[StrLen(fog)]; // выделение памяти для формы правления в стране
        strcpy(form_of_government,fog); // копирование формы правления в выделенную память
        area =ar; // присваивание свойству area знаение ar
        // вывод сообщение о создании нового экземпляра класса  country
        cout<<"Created country object"<<" "<<this<<" name: "<<name<<"\n\r";
    }
// Конструктор копирования класса country
    country(const country& st)
    {
        name= new char[StrLen(st.name)]; // выделение памяти копии свойства name
        strcpy(name,st.name); // копирование имени  выделенную память
        form_of_government= new char[StrLen(st.form_of_government)]; // выделение памяти копии свойства form_of_government
        strcpy(form_of_government,st.form_of_government); // копирование формы правления в выделенную память
        area=st.area;// присваивание свойству area знаение копируемого экзкмпляра класса
// вывод сообщения об завершении работы конмтруктора копирования
        cout<<"Object copied"<<" "<<this<<" name: "<<name<<"\n\r";
    }
// Диструктор класса country
    ~country()
    {
    // вывод сообщение об уничтожении экземпляра класса country
        cout<<"Destroyed country object"<<" "<<this<<" name: "<<name<<"\n\r";
        delete this->name; // освобождение памяти от строки значения свойства name
        delete this->form_of_government; // освобождение памяти от строки значения свойства form_of_government
        getch();
    }
// Метод set_name предназначен для установки свойства name в экземляре класса country
// входные параметры:
// nm - Имя 
    void set_name(char *nm)
    {
    // вывод сообщение об изменении свойства name экземпляра класса country
        cout<<"Object"<<" "<<this<<" name changed from: "<<name<<" to: "<<nm<<"\n\r";
        delete this->name;// освобождение памяти от строки значения свойства name
        name = new char[StrLen(nm)]; // выделение памяти для свойства name
        strcpy(name,nm); // копирование имени  выделенную память
    }
// Метод set_fog предназначен для установки свойства form_of_government в экземляре класса country
// входные параметры:
// fog – форма правления
    void set_fog(char *fog)
    {
// вывод сообщение об изменении свойства name экземпляра класса country
        cout<<"Object"<<" "<<this<<" form_of_government changed from: "<<form_of_government<<" to: "<<fog<<"\n\r";
        delete this->form_of_government;// освобождение памяти от строки значения свойства form_of_government
        form_of_government = new char[StrLen(fog)]; // выделение памяти для свойства form_of_government
        strcpy(form_of_government,fog); // копирование  новой формы правления в выделенную память
    }
// Метод set_area предназначен для установки свойства area в экземляре класса country
// входные параметры:
// ar - площадь
    void set_area(float ar)
    {
    // вывод сообщение об изменении свойства area экземпляра класса country
        cout<<"Object"<<" "<<this<<" quantity changed from: "<<area<<" to: "<<ar<<"\n\r";
        this->area=ar; // присваивание свойству area знаение ar
    }
// Метод show_name предназначен для просмотра свойства name класса country
    void show_name()
    {
        cout<<"Object"<<" "<<this<<" name is: "<<name<<"\n\r"; // вывод значения name
    }
// Метод show_fog предназначен для просмотра свойства form_of_government класса country
    void show_fog()
    {
        cout<<"Object"<<" "<<this<<" code is: "<<form_of_government<<"\n\r"; // вывод значения form_of_government
    }
// Метод show_area предназначен для просмотра свойства area класса country
    void show_area()
    {
        cout<<"Object"<<" "<<this<<" quantity is: "<<area<<"\n\r"; // вывод значения area
    }
 };
 
//-----------------------------------------------------------------------------
// Функция view предназначена для просмотра элементов экземпляра класса country
void view(country sh)
{
 // Инициализация указателя не метод show_name класса country
    void (country::*show_n)();
    show_n=&country::show_name;
 
        cout<<"\n\r         Info about "<<sh.name<<"\n\r";
        (sh.*show_n)(); // Вывод свойсвтва name на экран
        sh.show_fog(); // Вывод свойсвтва form_of_government на экран
        sh.show_area(); // Вывод свойсвтва area на экран
        cout<<"\n\r";
// при выходе из функции вызывается диструктор для копии объекта переданного в функцию
}
 
//-----------------------------------------------------------------------------
float main(float argc, char* argv[])
{
    country group[2], *one, *two; // определяем массив из 2-х элементов класса country
                                //и двух указателей на экземпляр класса country
                                // при этом вызывается 2 раза конструктор без параметоров
// создаем объект класса country, при этом вызывается конструктор с параметрами
    one=new country("Belarus","smeshan",207);
    two=&group[1]; // присваиваем указателю адрес второго элемента массива group
    int i,n;
 
    for(i=0;i<2;i++)
    {
 
        group[i].set_name(("Country N"+FloatToStr(i)).c_str()); // установка значения свойства name
        group[i].set_fog(("form_of_government N" +FloatToStr(i)).c_str()); // установка значения свойства form_of_government
        group[i].set_area((i+1)*(i+1));// установка значения свойства area
        view(group[i]); // вывод на экран свойств group[i], при этом вызывается конструктор копирования
    }
    one->set_fog("President"); // установка значения свойства form_of_government 
    one->set_name("Polska"); // установка значения свойства name
    one->set_area(300); // установка значения свойства area
    view(*one); // вывод на экран свойств group[i], при этом вызывается конструктор копирования
 
    getch();
    return 0;
 
// при завершении программы вызывается  деструктор для объектов массива group, а также
//объект созданный оператором new, на который указывает указатель one
}
//---------------------------------------------------------------------------
 
Текущее время: 01:42. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru