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

Не правильно работает! - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Преобразование массива одного типа в другой http://www.cyberforum.ru/cpp-beginners/thread1015380.html
Есть массив int-овых чисел. Нужно его перевести в массив double. Поэлементно с помощью цикла очень долго, не подходит. Может быть есть какая-нибудь функция или библиотека, чтобы быстро преобразовать тип?
C++ Где тут ошибка то? #include <iostream> using namespace std; int main() { int b=1, c=0; while (1) { if (b==13); break; else http://www.cyberforum.ru/cpp-beginners/thread1015362.html
C++ Двумерные массивы (количество элементов массива, значение которых больше среднего арифметического значения элементов этого массива)
Дан двумерный квадратный массив из 16 элементов.Написать программу, которая находит и выводит количество элементов массива, значение которых больше среднего арифметического значения элементов этого массива. ( Программу написать в Pascal,двумрным массивом)
Найти чему равно C++
вот такое деление. Не могу написать программку, получается не правильное число. Число должно равняться числу 0,761597. Помогите разобраться.
C++ потоки вывода http://www.cyberforum.ru/cpp-beginners/thread1015348.html
доброго времени суток, Уважаемые форумчане! есть проблема, суть проблемы заключается в следующем: ни как не могу передать поток в конструктор класса(конструктор должен принимать ostream, что бы можно было передавать в него разные типы потоков.), помогите разобраться что я не правильно делаю? в хедере класса объявил поток std::ostream & strm и так же прописал непосредственно конструктор...
C++ EXE - DLL - EXE Решение "Name" --------------------- A_TEST - это exe --------------------- Global_Engine.h #include "Kernel_Engine.h" подробнее

Показать сообщение отдельно
sm0og1er
0 / 0 / 0
Регистрация: 22.10.2013
Сообщений: 66
22.11.2013, 13:32     Не правильно работает!
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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
#include "stdafx.h"
#include <iostream>
#include <math.h>
#include <stdio.h>
 
using namespace std;
 
    double func1(double,double,double,double,double,double);
    double func2(double &,double &,double &,double &,double &,double &);
    double func3(double *,double  *,double *,double *,double *,double *);
 
    double  SRarif(int *arr, int N);
    double minArray(int *arr, int N);
 
void main ()
{
    setlocale (LC_ALL, "Russian");
    const int N=5;
    int A[N];
    printf("Задание 5.17\n");
    double a,b,c,d,f,g;
    printf ("Введите 6 чисел\n");
    cin >> a >>b >>c >>d >>f >>g;
    printf("Среднее геометрическое %f\n",func1(a,b,c,d,f,g));
    printf("Среднее геометрическое %f\n",func2(a,b,c,d,f,g));
    printf("Среднее геометрическое %f\n",func3(&a,&b,&c,&d,&f,&g));
    
    cout <<"Задание 5.2.7\n";   
    for (int i=0; i < N; i++)
    {
        cout << A[i] << " ";
    }
    printf("\n Миним.отрицательный: ", minArray(A,N));
    printf("\n Среднее ариф.: ", SRarif(A,N));
 
//-----------------------------------------------------------------
 
}
 
double func1(double a,double b,double c,double d,double f,double g)
{
double sred = pow((a*b*c*d*f*g),1.0/6.0);
// ("Сред.геометр %f",func1(a,b,c,d,f,g));
return sred;
}
 
double func2(double &a,double &b,double &c,double &d,double &f,double &g)
{
double sred = pow((a*b*c*d*f*g),1.0/6.0);
//printf ("Сред.геометр %f",func2(a,b,c,d,f,g));
return sred;
}
 
double func3(double *a,double *b,double *c,double *d,double *f,double *g)
{
double sred = pow((*a * *b* *c * *d * *f * *g), 1.0 / 6.0);
//printf ("Сред.геометр %f",func3(*a,*b,*c,*d,*f,*g));
return sred;
}
//---------------------------------------------------------------------
double minArray(int *arr, int N)
{
    double  min = arr[0]; // минимум равен первому элементу массива
    for (int i = 0; i < N; i++) //перебираем элементы массива
        if (arr[i] < min)
            min = arr[i];
        else
            printf("Отрицательных элементов массива - НЕТ!\n");
    return min;
}
 
double  SRarif(int *arr, int N)
{
    double  otvet = 0; // ответ на задание
    double sred = 0; //среднее арифмитическое
    double sum = 0; //сумма элементов массива
    for (int i = 0; i < N; i++)// перебираем элементы массива
    
        if (arr[i] > 0)
        {
            sred++;
            sum += arr[i]; }
    else
        
        printf("Положительных элементов массива - НЕТ!\n");
            
 
 
    otvet = sum/sred;
    return otvet;
}
Помогите пожалуйста, в задание 5.2.7 не правильно работает программа.
Задание:
Дан одномерный массив, состоящий из N вещественных элементов.
7.1. Найти минимальный отрицательный элемент.
7.2. Вычислить среднеарифметическое положительных элементов массива.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 12:38. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru