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

Поиск максимального по модулю - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.70
Condemnation
 Аватар для Condemnation
0 / 0 / 0
Регистрация: 04.11.2010
Сообщений: 4
04.11.2010, 14:57     Поиск максимального по модулю #1
Помогите, пожалуйста.. никак разобраться не могу...

Даны натуральное число n, действительные числа a1...an. Получить max(|a1|,...,|an|).
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
vet
 Аватар для vet
175 / 175 / 13
Регистрация: 08.04.2009
Сообщений: 1,309
04.11.2010, 15:12     Поиск максимального по модулю #2
нужно найти max по модулю элемент в массиве?
Condemnation
 Аватар для Condemnation
0 / 0 / 0
Регистрация: 04.11.2010
Сообщений: 4
04.11.2010, 15:16  [ТС]     Поиск максимального по модулю #3
vet, да.
vet
 Аватар для vet
175 / 175 / 13
Регистрация: 08.04.2009
Сообщений: 1,309
04.11.2010, 15:27     Поиск максимального по модулю #4
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
26
27
28
#include <iostream>
#include <cmath>
 
using namespace std;
 
int main()
{
    srand((unsigned)time(NULL));//При каждой компиляции генерятся разные пос-ти
    int mas[10],max = 0;
    for(int i=0;i<10;i++)
    {
            double gen=(double)rand()/RAND_MAX;//äëÿ òîãî ÷òîáû áûëè ГЁ îòðèöГ*òåëüГ*ûå ýëåìåГ*ГІГ»,
            //åñëè tmp < 0.5 ГіГ¬Г*îæГ*ГҐГ¬ mas[i]*(-1) ГЁГ*Г*Г·ГҐ mas[i] ïîëîæèòåëüГ*ûé
            if(gen<0.5)mas[i]=(-1)*(rand()%100);
            else mas[i]=rand()%100;//Г§Г*ïîëГ*ГїГҐГ¬ ñëó÷Г*Г©Г*ûìè Г·ГЁГ±Г«Г*ìè Гў äèГ*ГЇГ*çîГ*ГҐ îò 0 äî 100
            cout << mas[i] << " ";
    }
    cout << "\n";
    
    max = mas[0];
    for(int i=1;i<10;i++)
    {
    if(abs(max)<(abs(mas[i])))max = (mas[i]);//abs Гґ-öèÿ âîçâðГ*Г№Г*ГѕГ№Г*Гї ìîäóëü Г·ГЁГ±Г«Г*
    }
    cout << max;
    
    cin.get();
}
Condemnation
 Аватар для Condemnation
0 / 0 / 0
Регистрация: 04.11.2010
Сообщений: 4
04.11.2010, 15:54  [ТС]     Поиск максимального по модулю #5
vet, спасибо большое) а можно еще программу для C?
vet
 Аватар для vet
175 / 175 / 13
Регистрация: 08.04.2009
Сообщений: 1,309
05.11.2010, 01:39     Поиск максимального по модулю #6
Пожалуйста, вот:
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
26
27
28
29
30
#include <conio.h>
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
#include <time.h>
using namespace std;
 
int main()
{
    srand((unsigned)time(NULL));//Ïðè ГЄГ*æäîé êîìïèëÿöèè ГЈГҐГ*åðÿòñÿ Г°Г*Г§Г*ûå ïîñ-ГІГЁ
    int mas[10],max = 0;
    for(int i=0;i<10;i++)
    {
            double gen=(double)rand()/RAND_MAX;//äëÿ òîãî ÷òîáû áûëè ГЁ îòðèöГ*òåëüГ*ûå ýëåìåГ*ГІГ»,
            //åñëè tmp < 0.5 ГіГ¬Г*îæГ*ГҐГ¬ mas[i]*(-1) ГЁГ*Г*Г·ГҐ mas[i] ïîëîæèòåëüГ*ûé
            if(gen<0.5)mas[i]=(-1)*(rand()%100);
            else mas[i]=rand()%100;//Г§Г*ïîëГ*ГїГҐГ¬ ñëó÷Г*Г©Г*ûìè Г·ГЁГ±Г«Г*ìè Гў äèГ*ГЇГ*çîГ*ГҐ îò 0 äî 100
            printf("%d ", mas[i]);
    }
    printf("\n");
    
    max = mas[0];
    for(int i=1;i<10;i++)
    {
    if(abs(max)<(abs(mas[i])))max = (mas[i]);//abs Гґ-öèÿ âîçâðГ*Г№Г*ГѕГ№Г*Гї ìîäóëü Г·ГЁГ±Г«Г*
    }
    printf("%d",max);
    
    getch();
}

Не по теме:

кнопочка "Спасибо", внизу

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.11.2010, 02:09     Поиск максимального по модулю
Еще ссылки по теме:

C++ Найти номер максимального по модулю элемента массива
Поиск максимального элемента по модулю C++
Поиск минимального и максимального в массиве по модулю. Где ошибка? C++

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

Или воспользуйтесь поиском по форуму:
KpeHDeJIb
 Аватар для KpeHDeJIb
56 / 56 / 3
Регистрация: 31.10.2010
Сообщений: 103
05.11.2010, 02:09     Поиск максимального по модулю #7
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
26
27
28
29
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
 
#define n 10
 
int main()
{
    int i, max_abs, array[n];
 
    srand(time(NULL));
 
    // заполняем массив случайными значениями от -50 до 50
    for (i = 0; i < n; ++i)
    {
        array[i] = rand() % 101 - 50;
        printf("array[%d] = %d\n", i, array[i]);
    }
 
    // ищем в массиве максимальный по модулю элемент
    max_abs = abs(array[0]);
    for (i = 1; i < n; ++i)
        if (max_abs < abs(array[i]))
            max_abs = abs(array[i]);
 
    printf("max_abs = %d\n", max_abs);
 
    return 0;
}
Yandex
Объявления
05.11.2010, 02:09     Поиск максимального по модулю
Ответ Создать тему
Опции темы

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