Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Visual C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.02.2016, 19:14   #1
9398
Пользователь
 
Регистрация: 12.02.2016
Сообщений: 10
По умолчанию Номер столбца,значение которого минимально

НАписал код для поиска среднеарифметического значения каждого столбца,а как найти номер столбца с минимальным среднеарифметическим?

Код:
#include "stdafx.h" 
#include<time.h>
#include<conio.h>
#include<iostream>
using namespace std;
void Init(float **mas, int n, int m)
{
	for (int i = 0;i<n;i++)
		for (int j = 0;j<m;j++)
			mas[i][j] =(float)(rand() % 20001) / 100 - 100;
}
void Show(float **mas, int n, int m)
{
	cout << "\n\n";
	for (int i = 0;i<n;i++)
	{
		for (int j = 0;j<m;j++)
			cout << mas[i][j] << "\t";
		cout << "\n";
	}
	cout << "\n\n";
}
void Sredneye(float **mas, int n, int m)
{
	cout << "\n\n";
	for (int i = 0;i<m;i++)
	{
		float sum = 0, sr = 0;
		for (int j = 0;j<n;j++)
		{
			sum += mas[j][i];
			sr = sum / n;
		printf("Среднее арефметическое %d столбца равнo %g\n\n", i + 1, sr);
	}
	printf("\n\n");
}
void main()
{
	srand((unsigned)time(NULL));
	setlocale(LC_CTYPE, "Rus");
	int n , m;
	printf("Введите колличество строк:\n");
	do {
		scanf_s("%d", &n);
		if (n < 1 || n > 9999999999) {
			printf("Введено неверное количество. Повторите ввод.\n");
		}
		else {
			printf("\n");
		}
	} while (n < 1 || n > 9999999999);

	float **mas = new float*[n];
	printf("Введите колличество столбцов:\n");
	do {
		scanf_s("%d", &m);
		if (m < 1 || m > 9999999999) {
			printf("Введено неверное количество. Повторите ввод.\n");
		}
		else {
			printf("\n");
		}
	} while (m < 1 || m > 9999999999);

	for (int i = 0;i<n;i++)
		mas[i] = new float[m];
	Init(mas, n, m);
	Show(mas, n, m);
	Sredneye(mas, n, m);
	for (int i = 0;i<n;i++)
		delete[]mas[i];
	delete[]mas;
	_getch();
}
9398 вне форума Ответить с цитированием
Старый 19.02.2016, 20:55   #2
Smitt&Wesson
Старожил
 
Аватар для Smitt&Wesson
 
Регистрация: 31.05.2010
Сообщений: 13,543
По умолчанию

Код:
if(sr < srmin) {srmin = sr;  col = j;}
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder
Smitt&Wesson вне форума Ответить с цитированием
Старый 20.02.2016, 13:40   #3
9398
Пользователь
 
Регистрация: 12.02.2016
Сообщений: 10
По умолчанию

Цитата:
Сообщение от Smitt&Wesson Посмотреть сообщение
Код:
if(sr < srmin) {srmin = sr;  col = j;}
Ваш код выдает все значения
9398 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Найти номер столбца Двумерного массива вещественных чисел, для которого среднеарифметическое значение его элементов минимально 9398 Visual C++ 2 16.02.2016 12:25
Дана матрица (4;6). Определить и вывести номер столбца, сумма элементов которого максимальна stdlife Паскаль, Turbo Pascal, PascalABC.NET 4 22.11.2012 00:01
Как вывести на экран номер строки с максимальной суммой элементов и номер столбца с минимальной суммой? Vetal888888 C# (си шарп) 4 20.12.2011 13:46
Как описать компонент, номер которого - переменная? 239 Помощь студентам 1 26.10.2011 19:57
номер строки, для которой среднее арифметическое её элементов минимально.QBasic pionerka Помощь студентам 3 31.05.2010 20:15