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

Создать новый массив, найти наименьший элемент 3-го столбца, поменять местами наименьший элемент 3-го столбца и элемент a23 - C++

Восстановить пароль Регистрация
 
Dunaizis
1 / 1 / 0
Регистрация: 10.12.2013
Сообщений: 20
08.01.2014, 01:07     Создать новый массив, найти наименьший элемент 3-го столбца, поменять местами наименьший элемент 3-го столбца и элемент a23 #1
1 Создать новый одномерный массив , каждый элемент которого равен среднему арифметическому элементов соответствующей строки данной матрицы.
2 Найти наименьший элемент 3-го столбца.
3 Поменять местами наименьший элемент 3-го столбца и элемент a23.

Вот моя программа
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
// ConsoleApplication1.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include <iostream>
#include <math.h>
#include <stdio.h>
using namespace std;
void main()
{
    int i, j, imin, jmin, K;
    double A[5][3], B[3], SR, S, Amin, n;                                              где B[5] наверно 
    printf("Vvedite massiv\n");
    for (i = 0; i<5; i++)
    {
        for (j = 0; j<3; j++)
        {
            printf("Vvedite element A[%d][%d]\t", i, j);
            cin»A[i][j];
        }
    }
    printf("Massiv A\n");
    for (i = 0; i<5; i++)
    {
        for (j = 0; j<3; j++)
            printf("%5.2f\t", A[i][j]);
        printf("\n");
    }
    for (i = 0; i<5; i++)
    {
        S = 0;
        K = 0;
        for (j = 0; j<3; j++)
        {
            S = S + A[i][j];
            K = K + 1;
            SR = S / K;
            B[i] = SR;
        }
    }
    printf("Noviy massiv B\n");
    for (i = 0; i<5; i++)
    {
        printf("%5.2f\t", B[i]);
    }
    Amin = pow(10, 10.);
    for (i = 0; i<5; i++)
    {
        if (A[i][2]<Amin) {
            Amin = A[i][2];
            imin = i;
        }
    }
    printf("Naim elem Amin=%5.2f\n", Amin);
    n = A[imin][2];
    A[imin][2] = A[1][2];
    A[1][2] = n;
    printf("Izmenenniy massiv\n");
    for (i = 0; i<5; i++)
    {
        for (j = 0; j<3; j++)
            printf("%5.2f\t", A[i][j]);
        printf("\n");
    }
}
правильная ли у меня программа
и к сведению
A[0][0]=1
A[0][1]=2
A[0][2]=3
A[1][0]=4
A[1][1]=5
A[1][2]=6
A[2][0]=7
A[2][1]=8
A[2][2]=9
A[3][0]=10
A[3][1]=11
A[3][2]=12
A[4][0]=13
A[4][1]=14
A[4][2]=15
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.01.2014, 01:07     Создать новый массив, найти наименьший элемент 3-го столбца, поменять местами наименьший элемент 3-го столбца и элемент a23
Посмотрите здесь:

Найти сумму элементов столбца, в котором расположен наименьший элемент C++
Определить номер столбца содержащий наименьший элемент матрицы через массив C++
Найти самый наименьший элемент в матрице, и найти сумму столбца который стоит этот наименьший найденный элемент C++
C++ Создать одномерный массив, найти наименьший элемент 3-го столбца, поменять местами наименьший элемент элементы
Поменять местами наибольший и наименьший элемент массива в диапазоне от 0 до 25. Массив рандомный C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Arkaniy
 Аватар для Arkaniy
106 / 106 / 6
Регистрация: 29.08.2012
Сообщений: 452
08.01.2014, 01:31     Создать новый массив, найти наименьший элемент 3-го столбца, поменять местами наименьший элемент 3-го столбца и элемент a23 #2

Не по теме:

Цитата Сообщение от Dunaizis Посмотреть сообщение
где B[5] наверно


Ну так запустите и проверьте правильно работает или нет.
Dunaizis
1 / 1 / 0
Регистрация: 10.12.2013
Сообщений: 20
08.01.2014, 05:48  [ТС]     Создать новый массив, найти наименьший элемент 3-го столбца, поменять местами наименьший элемент 3-го столбца и элемент a23 #3
Не работает
sergei60
47 / 28 / 4
Регистрация: 10.06.2012
Сообщений: 334
08.01.2014, 09:07     Создать новый массив, найти наименьший элемент 3-го столбца, поменять местами наименьший элемент 3-го столбца и элемент a23 #4
Наскоро глянув ,бросилось в глаза. Должно быть ,как мне кажется, int main ,а не void main.. Потом строка 18 символ >> неправильный , потом в конце не хватает завершения return 0; } ,потом строка 11 что это за " где B[5] наверно " ?
Ev_Hyper
 Аватар для Ev_Hyper
