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

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

Восстановить пароль Регистрация
 
Soniks
3 / 3 / 0
Регистрация: 24.10.2011
Сообщений: 44
13.11.2011, 15:55     Найти произведение элементов массива с чётными номерами #1
Всем привет!
Вот надо написать код:
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;
 }
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.11.2011, 15:55     Найти произведение элементов массива с чётными номерами
Посмотрите здесь:

C++ Найти произведение элементов массива с четными номерами
в одномерном массиве, состоящем из n целых элементов,используя родовые ф-ции вычислить произведение элементов массива с чётными номерами. C++
Найти произведение элементов массива с нечетными номерами C++
C++ Найти произведение элементов массива с четными номерами
Произведение элементов с чётными номерами C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
xAtom
 Аватар для xAtom
910 / 735 / 60
Регистрация: 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;
}
amor1k
Студент
 Аватар для amor1k
147 / 147 / 24
Регистрация: 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;
}
Soniks
3 / 3 / 0
Регистрация: 24.10.2011
Сообщений: 44
13.11.2011, 19:58  [ТС]     Найти произведение элементов массива с чётными номерами #4
Большое спасибо за Ваши старания, а как для третьего задания с с этим же кодом сделать, как это будет выглядеть?
Yandex
Объявления
13.11.2011, 19:58     Найти произведение элементов массива с чётными номерами
Ответ Создать тему
Опции темы

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