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

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

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

Среднее арифметическое массива выводит как int число - C++

09.02.2014, 23:08. Просмотров 280. Ответов 5
Метки нет (Все метки)

среднее арифметическое массива выводит как intовое число!!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.02.2014, 23:08     Среднее арифметическое массива выводит как int число
Посмотрите здесь:

C++ Программа на С, которая вводит число типа int с клавиатуры, преобразует ее в строку (str), выводит на дисплей число и строку.
C++ Сформировать массив X из элементов массива A, значения которых не превышают среднее арифметическое массива A
Написать программу, которая вводит с клавиатуры последовательность из пяти дробных чисел и после ввода каждого числа выводит среднее арифметическое п C++
Пользователь вводит с клавиатуры 5 чисел. Программа выводит на экран их среднее арифметическое C++
C++ Подсчитать среднее арифметическое тех элементов массива, что содержат четное число битов, не равных 1
Программа запрашивает число до тех пор, пока пользователь не нажмет 0, и выводит среднее арифметическое C++
C++ Найти среднее арифметическое элементов массива, сравнить два массива поэлементно
Найти среднее арифметическое элементов массива, и количество чисел внутри массива, не превышающих найденное C++
Заменить элементы массива,стоящие на нечетных позициях, на среднее арифметическое массива C++
Из вещественного массива X удалить все числа, превышающие среднее арифметическое элементов массива C++
Заменить элементы массива со значениями в заданном интервале на среднее арифметическое значение массива C++
Программа, что выводит среднее арифметическое последовательности дробных чисел, которые вводятся с клавиатуры C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Staffi
0 / 0 / 0
Регистрация: 05.02.2014
Сообщений: 26
09.02.2014, 23:09  [ТС]     Среднее арифметическое массива выводит как int число #2
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
#include <iostream>
#include <time.h>
using namespace std;
void fm(int a[], int count){
    int sum = 0;
    for (int i = 0; i<count; i++)
        a[i] = rand() % 10;
 
}
void print(int a[], int count){
 
    for (int i = 0; i<count; i++)
        cout << a[i] << "\t";
    cout << endl;
}
 
float sred(int a[], int count){
    int total = 0;
    float sa = 0;
    for (int i = 0; i < count; i++){
 
        if (i >= 0){
            total += a[i];
            sa =float( total / count);
        }
        
    }
    cout << total<<"summa"<<endl;
    return sa;
 
}
void main(){
    srand(time(NULL));
    const int n = 10;
    int mas[n]; 
    float z = 0;
 
    fm(mas, n);
    print(mas, n);
    z = sred(mas, n);
    cout << z;
}
cooller
564 / 532 / 120
Регистрация: 25.12.2013
Сообщений: 1,456
09.02.2014, 23:12     Среднее арифметическое массива выводит как int число #3
Staffi,
C++
1
2
3
4
5
6
7
8
9
float sred(int a[], int count){
    int total = 0;
    float sa = 0;
    for (int i = 0; i < count; i++)
            total += a[i];
    sa = (float)( (float)total / count);
    cout << total<<"summa"<<endl;
    return sa;
}
Staffi
0 / 0 / 0
Регистрация: 05.02.2014
Сообщений: 26
10.02.2014, 01:51  [ТС]     Среднее арифметическое массива выводит как int число #4
KOPOJI, спасибо разобрался
считал что это intовое выводит ток сумму . пасиб

Добавлено через 1 минуту
cooller_94, пасиб разобрался..

Добавлено через 8 минут
Цитата Сообщение от cooller_94 Посмотреть сообщение
sa = (float)( (float)total / count);
можете мне недалекому обьяснить эту запись правильно? если не затруднит
cooller
564 / 532 / 120
Регистрация: 25.12.2013
Сообщений: 1,456
10.02.2014, 02:06     Среднее арифметическое массива выводит как int число #5
Цитата Сообщение от Staffi Посмотреть сообщение
Сообщение от cooller_94
sa = (float)( (float)total / count);
можете мне недалекому обьяснить эту запись правильно? если не затруднит
(float) - явное преобразование типов.
у тебя переменные total и count объявлены как int. То есть получается что ты делишь int на int, и соотвецтвенно результат также будет типа int.
Можно также записать так
C++
1
sa = ((float)total / count);
gunslinger
случайный прохожий
1116 / 734 / 187
Регистрация: 20.07.2013
Сообщений: 2,014
10.02.2014, 03:12     Среднее арифметическое массива выводит как int число #6
Или
C++
1
sa = 1. * total / count;  // либо 1.0 вместо 1.
Yandex
Объявления
10.02.2014, 03:12     Среднее арифметическое массива выводит как int число
Ответ Создать тему
Опции темы

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