1806 / 1627 / 435
Регистрация: 15.12.2013
Сообщений: 5,786
08.01.2014, 09:12     Создать новый массив, найти наименьший элемент 3-го столбца, поменять местами наименьший элемент 3-го столбца и элемент a23 #5
Dunaizis, для начала, как вы и сами подозреваете B[5];
А еще у вас 3 лишних переменные
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
int main()
{
    setlocale(LC_ALL, "");
    int i, j, imin=0;
    double A[5][3], B[5], S, Amin, n;                                       
    cout<<"Введите массив"<<endl;
    for (i = 0; i<5; i++)
    {
        for (j = 0; j<3; j++)
        {
            cout<<"["<<i<<"]["<<j<<"]";
            cin>>A[i][j];
        }
    }
    cout<<endl;
    cout<<"Массив А, ="<<endl;
    for (i = 0; i<5; i++)
    {
        for (j = 0; j<3; j++)
            cout<< A[i][j]<<" ";
        cout<<endl;
    }
    for (i = 0; i<5; i++)
    {
        S = 0;
        for (j = 0; j<3; j++)
        {
            S+=A[i][j];
        }
        B[i] = S/3;
    }
    cout<<"Массив В"<<endl;
    for (i = 0; i<5; i++)
    {
        cout<<B[i]<<" ";
    }
    cout<<endl;
    Amin = A[0][2];
    for (i = 0; i<5; i++)
    {
        if (A[i][2]<Amin) {
            Amin = A[i][2];
            imin = i;
        }
    }
    cout<<"Минимимум А "<<Amin<<endl;
    n = A[imin][2];
    A[imin][2] = A[1][2];
    A[1][2] = n;
    cout<<"Измененный массив"<<endl;
    for (i = 0; i<5; i++)
    {
        for (j = 0; j<3; j++)
            cout<< A[i][j]<<" ";
        cout<<endl;
    }
    return 0;
}
sergei60
47 / 28 / 4
Регистрация: 10.06.2012
Сообщений: 334
08.01.2014, 09:26     Создать новый массив, найти наименьший элемент 3-го столбца, поменять местами наименьший элемент 3-го столбца и элемент a23 #6
Ev_Hyper, Не пойму зачем все таки нужно setlocale(LC_ALL, ""); и я добавил #include <iostream>

using namespace std . И почему printf ? я имею в ввиду в начальном коде ?
Ev_Hyper
 Аватар для Ev_Hyper
1806 / 1627 / 435
Регистрация: 15.12.2013
Сообщений: 5,786
08.01.2014, 09:37     Создать новый массив, найти наименьший элемент 3-го столбца, поменять местами наименьший элемент 3-го столбца и элемент a23 #7
Цитата Сообщение от sergei60 Посмотреть сообщение
и я добавил #include <iostream>
просто у всех компиляторы разные, поэтому стандартные библиотеки я не оставляю в коде

Цитата Сообщение от sergei60 Посмотреть сообщение
И почему printf ? я имею в ввиду в начальном коде ?
она выполняет практически тоже самое, что и cout, но второй для меня намного удобнее

Цитата Сообщение от sergei60 Посмотреть сообщение
setlocale(LC_ALL, "");
чтобы выводить не транслитом
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.01.2014, 12:00     Создать новый массив, найти наименьший элемент 3-го столбца, поменять местами наименьший элемент 3-го столбца и элемент a23
Еще ссылки по теме:

В массиве из 4 строк и 3 столбцов найти наименьший элемент каждого столбца C++
В массиве из 10 чисел найти наименьший элемент и поменять его местами с последним элементом C++
C++ Найти наименьший элемент 3-го столбца, заменить его на среднее арифметическое

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

Или воспользуйтесь поиском по форуму:
Ev[G]eN
Эксперт С++
 Аватар для Ev[G]eN
5093 / 1531 / 381
Регистрация: 23.01.2011
Сообщений: 3,148
08.01.2014, 12:00     Создать новый массив, найти наименьший элемент 3-го столбца, поменять местами наименьший элемент 3-го столбца и элемент a23 #8
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
#include <iostream>
#include <iomanip>
#include <clocale>
#include <cstdlib>
#include <ctime>
 
int main()
{
    std::setlocale(0, "");
    std::srand(std::time_t(0));
 
    const size_t rowsCount(5);
    const size_t colsCount(3);
 
    int matrix[rowsCount][colsCount];
    double rowAverageArray[rowsCount];
 
    std::cout << "Матрица: " << std::endl;
    for (size_t i = 0; i < rowsCount; i++) {
        int rowElementsSum(0);
        for (size_t j = 0; j < colsCount; j++) {
            std::cout << std::setw(5) << (matrix[i][j] = std::rand() % 20);
            rowElementsSum += matrix[i][j];
        }
        rowAverageArray[i] = ((double)(rowElementsSum) / (double)(colsCount));
        std::cout << std::endl;
    }
 
    std::cout << "Массив, состоящий из средних значений каждой строки: " << std::endl;
    for (size_t i = 0; i < rowsCount; i++) {
        std::cout << rowAverageArray[i] << "(Строка №" << (i + 1) << "); ";
    }
    std::cout << std::endl;
 
    size_t iMin(0), jMin(2);
    for (size_t i = 1; i < rowsCount; i++) {
        iMin = matrix[i][jMin] < matrix[iMin][jMin] ? i : iMin;
    }
    std::cout << std::endl << "Минимальны элемент третьего столбца: " << matrix[iMin][jMin] << std::endl;
 
    int buffer(matrix[iMin][jMin]);
    matrix[iMin][jMin] = matrix[1][jMin];
    matrix[1][jMin] = buffer;
 
    std::cout << std::endl << "Результат: " << std::endl;
    for (size_t i = 0; i < rowsCount; i++) {
        for (size_t j = 0; j < colsCount; j++)
            std::cout << std::setw(5) << matrix[i][j];
        std::cout << std::endl;
    }
 
    std::system("pause");
    return 0;
}
Yandex
Объявления
08.01.2014, 12:00     Создать новый массив, найти наименьший элемент 3-го столбца, поменять местами наименьший элемент 3-го столбца и элемент a23
Ответ Создать тему
Опции темы

Текущее время: 20:48. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru