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

Одномерный массив - C++

Восстановить пароль Регистрация
 
Прекрасная
2 / 2 / 0
Регистрация: 12.02.2010
Сообщений: 96
17.05.2010, 12:44     Одномерный массив #1
Задан целочисленный одномерный массив a из n элементов. Найти номер последнего максимального элемента среди положительных элементов, начиная с первого элемента, большего Т.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.05.2010, 12:44     Одномерный массив
Посмотрите здесь:

C++ Дан одномерный массив, состоящий из N вещественных элементов. 4.1. Заполнить массив случайными числами. 4.2. Найти минимальный положительный элемент.
Одномерный массив. Найти наименьшие среди элементов первого массива, которые не входят во второй массив. C++
C++ Двумерный массив. Сформировать одномерный массив, каждый элемент которого равен первому четному элементу соответствующего столбца
Сформировать одномерный массив, удалить первый элемент с заданным значением, сдвинуть массив циклически C++
Как сложить массив чтоб получился одномерный массив? C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
neske
1419 / 786 / 55
Регистрация: 26.03.2010
Сообщений: 2,694
17.05.2010, 15:04     Одномерный массив #2
Ну и в чем у вас проблема?

Сначала находим первый элемент, больший заданного Т, и записываем его, к примеру, в переменную first.
Далее находим просто максимальный элемент из всех положительных на промежутке от first до последнего элемента, и записываем его в переменную max.
Затем такой цикл:
C++
1
2
3
4
for (int i=size-1; i>=first; i--)
    if (MAS[i]==max) {
        rezult=i;
        break; }
Вот и вся задача.

Добавлено через 4 минуты
В переменной rezult и будет хранится индекс искомой ячейки.
zViXz
3 / 3 / 0
Регистрация: 15.05.2010
Сообщений: 25
17.05.2010, 16:44     Одномерный массив #3
А не слишком ли заумно? Куда проще искать сразу последний максимум через >= и не морочиться с несколькими циклами

C
1
2
3
4
5
result=-1; // дабы вернуть -1 в случае если не найдет (т.е. не будет чисел больших Т
for (i=0; i<size; i++)
{
if (a[i]>=T) {T=a[i]; result=i;}
}
Аналогично size - размер массива, T - то с чем сравниваем (задаётся где-то выше), result - ответ.

Вроде работает
neske
1419 / 786 / 55
Регистрация: 26.03.2010
Сообщений: 2,694
17.05.2010, 16:46     Одномерный массив #4
Да, так пожалуй будет проще
Прекрасная
2 / 2 / 0
Регистрация: 12.02.2010
Сообщений: 96
18.05.2010, 20:38  [ТС]     Одномерный массив #5
Спасибо, а можно полностью программу написать? Мне так понятнее будет))
neske
1419 / 786 / 55
Регистрация: 26.03.2010
Сообщений: 2,694
18.05.2010, 20:44     Одномерный массив #6
Ну дак, покажите что у вас получилось
Genius Ignat
1233 / 771 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
18.05.2010, 20:53     Одномерный массив #7
C
1
2
3
4
5
6
7
8
9
10
11
#include <stdio.h>
 
main ()
{
int a[10] = {1, 15, 7, 5, 6, 12, 16, 31, 31, 25}, T=15, result=-1, i, size=10;
for (i=0; i<size; i++)
{
if (a[i]>=T) {T=a[i]; result=i;}
}
printf ("%d", result);
}
А это не полно что ли, куда полнее еще.

Добавлено через 28 секунд
Ссылка дана была выше, смотреть надо.
Прекрасная
2 / 2 / 0
Регистрация: 12.02.2010
Сообщений: 96
20.05.2010, 18:12  [ТС]     Одномерный массив #8
А где окончание программы? Должен же выводится результат))
neske
1419 / 786 / 55
Регистрация: 26.03.2010
Сообщений: 2,694
20.05.2010, 20:12     Одномерный массив #9
Давайте, действуйте
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.05.2010, 20:19     Одномерный массив
Еще ссылки по теме:

Целочисленный массив с размером 4*4 .Написать прогу , формирующую одномерный массив C++
Переписать произвольный одномерный массив в другой массив в обратном порядке C++
C++ Дан двухмерный целочисленный массив . Составить одномерный массив В номеров строк этого массива

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

Или воспользуйтесь поиском по форуму:
Genius Ignat
1233 / 771 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
20.05.2010, 20:19     Одномерный массив #10
Если не секрет что выводиться.
Yandex
Объявления
20.05.2010, 20:19     Одномерный массив
Ответ Создать тему
Опции темы

Текущее время: 08:20. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru