The basics of programming in c++ for beginners

Tasks and Solutions: Classes C ++

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

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

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

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

tasks and solutions, c ++ classes, c++ classes for beginners, privat and public access specifiers, class methods

стало:

tasks and solutions, c ++ classes, c++ classes for beginners, privat and public access specifiers, class methods

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

37 thoughts on “Tasks and Solutions: Classes 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. I am a beginner, and here is my code:

    #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;
    convert.ShowConvertedArray();
    return 0;
    }

  3. #include
    using namespace std;
    class ChangeArr
    {
    public:
    void setArr();
    void change();
    private:
    int** arr;
    int row = 0;
    int col = 0;
    };
    void main()
    {
    setlocale(LC_ALL, “ru”);
    srand(time(NULL));
    ChangeArr arr;
    arr.setArr();
    arr.change();
    }
    void ChangeArr::setArr()
    {
    cout << "Укажите размер массива:" <> row;
    cin >> col;
    arr = new int* [row];
    for (int i = 0; i < row; i )
    {
    arr[i] = new int[col];
    }
    cout << "Заполните массив:" << endl;
    for (int i = 0; i < row; i )
    {
    for (int j = 0; j < col; j )
    {
    cout << "Значение ячейки – [" << i << "]" << "[" << j << "]" <> arr[i][j];
    }
    }
    cout << endl;
    cout << "Ваш массив:" << endl<<endl;

    for (int i = 0; i < row; i )
    {
    for (int j = 0; j < col; j )
    {
    cout << arr[i][j] << " ";
    }
    cout << endl;
    }
    }
    void ChangeArr::change()
    {
    int** tempArr = new int* [col];
    for (int i = 0; i < col; i )
    {
    tempArr[i] = new int[row];
    }
    for (int i = 0; i < row; i )
    {
    for (int j = 0; j < col; j )
    {
    tempArr[j][i] = arr[i][j];
    }
    }
    cout << "Замена строчек на столбци " << endl << endl;
    for (int i = 0; i < col; i )
    {
    for (int j = 0; j < row; j )
    {
    cout << tempArr[i][j] << " ";
    }
    cout << endl;
    }
    for (int i = 0; i < col; i )
    {
    delete[] arr[i];
    }
    delete[]arr;
    arr = nullptr;
    for (int i = 0; i < col; i )
    {
    delete[] tempArr[i];
    }
    delete[]tempArr;
    tempArr = nullptr;
    }

  4. #include
    #include

    using namespace std;

    class Matrix
    {
    private:

    int** arr;
    int row;
    int col;
    you** bufArr;
    int bufRow;
    int bufCol;

    public:

    void Fill_array(int rows_value, int cols_value)
    {
    row = rows_value;
    col = cols_value;
    bufRow = rows_value;
    bufCol = cols_value;

    arr = new int* [row];
    for (int i = 0; i < row; i )
    {
    arr[i] = new int[col];
    }

    for (int i = 0; i < row; i )
    {
    for (int j = 0; j < col; j )
    {
    arr[i][j] = rand() % 90 + 10;
    }
    }
    }

    void Change_rows_with_cols()
    {
    bufArr = new int* [row];

    for (int i = 0; i < row; i )
    {
    bufArr[i] = new int[col];
    }

    for (int i = 0; i < row; i )
    {
    for (int j = 0; j < col; j )
    {
    bufArr[i][j] = arr[i][j];
    }
    }

    int buf = row;
    row = col;
    col = buff;

    for (int i = 0; i < col; i )
    {
    delete[] arr[i];
    }
    delete[] arr;

    arr = new int* [row];

    for (int i = 0; i < row; i )
    {
    arr[i] = new int[col];
    }

    for (int i = 0; i < row; i )
    {
    for (int j = 0; j < col; j )
    {
    arr[i][j] = bufArr[j][i];
    }
    }
    }

    void PrintArr()
    {
    for (int i = 0; i < row; i )
    {
    for (int j = 0; j < col; j )
    {
    cout << arr[i][j] << " ";
    }
    cout << endl;
    }
    }

    ~Matrix()
    {
    for (int i = 0; i < bufRow; i )
    {
    delete[] bufArr[i];
    }

    delete[]bufArr;

    for (int i = 0; i < row; i )
    {
    delete[] arr[i];
    }
    delete[]arr;
    }

    };

    int main()
    {
    srand(time(NULL));

    Matrix first;
    first.Fill_array(4, 2);
    first.PrintArr();
    cout << "\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n" << endl;
    first.Change_rows_with_cols();
    first.PrintArr();
    }

  5. class Massive {
    private:
    you massive[2][4]{
    {11,33,55,77},
    {22,44,66,88}
    };
    public:
    void vertical() {
    std::cout << solid[0][0] << " " << solid[1][0] << std::endl;
    std::cout << solid[0][1] << " " << solid[1][1] << std::endl;
    std::cout << solid[0][2] << " " << solid[1][2] << std::endl;
    std::cout << solid[0][3] << " " << solid[1][3] << std::endl;
    }

    void horizon() {
    std::cout << solid[0][0] << " " << solid[0][1] << " " << solid[0][2] << " " << solid[0][3] << " " << std::endl;
    std::cout << solid[1][0] << " " << solid[1][1] << " " << solid[1][2] << " " << solid[1][3] << " " << std::endl;
    }
    };

    int main() {
    setlocale(LC_ALL, "rus");
    Massively massive_two;
    std::cout << "было:" << std::endl;
    massiv_two.vertical();
    std::cout << "стало:" << std::endl;
    massiv_two.gorizont();
    }

Leave a Reply

Your email address will not be published. Required fields are marked *