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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 01.05.2013, 15:35   #1
Morpho
Пользователь
 
Регистрация: 22.07.2012
Сообщений: 29
По умолчанию Вопрос по коду нахождения min max элементов

Здравствуйте!
Делаю задачки по С++ из сборника задач.
В одной из задач необходимо найти минимальный и максимальный элемент массива.
Казалось бы, задачи похожие, должны выполняться похожим кодом, но максимальный элемент программа находит, а минимальный - не хочет, выдаёт что-то непонятное.
Вот код, может быть, кто-нибудь поможет ошибку найти:
Код:
#include "stdafx.h"
#include <iostream>
#include <stdio.h>
#include <conio.h>
#include <math.h>


#define M_PI 3.14

using namespace std;


int _tmain(int argc, _TCHAR* argv[])
{
	setlocale(LC_ALL, "Russian");

	int x[10];
	int *y;
	int i, sum = 0, cnt = 0, c, c1;
	int max, min;
	double mean;

	y = x;
	max = y[0]; min = y[0];
	cout << "Input ten numbers: ";
	for(i = 0; i <= 9; i++) cin >> y[i];
	for(i = 0; i <= 9; i++)
	{
		if(y[i] > max) 
		{
			max = y[i];
			c = i;		
		}
	}
	for(i = 0; i <= 9; i++)
	{
		if(y[i] < min) 
		{
			min = y[i];
			c1 = i;		
		}
	}
	for(i = 0; i <= 9; i++)
	{
		if(i == c || i == c1) i++;
		sum += y[i];
		cnt++;
	}

	mean = static_cast<double>(sum) / static_cast<double>(cnt);
	cout << "The bigger is: " << max << " (" << c << ")" << "\n";
	cout << "The smaller is: " << min << " (" << c1 << ")" << "\n";
	cout << "The sum is: " << sum << "\n";
	cout << "The count of applied numbers: " << cnt << "\n";
	cout << "The mean is: " << mean << "\n";

	system("pause");
	return 0;
}
Morpho вне форума Ответить с цитированием
Старый 01.05.2013, 17:28   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

max = y[0]; min = y[0]; перенеси под цикл, в котором вводишь в y с клавиатуры.
Ибо до него у тебя эти массивы содержат мусор, который ты и наблюдаешь.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 02.05.2013, 10:03   #3
Morpho
Пользователь
 
Регистрация: 22.07.2012
Сообщений: 29
По умолчанию

Точно! Чего-то я тупанул, спасибо
Morpho вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Одномерный массив. Найти max и min сумму из 20 подряд стоящих элементов KIRILOW Паскаль, Turbo Pascal, PascalABC.NET 3 22.12.2012 23:46
списке целых чисел все элементы между max и min заменить полусуммой max и min Roman one C/C++ Базы данных 0 20.12.2012 12:14
В квадратной матрице найти сумму элементов главной и побочной диагонали, среднее, min и max (Pascal) Brusik Помощь студентам 0 09.07.2011 17:01
Матрица Min-Max и Max-Min boog Помощь студентам 3 23.12.2010 13:19
функция нахождения max/min эл-та в массиве Zhenya-Pvl Паскаль, Turbo Pascal, PascalABC.NET 3 20.12.2010 14:31