Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
Soniks
3 / 3 / 0
Регистрация: 24.10.2011
Сообщений: 44
1

Найти произведение элементов массива с чётными номерами

13.11.2011, 15:55. Просмотров 1130. Ответов 3
Метки нет (Все метки)

Всем привет!
Вот надо написать код:
1.Найти произведение элементов массива с чётными номерами.
2. Найти сумму элементов масива расположенных между первыми и последними нулевыми элементами.
3. Преобразовать масив, чтобы сначала распологались положительные, а потом отрицательные(равные 0 считаются как положительные)
вот начало кода:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include<stdio.h>
 #include<conio.h>
 #include<stdlib.h>
 #include<time.h>
 int main()
 {
 int n, sum;
 scanf("%i",&n);
 
 float *a=new float[n];
 srand(time(NULL));
 for (int i=0; i<n; i++)
 {
 a[i]=rand()/(float)RAND_MAX*200-100;
 printf("\n%f ",a[i]);
 }
 getch();
 return 0;
 }
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.11.2011, 15:55
Ответы с готовыми решениями:

Найти произведение элементов массива с чётными номерами
В одновимірному масиві, що складається з N цілих елементів, обчислити добуток елементів масиву з...

Найти произведение элементов массива с чётными номерами и количество элементов, удовлетворяющих условию
Добрый день,я создал код по условию задачи: 3. В одномерном массиве С, состоящем из N вещественных...

Дан одномерный массив. Если произведение элементов с чётными номерами больше произведения с нечетными номерами, то найти номер максимального элемента
Дан одномерный массив. Если произведение элементов с чётными номерами больше произведения с...

Вычислить произведение элементов массива с чётными номерами
1. Вычислить произведение элементов массива с чётными номерами.

В заданном массиве найти произведение элементов с чётными номерами
Дано целое число n. Найти произведение элементов массива arr с чётными номерами.

3
xAtom
924 / 749 / 299
Регистрация: 09.12.2010
Сообщений: 1,346
Записей в блоге: 1
13.11.2011, 17:34 2
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Soniks, держи 3-е задание.
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
#include <stdio.h>
 
void  _transform(int* arr, int size) {
   int tmp, *iter, *ptr;
   for(iter = arr; iter != arr + size; *iter++) {
       if( *iter < 0 ) {
           for(ptr = iter; ptr != arr + size; *ptr++) {
                 if(*ptr >= 0)
                      break;
           }
           if(ptr != arr + size) {
                  tmp = *ptr;
                 *ptr = *iter;
                 *iter = tmp;
           }
       }
   }
}
 
 
int main(void) {
  int arr[] = { -1, 30, -20,  -7, 40, -200, 100, 700, -59, 7, 0};
  int i, size = sizeof(arr)/sizeof(arr[0]);
  
  _transform(arr, size);
 
  for(i = 0; i < size; i++)
       printf("%d, ", arr[i]);
  putchar('\n');
  getchar();
  return 0;
}
1
amor1k
Студент
148 / 148 / 64
Регистрация: 18.01.2011
Сообщений: 469
13.11.2011, 17:43 3
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

1,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
43
44
45
46
47
48
49
50
51
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
    int n;
    float sum = 0, sum2 = 0;
    scanf("%i",&n);
 
    float *a=new float[n];
    srand(time(NULL));
    for (int i=0; i<n; i++)
    {
        a[i]=rand()/(float)RAND_MAX*200-100;
        printf("\n%f ",a[i]);
    }
    for (int i=1; i<n; i+=2)
        sum += a[i];
    int k1, k2;
    k1 = k2 = 0;
    for (int i=0; i<n; i++)
    {
        if(a[i] == 0)
        {
            k1 = i;
            break;
        }
    }
    for (int i=n-1; i>=0; i++)
    {
        if(a[i] == 0)
        {
            k2 = i;
            break;
        }
    }
    if(k1 == 0 || k2 == 0)
    {
        printf("Summ = %f\n",sum);
        printf("Zero no found");
    }
    else
    {
        for (int i=k1; i<=k2; i++)
            sum2 += a[i];
        printf("Summ = %f, summ between zero = %f", sum, sum2);
    }
    getch();
    return 0;
}
1
Soniks
3 / 3 / 0
Регистрация: 24.10.2011
Сообщений: 44
13.11.2011, 19:58  [ТС] 4
Большое спасибо за Ваши старания, а как для третьего задания с с этим же кодом сделать, как это будет выглядеть?
0
13.11.2011, 19:58
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.11.2011, 19:58

в одномерном массиве, состоящем из n целых элементов,используя родовые ф-ции вычислить произведение элементов массива с чётными номерами.
в одномерном массиве, состоящем из n целых элементов,используя родовые ф-ции вычислить произведение...

Определить произведение абсолютных значений элементов массива с чётными номерами и сумму значений элементов с нечётными
Дан массив c0, c1, c2,…, cn-1. Определить произведение абсолютных значений элементов массива с...

Произведение элементов с чётными номерами
В одномерном массиве, состоящем из н целых элементов, вычислить: 1) произведение элементов с...


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

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

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