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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.92
Grif1992
0 / 0 / 0
Регистрация: 06.10.2011
Сообщений: 50
#1

Вычислить максимальное по модулю число из последовательности действительных чисел, без использования массива - C++

12.10.2011, 17:05. Просмотров 1450. Ответов 14
Метки нет (Все метки)

Даны натуральные n, действительные числа a1..an. Получить max(|a1|,..,|an|)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.10.2011, 17:05     Вычислить максимальное по модулю число из последовательности действительных чисел, без использования массива
Посмотрите здесь:
Найти максимальный по модулю член последовательности без использования массивов C++
Вычислить минимальное и максимальное число в последовательности целых чисел, вводимых с клавиатуры C++
C++ Обработка последовательности без использования массива (использовать (do while)
Вычисление числа из последовательности Фибоначчи без использования массива C++
C++ Найти в введенной последовательности чисел максимальное число.
В последовательности натуральных чисел определить максимальное число, оканчивающееся на 5 C++
Дано 8 действительных чисел. Вычислить сумму квадратов разностей корней из модулей действительных чисел C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
alkagolik
Заблокирован
12.10.2011, 17:07     Вычислить максимальное по модулю число из последовательности действительных чисел, без использования массива #2
Grif1992,
границы отрезка n в студию
Grif1992
0 / 0 / 0
Регистрация: 06.10.2011
Сообщений: 50
12.10.2011, 17:11  [ТС]     Вычислить максимальное по модулю число из последовательности действительных чисел, без использования массива #3
Просто сказано что любые натуральные n, ну т.е число элементов..
alkagolik
Заблокирован
12.10.2011, 17:20     Вычислить максимальное по модулю число из последовательности действительных чисел, без использования массива #4
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
 
int max_min(int min, int max){
    return (min < max) ? max : min;
}
 
int main(){
    int n = 100, x, max = 0;
    srand(time(0));
 
    while (n--)
    {
        x = rand() % 1000 + 1;
        printf("%d ", x);
        max = max_min(max, x);
    }
    printf("\nмаксимальное число: %d\n", max);
    return 0;
}
-=ЮрА=-
Заблокирован
Автор FAQ
12.10.2011, 17:24     Вычислить максимальное по модулю число из последовательности действительных чисел, без использования массива #5
alkagolik, а если массив будет содержать отрицательные элементы, не смутило это
Цитата Сообщение от alkagolik Посмотреть сообщение
max = 0;
???
alkagolik
Заблокирован
12.10.2011, 17:27     Вычислить максимальное по модулю число из последовательности действительных чисел, без использования массива #6
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
а если массив будет содержать отрицательные элементы, не смутило это
не будет
C
1
x = rand() % 1000 + 1;
Добавлено через 1 минуту
кстати я не учел это
действительные числа a1..an.
-=ЮрА=-
Заблокирован
Автор FAQ
12.10.2011, 17:31     Вычислить максимальное по модулю число из последовательности действительных чисел, без использования массива #7
alkagolik, да я не говорю о rand() % 1000, ввод может быть и с клавиатуры, и тогда алгоритм даст неверный результат если элементы будут отрицательными...
Thinker
Эксперт C++
4221 / 2195 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
12.10.2011, 17:36     Вычислить максимальное по модулю число из последовательности действительных чисел, без использования массива #8
Как вариант при n>0:

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include<stdio.h>
#include<conio.h>
#include<math.h>
int main()
{
    double x, max;
    scanf("%lf", &x);
    max = fabs(x);
    while (scanf("%lf", &x) == 1)
       if (fabs(x) > max)
          max = fabs(x);
    printf("%f\n", max);
    getch();
    return 0;
}
-=ЮрА=-
Заблокирован
Автор FAQ
12.10.2011, 17:37     Вычислить максимальное по модулю число из последовательности действительных чисел, без использования массива #9
Grif1992, вам полуфабрикат предложили. Ниже код хоть и не очень элегантный зато отрабатывать будет для любых значений!
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
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
 
int max_min(int min, int max){
    return (min < max) ? max : min;
}
 
int main(){
    printf("enter num elements : ");
    int i = 1, n;scanf("%d",&n);
    int x, max;
    printf("Enter %d element : ",i);
    scanf("%d",&x);
    max = x;//ТАК ПРАВЕЛЬНО БУДЕТ!
    
 
    while ((i++) < n)
    {
        printf("Enter %d element : ",i);
        scanf("%d",&x);
        max = max_min(max, x);
    }
    printf("max num: %d\n", max);
    return 0;
}
Как видите разница была всего в одну строку
max = x;//ТАК ПРАВЕЛЬНО БУДЕТ!
НО ЭТО ОЧЕНЬ СУЩЕСТВЕННО!
Миниатюры
Вычислить максимальное по модулю число из последовательности действительных чисел, без использования массива  
alkagolik
Заблокирован
12.10.2011, 17:37     Вычислить максимальное по модулю число из последовательности действительных чисел, без использования массива #10
я не давал ТС решения задачи. я показал принцип ее решения. пляшем из того что числа float, это уже совсем иная картина
Nameless One
Эксперт С++
5769 / 3418 / 255
Регистрация: 08.02.2010
Сообщений: 7,444
12.10.2011, 17:38     Вычислить максимальное по модулю число из последовательности действительных чисел, без использования массива #11
Thinker, только там сравниваются абсолютные значения
Thinker
Эксперт C++
4221 / 2195 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
12.10.2011, 17:39     Вычислить максимальное по модулю число из последовательности действительных чисел, без использования массива #12
Цитата Сообщение от Nameless One Посмотреть сообщение
Thinker, только там сравниваются абсолютные значения

Не по теме:

Да, я сразу же исправил

Nameless One
Эксперт С++
5769 / 3418 / 255
Регистрация: 08.02.2010
Сообщений: 7,444
12.10.2011, 17:41     Вычислить максимальное по модулю число из последовательности действительных чисел, без использования массива #13
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
вам полуфабрикат предложили
у тебя тоже не готовый продукт:
Цитата Сообщение от Grif1992 Посмотреть сообщение
действительные числа a1..an. Получить max(|a1|,..,|an|)
действительные числа, а не целые. Сравниваются модули чисел, а не сами числа
-=ЮрА=-
Заблокирован
Автор FAQ
12.10.2011, 17:44     Вычислить максимальное по модулю число из последовательности действительных чисел, без использования массива #14
Цитата Сообщение от Nameless One Посмотреть сообщение
действительные числа, а не целые. Сравниваются модули чисел, а не сами числа
с учётом этого
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 <math.h>
 
int main(){
    printf("enter num elements : ");
    int i = 1, n;scanf("%d",&n);
    float x, max;
    printf("Enter %d element : ",i);
    scanf("%f",&x);
    max = fabs(x);
    
 
    while ((i++) < n)
    {
        printf("Enter %d element : ",i);
        scanf("%f",&x);
        if(max <  fabs(x))
            max = fabs(x);
    }
    printf("max absolute val : %f\n", max);
    return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.10.2011, 17:47     Вычислить максимальное по модулю число из последовательности действительных чисел, без использования массива
Еще ссылки по теме:
C++ Вводится последовательность из N целых чисел. Найти максимальное простое число в последовательности
Найти сумму и произведение N чисел без использования массива C++
C++ Найти максимальное число среди чисел последовательности, введенных после последнего отрицательного
C++ Написать программу, которая определяет максимальное число из введенной с клавиатуры последовательности положительных чисел
Написать программу, которая определяет максимальное число из введенной с клавиатуры последовательности положительных чисел... C++

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

Или воспользуйтесь поиском по форуму:
Grif1992
0 / 0 / 0
Регистрация: 06.10.2011
Сообщений: 50
12.10.2011, 17:47  [ТС]     Вычислить максимальное по модулю число из последовательности действительных чисел, без использования массива #15
Спасибо!
Yandex
Объявления
12.10.2011, 17:47     Вычислить максимальное по модулю число из последовательности действительных чисел, без использования массива
Ответ Создать тему
Опции темы

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