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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 16.10.2011, 14:16   #1
DesignFootball.Ru
Пользователь
 
Регистрация: 17.02.2011
Сообщений: 57
По умолчанию Нахождение минимального и максимального (Циклы на СИ++)

Здравствуйте! Дана задача "Введите с клавиатуры n целых чисел. Выведите на экран минимальное и максимальное из введенных чисел".
Решить нужно с помощью циклов на уровне 2-ой лабы 1-ого курса университета Т.е. как можно проще

Меня смущает фраза Введите с клавиатуры n целых чисел. Я так понимаю, что если n чисел, то должно быть и N переменных. Но если будет 100 чисел, мы же не будем задействовать 100 переменных?
Отсюда вопрос номер один: что писать в int ?

Конечно же, было бы супер увидеть готовый код с комментариями, но приму любую помощь.

Заранее благодарю!
DesignFootball.Ru - Первый русскоязычный сайт о футбольной экипировке.
DesignFootball.Ru вне форума Ответить с цитированием
Старый 16.10.2011, 15:24   #2
Rififi
Старожил
 
Регистрация: 19.08.2009
Сообщений: 2,119
По умолчанию

DesignFootball.Ru

Я так понимаю, что если n чисел, то должно быть и N переменных. Но если будет 100 чисел, мы же не будем задействовать 100 переменных?

чтобы не создавать в программе 100 переменных, придумали массивы :D

примерно так

Код:
#include <iostream>
#include <new>
...
size_t n;
std::cin >> n;

int* array = new int [n]; // массив из n элементов
for (size_t i=0; i<n; i++)
    std::cin >> array[i];

...

delete [] array; // удаление массива
Rififi вне форума Ответить с цитированием
Старый 16.10.2011, 15:33   #3
DesignFootball.Ru
Пользователь
 
Регистрация: 17.02.2011
Сообщений: 57
Смех

Цитата:
Сообщение от Rififi Посмотреть сообщение
DesignFootball.Ru

Я так понимаю, что если n чисел, то должно быть и N переменных. Но если будет 100 чисел, мы же не будем задействовать 100 переменных?

чтобы не создавать в программе 100 переменных, придумали массивы :D

примерно так

Код:
#include <iostream>
#include <new>
...
size_t n;
std::cin >> n;

int* array = new int [n]; // массив из n элементов
for (size_t i=0; i<n; i++)
    std::cin >> array[i];

...

delete [] array; // удаление массива
Вся проблема в том, что массивы мы ещё не изучали
DesignFootball.Ru - Первый русскоязычный сайт о футбольной экипировке.
DesignFootball.Ru вне форума Ответить с цитированием
Старый 16.10.2011, 15:40   #4
_Alerter_
Пользователь
 
Регистрация: 25.05.2011
Сообщений: 89
По умолчанию

Достаточно трёх переменных: переменная, в которой хранишь текущее значение, и переменные, в которых хранишь максимальное значение и минимальное. В первую считываешь введённое число, если оно больше текущего максимального, то записываешь его в максимальное, если меньше минимального, то записываешь его в минимальное. В переменные, в которых будет хранится минимальное и максимальное значение, в начале записать первое, введённое после n, число.
_Alerter_ вне форума Ответить с цитированием
Старый 16.10.2011, 15:53   #5
Rififi
Старожил
 
Регистрация: 19.08.2009
Сообщений: 2,119
По умолчанию

DesignFootball.Ru

Вся проблема в том, что массивы мы ещё не изучали

тогда создавай 100 переменных
Rififi вне форума Ответить с цитированием
Старый 16.10.2011, 15:56   #6
hoop
 
Регистрация: 26.06.2011
Сообщений: 4
По умолчанию

Код:
#include "stdafx.h"
#include <iostream>
#define eof -1
using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
	int vvod, max = 0, min = 0;
	do
	{
		cin >> vvod;
		if (vvod >= max) max = vvod;
		if (vvod <= min) min = vvod;
	}while(vvod != eof);
	cout << "max = " << max;
	cout << "min = " << min;	
}
я правда не знаю как тебе нужно закончить ввод данных, так что здесь это заканчивается вводом -1)

Последний раз редактировалось Stilet; 22.10.2011 в 21:28.
hoop вне форума Ответить с цитированием
Старый 16.10.2011, 15:59   #7
_Alerter_
Пользователь
 
Регистрация: 25.05.2011
Сообщений: 89
По умолчанию

Цитата:
Сообщение от hoop Посмотреть сообщение
#include "stdafx.h"
#include <iostream>
#define eof -1
using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
int vvod, max = 0, min = 0;
do
{
cin >> vvod;
if (vvod >= max) max = vvod;
if (vvod <= min) min = vvod;
}while(vvod != eof);
cout << "max = " << max;
cout << "min = " << min;
}

я правда не знаю как тебе нужно закончить ввод данных, так что здесь это заканчивается вводом -1)
а если все числа будут отрицательными?
_Alerter_ вне форума Ответить с цитированием
Старый 16.10.2011, 16:15   #8
hoop
 
Регистрация: 26.06.2011
Сообщений: 4
По умолчанию

Цитата:
Сообщение от _Alerter_ Посмотреть сообщение
а если все числа будут отрицательными?
пардон тогда так:

Код:
#include "stdafx.h"
#include <iostream>
#define eof -1
using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
	int vvod, max, min;
	cin >> vvod;
	max = min = vvod;
	do
	{
		cin >> vvod;

		if (vvod >= max) max = vvod;
		if (vvod <= min) min = vvod;

	}while(vvod != eof);
	cout << "max = " << max;
	cout << "min = " << min;	
}

Последний раз редактировалось Stilet; 22.10.2011 в 21:28.
hoop вне форума Ответить с цитированием
Старый 16.10.2011, 17:06   #9
DesignFootball.Ru
Пользователь
 
Регистрация: 17.02.2011
Сообщений: 57
По умолчанию

Спасибо конечно.. Но это всё сложно...
мы изучили только ветвления и циклы, а тут непонятно что [для меня]
DesignFootball.Ru - Первый русскоязычный сайт о футбольной экипировке.
DesignFootball.Ru вне форума Ответить с цитированием
Старый 16.10.2011, 19:29   #10
_Alerter_
Пользователь
 
Регистрация: 25.05.2011
Сообщений: 89
По умолчанию

Цитата:
Сообщение от DesignFootball.Ru Посмотреть сообщение
Спасибо конечно.. Но это всё сложно...
мы изучили только ветвления и циклы, а тут непонятно что [для меня]
А что ещё вы видите в коде hoop, кроме ветвления и циклов?
_Alerter_ вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поиск максимального и минимального значения в массиве WIN32APIist Общие вопросы C/C++ 5 28.12.2010 00:24
Поиск минимального и максимального элемента в двухмерном массиве. Dem6 Общие вопросы Delphi 10 30.11.2009 20:22
Поиск минимального и максимального пути в графе!!!! OZZY_91 Помощь студентам 1 18.11.2009 13:20
Вывод максимального, минимального и среднего значение по Listbox Klim Bassenger Microsoft Office Excel 3 29.06.2009 18:38
Поиск минимального (максимального) элемента массива Radamant Помощь студентам 10 24.12.2008 17:44