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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 32, средняя оценка - 4.66
Noxior
3 / 3 / 0
Регистрация: 07.06.2009
Сообщений: 162
#1

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

17.02.2012, 03:21. Просмотров 4477. Ответов 12
Метки нет (Все метки)

вот есть задача....
Написать профамму, которая выводит минимальный элемент
введенного с клавиатуры массива целых чисел. Ниже приведен
рекомендуемый вид экрана во время работы профаммы (данные,
введенные пользователем, выделены полужирным шрифтом).

вот её решение.....

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <stdio.h>
#include <conio.h>
#define HB 5
void mainO
{
int a[HB];
int min;
int i;
printf("ХпПоиск минимального элемента массиваХп");
printf("Введите в одной строке элементы массиваЛп");
printf("%i целых чисел, и нажмите <Enter>\n", НВ);
printf("-> " );
for (i = 0; i < HB; i4-+)
scanf("%i",&a[i]);
min = 0 ; 
for (i = 1; i < HB; i++)
if (a[i] < a[min]) min = i;
printf("Минимальный элемент массива: " );
printf("a[%i]=%i ", min+1, a[min]);
printf("printf("\пДля завершения нажмите <Enter>");
getch();
}

а вот вопросы.....
как можно обойтись без #define HB 5, при этом все также обозначая размер массива любой переменной?
обьясните смысл этих строчек в контексте программы...
for (i = 1; i < HB; i++)
if (a[i] < a[min]) min = i;
printf("a[%i]=%i ", min+1, a[min]);

заранее благодарен
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.02.2012, 03:21
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Написать программу, которая выводит минимальный элемент введенного с клавиатуры массива целых чисел (C++):

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

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

Вывести минимальный элемент введенного с клавиатуры массива целых чисел (через указатель) - C++
Как написать программу, которая выводит минимальный элемент введенного с клавиатуры массива целых чисел? Для доступа к элементам массива...

Написать программу, которая выводит на экран значение минимального элемента массива из 100 элементов. Вывести минимальный элемент - C++
Написать программу, которая выводит на экран значение минимального элемента массива из 100 элементов. Массив заполняется случайными числами...

Написать программу которая проверяет образуют ли элементы введенного с клавиатуры массива неубывающую последовательность - C++
Ребят, срочно нужна ваша помощь. Написать программу которая проверяет образуют ли элементы введенного с клавиатуры массива неубывающую...

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

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Serejke_qq
150 / 108 / 9
Регистрация: 06.07.2011
Сообщений: 224
Завершенные тесты: 2
17.02.2012, 03:29 #2
Цитата Сообщение от Noxior Посмотреть сообщение
как можно обойтись без #define HB 5, при этом все также обозначая размер массива любой переменной?
объявить и ввести в main() :
C++
1
2
3
int HB;
scanf("%d",&HB);
a[HB];   // однако так не везде работает..
C++
1
2
3
4
for (i = 1; i < HB; i++)               // цикл для прохождения по всем элементам массива
if (a[i] < a[min]) min = i;            // если текущий элемент меньше элемента с индексом минимума
                                       // то индекс минимума изменяем на текущий (i)
printf("a[%i]=%i ", min+1, a[min]);    // Выводим минимум и его индекс
0
Noxior
3 / 3 / 0
Регистрация: 07.06.2009
Сообщений: 162
17.02.2012, 03:37  [ТС] #3
я немного нето имел ввиду по поводу первого вопроса....
допустим я начал делать так

C++
1
2
3
4
5
6
7
8
#include "stdafx.h"
int n; 
int x[n], min, i;
 
int main()
{
    n=5;
    std::cout<<"uiuui\n";
у меня начинает выбивать ошибку

c:\documents and settings\a\мои документы\visual studio 2008\projects\3\3\3.cpp(3) : error C2057: требуется константное выражение
c:\documents and settings\a\мои документы\visual studio 2008\projects\3\3\3.cpp(3) : error C2466: невозможно выделить память для массива постоянного нулевого размера

в чем проблема?


обьясните на пальцах что происходит тут и почему

printf("a[%i]=%i ", min+1, a[min]);
0
lvlkoo
.NET C#,ASP.NET MVC
335 / 291 / 101
Регистрация: 16.10.2010
Сообщений: 1,292
Завершенные тесты: 2
17.02.2012, 03:53 #4
Вы пытаетесь обьявить массив размерности n, но переменую n еше не инициализировали.
следут сделать так
C++
1
2
3
4
5
6
7
#include "stdafx.h"
int n=5; 
int x[n], min, i;
 
int main()
{
        std::cout<<"uiuui\n";
или так
C++
1
2
3
4
5
6
7
8
#include "stdafx.h"
int n; 
 
int main()
{
        n=5;
        int x[n], min, i;
        std::cout<<"uiuui\n";
0
Noxior
3 / 3 / 0
Регистрация: 07.06.2009
Сообщений: 162
17.02.2012, 03:56  [ТС] #5
нет, так не лечится, выбивает теже ошибки
0
Devochka
31 / 19 / 1
Регистрация: 07.10.2011
Сообщений: 98
17.02.2012, 15:32 #6
Размерность массива надо передавать константой.
const int n = 5;
int x [n];
0
Новенький
44 / 9 / 2
Регистрация: 03.03.2009
Сообщений: 254
17.02.2012, 16:50 #7
ну а точнее так
C++
1
2
3
4
5
6
7
8
9
#include<iostream>
using namespace std;
main(){
int n,*a;
cin>>n;
a=new int[n];
/* сама прога */
return 0;
}
0
Noxior
3 / 3 / 0
Регистрация: 07.06.2009
Сообщений: 162
18.02.2012, 02:22  [ТС] #8
int n,*a;

тут мы задали n-размер массива и a назвали его?
0
easybudda
18.02.2012, 06:18
  #9

Не по теме:

Цитата Сообщение от Noxior Посмотреть сообщение
Написать профамму
А что это - "профамма"?

0
silent_1991
18.02.2012, 13:04
  #10

Не по теме:

easybudda, от слова "профан"?

0
go
Эксперт C++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
18.02.2012, 14:18 #11
Цитата Сообщение от easybudda Посмотреть сообщение
А что это - "профамма"?
Возможно, автор имел ввиду слово "программа".
0
silent_1991
18.02.2012, 14:20
  #12

Не по теме:

go, сомневаюсь... На форуме программистов - программу? Нет-нет, вряд ли.

2
Noxior
3 / 3 / 0
Регистрация: 07.06.2009
Сообщений: 162
18.02.2012, 20:08  [ТС] #13
та вы петросяны ваще
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.02.2012, 20:08
Привет! Вот еще темы с ответами:

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

Написать программу, которая выводит таблицу квадратов первых десяти целых положительных чисел - C++
Ребят, выручайте) Написать программу, которая выводит таблицу квадратов первых десяти целых положительных чисел: числа квадрат 1...

Написать программу, которая выводит таблицу квадратов n первых целых положительных нечетных чисел - C++
Написать программу, которая выводит таблицу квадратов n первых целых положительных НЕЧЕТНЫХ чисел

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


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
18.02.2012, 20:08
Ответ Создать тему
Опции темы

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