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

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

Войти
Регистрация
Восстановить пароль
 
krasopetka
0 / 0 / 0
Регистрация: 15.09.2011
Сообщений: 9
#1

Помогите пожалуйста по Одномерному массиву длинных целых чисел!!! - C++

15.09.2011, 19:27. Просмотров 750. Ответов 4
Метки нет (Все метки)

Здравствуйте!!! Помогите пожалуйста решение задачи!!!

Одномерный массив длинных целых чисел
Задание №1
Составить программу определения среднего значения для увеличивающегося количества чисел заданного типа.
Исходные значения, для которых рассчитывается среднее, хранятся в массиве. Затем к исходным значениям добавляются от одного и более новых чисел. Для полученного нового ряда чисел рассчитывается новое среднее значение. Процесс ввода новых чисел и расчета среднего может повторяться неограниченное количество раз.
Следует обратить внимание, что расчет среднего для ряда чисел с учетом вновь введенных значений должен выполняться на основе ранее полученного среднего значения.
Каждое рассчитанное среднее значение должно выводиться на экран. Кроме среднего можно выводить общее количество чисел, по которым рассчитывается среднее. Проверить правильность расчета среднего значения любым способом.

Спасибо тем кто откликнулся!!!
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.09.2011, 19:27
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Помогите пожалуйста по Одномерному массиву длинных целых чисел!!! (C++):

Помогите отладить программу: Разработать класс, содержащий вектор длинных целых чисел - C++
Всем привет. Нужна ваша помощь. Ниже задания что бы вы были в курсе что я делаю. Примерно половину заданий я уже выполнил, однако есть кое...

Задача по одномерному массиву - C++
Доброго времени суток! Прошу помочь с решением вот такой задачи: С клавиатуры ввести одномерный массив, найти минимальный элемент...

Задача по одномерному массиву... - C++
Помогите, пожалуйста, решить задачку по работе с одномерными массивами на С. Только индек- сацию вида A или *(A+i) использовать нельзя....

Создать класс длинных целых чисел - C++
Создать класс длинных целых чисел. Класс имеет конструктор по умолчанию, конструктор - преобразующий long в объект класса. Определить...

Умножение/деление длинных целых чисел из строк - C++
у кого есть код 'умножение и деление целых чисел из строк'? заранее спасибо Добавлено через 32 минуты или библиотека и функции

Длинная арифметика(вычитание длинных целых чисел) - C++
Добрый вечер! Очень нужна помощь. Мне нужно написать программы для сложения больших целых чисел(разрядности около 200), вычитания и что-то...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
MrGluck
Модератор
Эксперт CЭксперт С++
7239 / 4407 / 642
Регистрация: 29.11.2010
Сообщений: 11,929
15.09.2011, 20:40 #2
Цитата Сообщение от krasopetka Посмотреть сообщение
Следует обратить внимание, что расчет среднего для ряда чисел с учетом вновь введенных значений должен выполняться на основе ранее полученного среднего значения.
Не знаю как опираться на прошлое среднее значение.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include<iostream>
 
