Основы программирования на С++ для начинающих

Задачи и решения: Классы C++

Прошло немного времени после публикации вводного урока о классах в C++. Теперь мы предлагаем вам попрактиковаться в решении достаточно простых задач с применением классов. Старайтесь решать самостоятельно.

1. Создать класс Tiles (кафель), который будет содержать поля с открытым доступом: brandsize_hsize_wprice и метод класса getData(). В главной функции объявить пару объектов класса и внести данные в поля. Затем отобразить их, вызвав метод getData().

2. Определить класс Children, который содержит такие поля (члены класса): закрытые – имя ребенка, фамилию и возраст , публичные – методы ввода данных и отображения их на экран. Объявить два объекта класса, внести данные и показать их.

3. Преобразовать строки двумерного массива в столбцы. Например было: 

задачи и решения, классы c++, классы с++ для начинающих, спецификаторы доступа privat и public, методы класса

стало:

задачи и решения, классы c++, классы с++ для начинающих, спецификаторы доступа privat и public, методы класса

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

34 thoughts on “Задачи и решения: Классы C++

  1. #include

    using namespace std;

    class Matrix {

    private:
    int **matrix;
    public:
    void setData(int row, int col) {
    matrix = new int* [row];
    for (int i = 0; i < row; i++) {
    matrix[i] = new int[col];
    }
    for (int i = 0; i < row; i++) {
    cout << '\n';
    for (int j = 0; j < col; j++) {
    matrix[i][j] = 1 + rand() % 9;
    cout << matrix[i][j] << '\t';
    }
    }
    cout << "\n====================================================\n";
    };
    void getData(int row,int col) {
    for (int i = 0; i < col; i++) {
    cout << '\n';
    for (int j = 0; j < row; j++) {
    cout << matrix[j][i] << '\t';
    }
    }
    for (int i = 0; i < row; i++) {
    delete[]matrix[i];
    }
    delete[]matrix;
    };
    };
    int main() {
    Matrix a;
    a.setData(3,6);
    a.getData(3,6);
    return 0;
    }

  2. Я початківець, і ось мій код:

    #include

    using namespace std;

    class ArrayConverter{
    public:
    int numbers[7][3] = {
    0,0,0,
    0,0,0,
    0,0,0,
    0,0,0,
    0,0,0,
    0,0,0,
    0,0,0
    };
    int convertedNumbers[3][7] = {
    0,0,0,0,0,0,0,
    0,0,0,0,0,0,0,
    0,0,0,0,0,0,0
    };

    void SetRandomElements(){
    for(int i = 0; i < 7; i++){
    for(int j = 0; j < 3; j++){
    numbers[i][j] = rand() % 11;
    }
    }
    }
    void ShowOriginalArray(){
    for(int i = 0; i < 7; i++){
    for(int j = 0; j < 3; j++){
    cout << numbers[i][j] << " ";
    }
    cout << endl;
    }
    }

    void ConvertColumnsToRows(){
    for(int i = 0; i < 3; i++){
    for(int j = 0; j < 7; j++){
    convertedNumbers[i][j] = numbers[j][i];
    }
    }
    }
    void ShowConvertedArray(){
    for(int i = 0; i < 3; i++){
    for(int j = 0; j < 7; j++){
    cout << convertedNumbers[i][j] << " ";
    }
    cout << endl;
    }
    }

    ArrayConverter(){
    SetRandomElements();
    }
    };

    int main(){
    ArrayConverter converter;
    converter.ShowOriginalArray();
    converter.ConvertColumnsToRows();
    cout << endl;
    converter.ShowConvertedArray();
    return 0;
    }

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *