Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Shkipper86
0 / 0 / 0
Регистрация: 29.08.2013
Сообщений: 30
#1

Найти минимальное значение из столбцов матрицы - C++

20.09.2013, 08:10. Просмотров 802. Ответов 7
Метки нет (Все метки)

Всем Доброго времени суток! написал программу для подсчета сумм столбцов матрицы. теперь нужно вывести на экран минимальное значение из эти сумм. думаю сформировать из этих значений одномерный массив, а потом найти минимальное значение, только вот сформировать этот массив не получается.
код:
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
#include <iostream>
#include <conio.h>
#include <windows.h>
int main()
{
    char str[50];
    int a,y,x,z,c;
    int m[10][10];
    CharToOem ("размерность:-->", str);
    std::cout << str;
    std::cin >> z;
    std::cout << std::endl;
    CharToOem ("элементы:-->", str);
    std::cout << str;
    std::cout << std::endl;
    const int h=z;
    for (y=0;y<h;y++)
        for (x=0;x<h;x++)
            std::cin >> m[y][x];
    for (y=0;y<h;y++)
    {
        for (x=0;x<h;x++)
            std::cout << m[y][x]<< "\t";
            std::cout << std::endl;
            std::cout << std::endl;
    }
    for (x=0;x<h;x++)
    {
        a=0;
        for (y=0;y<h;y++)
            {
            a+=m[y][x];
        }
         CharToOem ("ÑóììГ*", str);
         std::cout <<str;
         CharToOem (" ", str);
         std::cout <<str<<x;
         CharToOem ("-ГЈГ® ñòîëáöГ*:", str);
         std::cout <<str<<a<<std::endl;
    }
        getch();
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.09.2013, 08:10
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Найти минимальное значение из столбцов матрицы (C++):

Программа с матрицами. Найти минимальное значение среди четных элементов матрицы и сумму положительных элемен-тов матрицы - C++
Дана целочисленная матрица 5x7. Найти минимальное значение среди четных элементов матрицы и сумму положительных элемен-тов матрицы.

Найти минимальное|максимальное значение в каждой строке матрицы - C++
Помогите с задачей! язык С++ Дана матрица размера n×m. Найти минимальное1|максимальное2 значение в каждой строке3|столбце4.

Найти минимальное|максимальное значение в каждой строке матрицы - C++
Осталось 30мин помогите Дана матрица размером 5 x 10 . Найти минимальное и максимальное значение в каждой строке столбце C++

Найти максимальный элемент матрицы и минимальное значение в строке где он находится - C++
Дана матрица m , n. найти максимальный элемент матрицы и минимальное значение в строке где он находится. Вот начало, помогите дописать...

Найти и заменить нулём максимальное и минимальное значение в каждом столбце матрицы - C++
Здравствуйте, не знаю в чём ошибка( Вводит матрицу и выводит, а вот с остальным проблема( Задача такова: Дана матрица размером n*m.Найти...

Среди столбцов матрицы А найти столбец, содержащий минимальное произведение своих элементов и принять этот столбец за вектор X - C++
Задача заключается в следующем: 1)Построить матрицу. Матрицу построил, но она выводится в строку. Как вывести её нормально, по столбцам...

7
es_
203 / 203 / 46
Регистрация: 14.01.2013
Сообщений: 455
20.09.2013, 09:19 #2
1. Для удобства чтения кода на форуме при формировании темы, есть кнопка [C++].
2. CharToOem ("Ñóììà", str); кодировка нарушена, перекопируй, а то компилятор выдаёт ошибку.
3. Для вывода русских знаков в консоли можно использовать
C++
1
setlocale(LC_ALL,"Russian");
P.S. В общем код только путает, задачка то не сложная, с нуля проще написать чем разбираться в твоём коде. Так что напиши нормально листинг или же полностью задание, я тебе с нуля решу.)
1
Shkipper86
0 / 0 / 0
Регистрация: 29.08.2013
Сообщений: 30
20.09.2013, 09:36  [ТС] #3
es_, само задание: Найти количество предложений в строке (предложение должно заканчиваться точкой).
код что я пока сделал:
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
#include <iostream>
#include <conio.h>
#include <windows.h>
int main()
{
char str[50];
int a,y,x,z,c;
int m[10][10];
CharToOem ("размерность:-->", str);
std::cout << str;
std::cin >> z;
std::cout << std::endl;
CharToOem ("элементы:-->", str);
std::cout << str;
std::cout << std::endl;
const int h=z;
for (y=0;y<h;y++)
for (x=0;x<h;x++)
std::cin >> m[y][x];
for (y=0;y<h;y++)
{
for (x=0;x<h;x++)
std::cout << m[y][x]<< "\t";
std::cout << std::endl;
std::cout << std::endl;
}
for (x=0;x<h;x++)
{
a=0;
for (y=0;y<h;y++)
{
a+=m[y][x];
}
CharToOem ("сумма", str);
std::cout <<str;
CharToOem (" ", str);
std::cout <<str<<x;
CharToOem ("-го столбца:", str);
std::cout <<str<<a<<std::endl;
}
getch();
}
0
es_
203 / 203 / 46
Регистрация: 14.01.2013
Сообщений: 455
20.09.2013, 10:21 #4
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
#include "stdafx.h"
#include <windows.h>
#include <iostream>
#include <stdio.h>
#include <string>
 
using namespace std;
 
 
int main()
{
    setlocale(LC_ALL,"Russian");
    string s;
    int i,k=0;
    cout<<"Введите строку:\n";
    cin>>s;
    cout<<s;
    for(i=0;i<s.length();i++)
    {
        if(s[i]=='.')
        {
            k++;
        }
    }
    cout<<"Количество предложений в строке: "<<k;
    system("PAUSE > void");
    return 0;
}
Меня в ступор ввело: Строка обрывается на пробеле не могу пока понять. Вот попробуй пока с этим кодом.
P.S. У меня Visual Studio, так что
C++
1
#include "stdafx.h"
наверное тебе нужно будет убрать

Добавлено через 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
#include "stdafx.h"
#include <windows.h>
#include <iostream>
#include <stdio.h>
#include <string>
 
using namespace std;
char bufRus[256];
 
char* Rus(const char* text) {
      CharToOemA(text, bufRus);
      return bufRus;
      }
 
int main()
{
    char s[50];
    int i,k=0;
    cout<<Rus("Введите строку:\n");
    cin.getline(s,50);
    for(i=0;i<50;i++)
    {
        if(s[i]=='.')
        {
            k++;
        }
    }
    cout<<Rus("Количество предложений в строке: ")<<k;
    system("PAUSE > void");
    return 0;
}
Тяжко после C# писать на С++ ))
и Ещё, зачем ты искал минимумы?
1
Shkipper86
0 / 0 / 0
Регистрация: 29.08.2013
Сообщений: 30
20.09.2013, 10:49  [ТС] #5
es_, Извини! Я тут паралельно другую работу делаю запутался в окна
вот задание:
Дана квадратная матрица размерностью N. Найти минимум из сумм по столбцам.
0
es_
203 / 203 / 46
Регистрация: 14.01.2013
Сообщений: 455
20.09.2013, 11:13 #6
Shkipper86, бывает)))
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
#include "stdafx.h"
#include <iostream>
#include <stdio.h>
#include <time.h>
 
using namespace std;
 
int main()
{
    srand(time(NULL));
    setlocale(LC_ALL,"Russian");
    const int n = 10;
    double mat[n][n],sum[n],min;
    int i,j;
    for(i=0;i<n;i++)
    {
        sum[i]=0;
    }
    for(i=0;i<n;i++)
    {
        for(j=0;j<n;j++)
        {
            mat[i][j] = rand()%99 + 1;
        }
    }
    cout<<"Случайная матрица: \n";
    for(i=0;i<n;i++)
    {
        for(j=0;j<n;j++)
        {
            cout<<mat[i][j]<<" ";
        }
        cout<<endl;
    }
    for(j=0;j<n;j++)
    {
        for(i=0;i<n;i++)
        {
            sum[j]+=mat[i][j];
        }
    }
    cout<<"\nСуммы в столбцах: \n";
    for(i=0;i<n;i++)
    {
        cout<<sum[i]<<" ";
    }
    min=sum[0];
    for(i=0;i<n;i++)
    {
        if(sum[i]<min)
        {
            min=sum[i];
        }
    }
    cout<<"\nМинимум из сумм по столбцам: \n"<<min;
    system("PAUSE > void");
    return 0;
}
1
Ilot
Модератор
Эксперт С++
1823 / 1181 / 232
Регистрация: 16.05.2013
Сообщений: 3,118
Записей в блоге: 5
Завершенные тесты: 1
20.09.2013, 11:17 #7
Shkipper86 , изучай:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
    int array[N][N], MinArray[N];
    int min;
    //Инициализировать массивы...
    
    //Поиск суммы по столбцам и минимума среди них
    for (int j = 0; j < N; j++) {
        for(int k = 0; k < N; k++) {
            MinArray[j] += array[j][k];
        }
        if (j ==0) min = MinArray[j];
        if (min > MinArray[j])
            min = MinArray[j];
    }
1
Shkipper86
0 / 0 / 0
Регистрация: 29.08.2013
Сообщений: 30
20.09.2013, 11:58  [ТС] #8
es_, Мега Спасибощщщееее!))+100500 раз!
0
20.09.2013, 11:58
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.09.2013, 11:58
Привет! Вот еще темы с ответами:

Найти минимальное значение среди элементов матрицы, расположенных в строках с нечётными номерами - C++
Двумерный массив целых чисел Х30х10 рассматривается как прямоугольная матрица. Найти минимальное значение среди элементов матрицы,...

Матрицы. Найти максимальное значение среди буквенных символов и минимальное среди цифровых значений - C++
Задание звучит так:Дана матрица 5х7, элементами которой являются значения сим-вольного типа. Найти максимальное значение среди буквенных...

Найти номера тех столбцов матрицы, сумма элементов которых превышает заданную величину, и число таких столбцов - C++
Для матрицы из 3 строк и 7 столбцов отпечатать номератех слобцов, сумма элементов которых превышает заданную величину,и число таких...

Найти столбик, в котором среднее арифметическое значение из положительных элементов имеет минимальное значение - C++
Никак не могу понять задачу, помогите написать программу, очень нужно ! В части матрицы, расположенной под вспомогательной диагональю,...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.