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

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

Войти
Регистрация
Восстановить пароль
 
Юлек
4 / 3 / 0
Регистрация: 26.10.2009
Сообщений: 43
#1

Массив - C++

28.10.2009, 15:47. Просмотров 484. Ответов 3
Метки нет (Все метки)

Помогите решить задачу на С++
Дана вещественная таблица а [1...50 ]. Найти среднее арифметическое положительных элементов таблицы и минимум абсолютного значения элементов. Найти их произведение.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.10.2009, 15:47
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Массив (C++):

Ввести массив А. В массив В перенести все элементы массива А, стоящие правее максимального элемента, и имеющие нечетный индекс. Массив В отсортировать - C++
Добрый Вечер! Написал первую часть программы по этому заданию"Ввести массив А. В массив В перенести все элементы массива А, стоящие правее...

Массив: Как скопировать двумерный массив в другой массив? - C++
Как скопировать двумерный массив в другой массив?

Дан массив целых чисел,произвести для него следующие операции: для каждого из чисел ,входящего в массив,указать,сколько раз оно входит в массив... - C++
помогите!!!((( дан массив целых чисел,произвести для него следующие операции: для каждого из чисел ,входящего в массив,указать,сколько...

Файл: Загрузка данных из файла: первый столбец записывался в 1й массив, второй столбец - во 2й массив, а 3й столбец - в 3й массив. - C++
Есть текстовый файл, в нем 3 столбца чисел (число строк заранее неизвестно). Напишите пожалуйста код, чтобы первый столбец записывался в...

Заполнить массив первыми ста простыми числами, и вывести массив на экран - C++
Объявите одномерный целочисленный массив в котором не более 100 элементов выполните генерацию массива первыми 100 простыми числами....

Переписать положительные элементы массива K,кратные пяти в массив M,а остальные-в массив Q. - C++
Дан массив K(N).Переписать положительные элементы массива K,кратные пяти в массив M,а остальные-в массив Q.

3
kravam
быдлокодер
1703 / 890 / 45
Регистрация: 04.06.2008
Сообщений: 5,489
28.10.2009, 16:30 #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
#include <stdio.h>
#include <math.h>
#define kol_vo_el 4 
 
//Положительным считается всякий элемент, который больше 0
//Если положительных элементов нет, эта функция вернёт -1
float sr_arifm_vozvr (float* a1) {
 float summa= 0;
 int chotchik= 0;
 for (int i= 0; i< kol_vo_el; i++) {
  if (a1 [i]> 0) {
   summa= summa+ a1 [i];
   chotchik++;
  }
 }
 if (chotchik) {
  return summa/chotchik;
 }
 return -1;
}
 
//Эта функция подсчитыывает минимум и возвращает его
float min (float* a1) {
 float minimum= a1 [0];
 for (int i= 0; i< kol_vo_el; i++) {
  if ((fabs)(a1 [i])< minimum) {
   minimum= (fabs)(a1 [i]);
  }
 }
 return minimum;
}
 
 
 
 
int main () {
 float a [kol_vo_el]= {4, 6, -3, 6};
 printf ("sr_arifm= %f\n", sr_arifm_vozvr (a));
 printf ("minimum= %f", min (a));
 getchar ();
}
2
alibaba314
19 / 19 / 1
Регистрация: 22.03.2009
Сообщений: 58
28.10.2009, 18:09 #3
//Эта функция подсчитыывает минимум и возвращает его

float minimum= a1 [0];
здесь надо писать так
C++
1
 float minimum= fabs(a1 [0]);
Добавлено через 28 минут
из кода у Kravam, я немножко изменил, и так получилось:

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
#include <stdio.h>
#include <math.h>
#define amount 4 
 
int i;
//ÏîëîæèòåëüГ*ûì Г±Г·ГЁГІГ*ГҐГІГ±Гї ГўГ±ГїГЄГЁГ© ýëåìåГ*ГІ, êîòîðûé áîëüøå 0
float mean (float* a){
    float sum= 0;
    int count= 0;
    for (i= 0; i< amount; i++) 
        if (a[i]> 0) {
            sum += a[i];
            count++;
        }
    if (count) 
        return sum/count;
    return 0;
}
 
//ГќГІГ* ГґГіГ*êöèÿ ïîäñ÷èòûûâГ*ГҐГІ ìèГ*èìóì ГЁ âîçâðГ*Г№Г*ГҐГІ ГҐГЈГ®
float min (float* a) {
    float minimum= fabs(a[0]);
    for (i= 0; i< amount; i++)
        minimum= minimum<fabs(a[i])?minimum:fabs(a[i]);
    return minimum;
}
int main () {
    float a [amount];
    printf("put in elements of array:\n");
    for(i= 0; i< amount; i++){
        printf("a[%d]=", i);
        scanf("%f", &a[i]);
    }
    if(!mean(a)) printf("in array has'n positive number!!!");
    else
        printf ("mean value= %f\n", mean(a));
    printf ("\nabsolute minimum= %f", min (a));
    getchar ();
}
спасибо kravam!
1
M128K145
Эксперт С++
8299 / 3519 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
28.10.2009, 18:59 #4
Тема закрыта.
Найти среднее арифметическое
0
28.10.2009, 18:59
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.10.2009, 18:59
Привет! Вот еще темы с ответами:

Дан массив. Записать во второй массив все элементы, не совпадающие с минимальным - C++
Дан массив M(14).Записать в массив B все элементы , не совпадающие с минимальным. Cоставить блок схему программы

Массив: сформировать массив C[12] так, чтобы элементы располагались следующим образом: A(1) B(1) A(2) B(2) - C++
из массивов A и B сформировать массив C так, чтобы элементы массива располагались следующим образом: A(1) B(1) A(2) B(2) и т.д.

Массив: Все элементы массива, кратные трем, записать в одномерный массив. - C++
Дан двумерный массив размером n x n? заполненный целыми числами. Все его элементы кратные трем, записать в одномерный массив.

Можно ли в классе создавать массив переменной длинны. Например динамический массив? - C++
Динамические массивы привлекают больше. :)


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

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

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