Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
Daniel_28
0 / 0 / 0
Регистрация: 09.10.2012
Сообщений: 13
1

Поиск среднего арифметического в одномерном массиве

06.12.2012, 03:12. Просмотров 972. Ответов 6
Метки нет (Все метки)

Сама задача: Написать программу нахождения среднеарифметического элементов вектора, расположенных между минимальным и максимальным элементами (включая и сами эти элементы). Массив заполняется пользователем с клавиатуры. Вывести на экран результат.

Возникла проблема с кодом. Переменным max и min не присваиваются нужные значения!
Я ввожу массив: 2 3 4 5 6 1 7 8 9 10.
min должно быть 1
max должно быть 10

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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <iostream>
int main()
{
    setlocale (LC_ALL, "Russian");
    int A[10];
    int i,max,min,imax,imin,sum=0,d;
    for (i=0;i<10;i++)
    {
        printf("A[%d]=",i);
        scanf("%f",&A[i]);
    }
    min=A[0];
    max=A[0];
    imin=0;
    imax=0;
    for (i=0;i<10;++i)  
    {
        if(A[i]>max)
        {
            max=0;
            max=A[i];
            imax=i;
        }
        if(A[i]<min)
        {
            max=0;
            min=A[i];
            imin=i;
        }
    }
    printf ("max=%d\nmin=%d\nimax=%d\nimin=%d\n",max,min,imax,imin);
        if (imax>imin)
        {
            for(i=imin;i<=imax;i++)
                sum=sum+A[i];
            d=sum/imax-imin+1;
        }
        if (imin>imax)
        {
            for(i=imax;i<=imin;i++)
                sum=sum+A[i];
            d=sum/imin-imax+1;
        }
        if (imin==imax)
            d=A[i];
        printf ("\nСреднеарифметическое: %d",d);
}
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.12.2012, 03:12
Ответы с готовыми решениями:

Поиск ближайшего среднего арифметического
Как решить задачу на винде. Поиск ближайшего среднего арифметического. Даны натуральное число n и...

Поиск среднего арифметического целочисленной матрицы
Составить программу поиска среднего арифметического числа элементов линейной целочисленной матрицы,...

Вычисление среднего арифметического нечетных чисел в одномерном массиве
Всем доброго дня! просьба помочь студенту разобраться с азами програмирования. задача в...

В одномерном массиве определить количество элементов, меньших среднего арифметического
помогите пжл, подсчитать сколько элементов массива A(n), меньше среднего арифметического всего...

6
xkampotx
0 / 0 / 0
Регистрация: 16.04.2012
Сообщений: 9
06.12.2012, 03:16 2
if(A[i]<min)
{
max=0;
min=A[i];
imin=i;
}
зачем тут обнулять макс. значение ?
0
Fler
211 / 213 / 44
Регистрация: 20.12.2011
Сообщений: 635
06.12.2012, 03:18 3
C
1
scanf("%f",&A[i]);
заменить на
C
1
scanf("%d",&A[i]);
Добавлено через 42 секунды
Цитата Сообщение от xkampotx Посмотреть сообщение
зачем тут обнулять макс. значение ?
кроме того, цикл с 0 начинать тоже не нужно
0
Daniel_28
0 / 0 / 0
Регистрация: 09.10.2012
Сообщений: 13
06.12.2012, 03:18  [ТС] 4
Цитата Сообщение от xkampotx Посмотреть сообщение
зачем тут обнулять макс. значение ?
я сначала подумал, что обнуление поможет.
сейчас уже совсем не в состоянии разбирать этот код...
0
xkampotx
0 / 0 / 0
Регистрация: 16.04.2012
Сообщений: 9
06.12.2012, 03:20 5
ну смотри)
нет смысла обнулять его каждый раз, так как, если последующий элемент будет больше/меньше, то его значение просто перезапишется вместо предыдущего

Поиск макс/мин числа начинается со 2 элемента, тоисть for (i=1; i<10; i++) и тп
и прислушайся к совету Флера
0
Fler
211 / 213 / 44
Регистрация: 20.12.2011
Сообщений: 635
06.12.2012, 03:21 6
Цитата Сообщение от Daniel_28 Посмотреть сообщение
я сначала подумал, что обнуление поможет.
сейчас уже совсем не в состоянии разбирать этот код...
Замените 1 символ в строке, которую я показал и всё должно будет заработать
0
Daniel_28
0 / 0 / 0
Регистрация: 09.10.2012
Сообщений: 13
06.12.2012, 03:28  [ТС] 7
Спасибо всем))
Всё работает.
0
06.12.2012, 03:28
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.12.2012, 03:28

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

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

Массив: Написать программу расчета среднего арифметического отрицательных элементов в одномерном массиве.
Нужна программа в Turbo Pascal и блок-схема! Помогите! Написать программу расчета среднего...

Написать программу расчета среднего арифметического отрицательных элементов в одномерном массиве. Перевод с Pascal
Написать программу расчета среднего арифметического отрицательных элементов в одномерном массиве....

В одномерном массиве, состоящем из n вещественных элементов, заменить каждый элемент > 0 значением среднего арифметического элементов массива
В одномерном массиве, состоящем из n вещественных элементов, заменить каждый элемент &gt;0 , значением...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

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