int main()
{
    float val, count = 0, average, sum = 0;
    while (true)
    {
          std::cout<< "Enter value: ";
          std::cin>> val;
          count++;
          sum += val;
          average = sum/count;
          std::cout<< "Average: "<< average<< std::endl
              << "Count: "<< count<< std::endl<< std::endl;
    }
    return 0;
}
0
Чистый
Автор FAQ
2706 / 1402 / 73
Регистрация: 08.09.2011
Сообщений: 3,732
Записей в блоге: 1
16.09.2011, 10:57 #3
вероятнее всего надо запоминать полученное среднее значение, расчитывать среднее значение для введенного числа и результат складывать со средним значением. например
C++
1
2
3
4
5
(3+2+4+5+9)/5=4,6
затем к ним решили добавить число 7 получаем
4,6+7 = 11,6
проверяем, добавляем к каждому элементу массива 7 и находим среднее
(10+9+11+12+16)/5=11,6
0
-=ЮрА=-
Заблокирован
Автор FAQ
16.09.2011, 11:22 #4
Цитата Сообщение от krasopetka Посмотреть сообщение
оставить программу определения среднего значения для увеличивающегося количества чисел заданного типа.
Исходные значения, для которых рассчитывается среднее, хранятся в массиве. Затем к исходным значениям добавляются от одного и более новых чисел. Для полученного нового ряда чисел рассчитывается новое среднее значение. Процесс ввода новых чисел и расчета среднего может повторяться неограниченное количество раз.
Следует обратить внимание, что расчет среднего для ряда чисел с учетом вновь введенных значений должен выполняться на основе ранее полученного среднего значения.
Каждое рассчитанное среднее значение должно выводиться на экран. Кроме среднего можно выводить общее количество чисел, по которым рассчитывается среднее.
Вот код на Си
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
#include <windows.h>//malloc realloc
#include <stdio.h>
#include <conio.h>
 
int main()
{
    int n,m;
    int * arr = (int *)malloc(sizeof(int));//Первоначальное выделение памяти
    float sredn = 0;
    printf("Enter initial num of elements : ");
    scanf("%d",&n);
    printf("Primary initialization\r\n");
    for(int i = 0; i < n; i++)
    {
        printf("arr[%d] = ",i + 1);
        scanf("%d",&arr[i]);
        sredn += arr[i];
    }
    printf("Average elements value: %f\r\n",(sredn /= n));
    do
    {
        printf("Enter num elements to add in array : ");
        scanf("%d",&m);
        //Увеличивем память на m элементов
        arr= (int *)realloc((void *)arr, (n + m)*sizeof(int));
        printf("Enter new elements\r\n");
        for(i = n; i < n + m; i++)
        {
            printf("\t[Iteration %d]\r\n",i - n + 1);
            printf("arr[%d] = ",i + 1);
            scanf("%d",&arr[i]);
            //Расчёт среднего для каждого добавляемого элемента
            sredn *= i;
            sredn += arr[i];
            sredn /= (i + 1);
            
            printf("Num elements in array : %d\r\n",i + 1);
            printf("Average elements value: %f\r\n",sredn);
        }
 
        printf("Press Y to add elements\r\n");
    }
    while(toupper(getch()) == 'Y');
    return 0;
}
[Результат работы]
Enter initial num of elements : 3
Primary initialization
arr[1] = 1
arr[2] = 2
arr[3] = 4
Average elements value: 2.333333
Enter num elements to add in array : 2
Enter new elements
[Iteration 1]
arr[4] = 5
Num elements in array : 4
Average elements value: 3.000000
[Iteration 2]
arr[5] = 6
Num elements in array : 5
Average elements value: 3.600000
Press Y to add elements
1
krasopetka
0 / 0 / 0
Регистрация: 15.09.2011
Сообщений: 9
20.09.2011, 05:21  [ТС] #5
Спасибо вам огромное!!!
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.09.2011, 05:21
Привет! Вот еще темы с ответами:

Перевод длинных целых чисел из двоичной в десятичную - C++
Вобщем мне нужна верхняя граница для длины вектора , желательно ,чтобы зависимость была от длины числа в двоичном представлений Я...

Вывод длинных целых чисел на консоль - проблема? - C++
Здравствуйте! Имею следующий вопрос. Есть задача - вывести на консоль степени двойки от 1 до 64. Для этого используется следующий код: ...

Умножение длинных целых 11-ричных чисел в виде строк - C++
Доброго времени суток. Если кому приходилось сталкиваться с умножением двух длинных целых чисел (неважно какая система счисления),...

Сопоставьте одномерному массиву a[n] другой одномерный массив f[n], элементы которого вычисляются по формуле - C++
Сопоставьте одномерному массиву a другой одномерный массив f, элементы которого вычисляются по формуле f = ln(a)=arctg(ei=10). Элементы...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
20.09.2011, 05:21
Ответ Создать тему
Опции темы

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