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

Вычислить номер максимального по модулю элемента массива - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 14, средняя оценка - 4.71
Julia9311
3 / 3 / 0
Регистрация: 05.11.2011
Сообщений: 190
04.12.2011, 19:41     Вычислить номер максимального по модулю элемента массива #1
В одномерном массиве, состоящем из n вещественных элементов, вычислить номер максимального по модулю элемента маccива
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <math.h>
using namespace std;
int main()
{
int i,n, imax;
cout << "\n Vvod nachalnih dannih ";
cout << "\n Vvedite kol-vo elementov massiva: "; cin >> n;
float *a = new float [n], *b = new float [n];
cout << " Vvedite elementi massiva: ";
 
for (i=0; i<n; i++) cin >> a[i];
for (i=imax=0; i<n; i++)
if((abs(a[i]))>(abs(a[imax]))) imax=i;
cout << "\n ------ Poisk maksimalnogo po modulu elementa massiva i ego nomera ------";
cout << "\n Maksimalnij po modulu element - " << a[imax];
cout << "\n Ego nomer v massive - " << imax+1 << endl;
return 0;
}
так?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.12.2011, 19:41     Вычислить номер максимального по модулю элемента массива
Посмотрите здесь:

Вычислить номер минимального по модулю элемента массива C++
Вычислить номер максимального по модулю элемента массива C++
Вычислить номер максимального по модулю элемента массива C++
Вычислить номер максимального по модулю элемента массива C++
Шаблоны функций. В одномерном массиве, состоящем из n вещественных элементов, вычислить номер максимального по модулю элемента массива C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
go
Эксперт C++
3582 / 1362 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
04.12.2011, 19:45     Вычислить номер максимального по модулю элемента массива #2
Цитата Сообщение от Julia9311 Посмотреть сообщение
так?
проверте кол-во скобок
Julia9311
3 / 3 / 0
Регистрация: 05.11.2011
Сообщений: 190
04.12.2011, 19:55  [ТС]     Вычислить номер максимального по модулю элемента массива #3
скобка должна быть после cout << " Vvedite elementi massiva: ";?
go
Эксперт C++
3582 / 1362 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
04.12.2011, 19:57     Вычислить номер максимального по модулю элемента массива #4
неа, здесь
Цитата Сообщение от Julia9311 Посмотреть сообщение
if((abs(a[i]))>(abs(a[imax]))) imax=i;
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9371 / 5421 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
04.12.2011, 20:06     Вычислить номер максимального по модулю элемента массива #5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <iostream>
#include <algorithm>
#include <iterator>
#include <cmath>
 
bool modcmp(const double & a, const double & b) { return fabs(a) < fabs(b); }
 
int main(){
    double * arr;
    size_t cnt;
    
    std::cout << "Number of elements: ";
    std::cin >> cnt;
    arr = new double [ cnt ];
    
    for ( size_t i = 0; i < cnt; ++i ){
        std::cout << "ARRAY[" << i << "] = ";
        std::cin >> arr[i];
    }
    
    std::cout << "Index of max element by absolute value: " << std::distance(arr, std::max_element(arr, arr + cnt, modcmp)) << std::endl;
    
    delete [] arr;
    return 0;
}
Julia9311
3 / 3 / 0
Регистрация: 05.11.2011
Сообщений: 190
04.12.2011, 20:10  [ТС]     Вычислить номер максимального по модулю элемента массива #6
а я подумала про фигурные скобки XD
((abs(a[i]))>(abs(a[imax]))) да нет, по-моему здесь все нормально, программа идет без ошибок=/
go
Эксперт C++
3582 / 1362 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
04.12.2011, 20:16     Вычислить номер максимального по модулю элемента массива #7
Julia9311, да, я ошибся, извините.

Добавлено через 57 секунд

Не по теме:

да и уже не важно, помогли ведь Вам уже.

Julia9311
3 / 3 / 0
Регистрация: 05.11.2011
Сообщений: 190
04.12.2011, 20:21  [ТС]     Вычислить номер максимального по модулю элемента массива #8
easybudda, спасибо большое!
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.12.2011, 20:53     Вычислить номер максимального по модулю элемента массива
Еще ссылки по теме:

Массив: номер минимального и максимального по модулю элемента массива C++
C++ Найти номер максимального по модулю элемента массива
C++ Вычислить номер максимального элемента массива

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

Или воспользуйтесь поиском по форуму:
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9371 / 5421 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
04.12.2011, 20:53     Вычислить номер максимального по модулю элемента массива #9
Цитата Сообщение от Julia9311 Посмотреть сообщение
((abs(a[i]))>(abs(a[imax]))) да нет, по-моему здесь все нормально
Функция abs() работает с целыми числами, для вещественных есть fabs(). Ну а тип double вообще лучше использовать, чем float. По-моему единственная веская причина использовать тип float - жёсткое ограничение доступной памяти, в остальных случаях точность дороже...
Yandex
Объявления
04.12.2011, 20:53     Вычислить номер максимального по модулю элемента массива
Ответ Создать тему
Опции темы

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